import cv2
import numpy as np
blank = np.zeros((720,720,3), np.uint8)
cv2.rectangle(blank,(168,95),(2,20),(0,0,255),3)
cv2.rectangle(blank,(366,345),(40,522),(0,255,0),3)
cv2.imshow('test', blank)
cv2.waitKey(0)
cv2.destroyAllWindows()
如何获取每个矩形中心的坐标?我正在尝试画一条线来覆盖它们之间的距离。
最佳答案
cv2.rectangle 只绘制矩形本身,它不返回类或存储元数据。由于您已经有了定义矩形的角点,因此获取每个角的中心很简单,只需 ((x1+x2)/2, (y1+y2)/2)。因此,您可以像这样在它们之间划清界线:
rect1center = ((168+2)/2, (95+20)/2)
rect2center = ((366+40)/2, (345+522)/2)
cv2.line(blank, rect1center, rect2center, color, thickness)
关于python - 获取矩形opencv python的中心,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48950949/