【发布时间】:2021-03-01 15:09:48
【问题描述】:
我目前正在运行精巧的边缘检测,并且正在检测两个方形物体。我检测边缘并使用
列出坐标colourMap = cv2.imread('Colour_Map_Generated2.jpg',0)
edges = cv2.Canny(colourMap,10,20)
cv2.imwrite('/home/pi/Desktop/edgesDetected.jpg',edges)
indices = np.where(edges != [0])
coordinates = zip(indices[0], indices[1])
但是这种方法将所有坐标放在一个列表中,我如何将每个正方形的坐标放在一个单独的数组中?
到目前为止,我已经尝试确定 2 个 ROI,但是当我尝试检测整个图像时没有成功,此外,如果我要硬设置 ROI 的数量,它也不会工作,因为该系统可能检测到不同的数量的正方形。我也尝试使用斑点检测,但这似乎需要我填写检测到的方块,当我已经有了坐标时,这似乎是浪费时间。
编辑
【问题讨论】:
-
你能贴出你正在使用的图片吗?我相当肯定 findContours 会做你想做的事,但没有图像我不能确定。
标签: python opencv canny-operator