我根据它们的颜色选择了两个对象,并在我选择的对象周围创建了一个矩形。现在我必须用一条线将它们连接起来,这就是我使用 cv2.line() 的原因。在此之前我创建 boundingRect()。这个矩形很好。之后我将 cv2.line(img, (cx1, cy1), (cx2, cy2), (255, 0, 0), 3,4) 用于创建一个他们之间的线。 但问题是每当相机看到我的物体时它都会给我一个错误“cv2.line(img, (cx1, cy1), (cx2, cy2), (255, 0, 0), 3,4) TypeError:应为整数参数,得到 float [WARN:0] 终止异步回调"
我该如何解决这个问题?
cv2.line(img, (cx1, cy1), (cx2, cy2), (255, 0, 0), 3,4)
TypeError:应为整数参数,得到的是 float [ WARN:0] 终止异步回调
最佳答案
cv2.line(img, (int(cx1), int(cy1)), (int(cx2), int(cy2)), (255, 0, 0), 3,4)
坐标 x 和 y 应该是整数。您可以像上一行那样将它们转换为 int。
关于python - 为什么cv2.line()不能取float值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57649251/