查找Canny Edge Image的坐标 – OpenCV和python

我想在列表中保存openCV检测到的所有边缘的坐标,我成功地在屏幕上显示边缘(在订阅的照片上),我不知道如何保存坐标(所有白线).
提前致谢.

查找Canny Edge Image的坐标 –  OpenCV和python

解决方法:

您已找到边缘,现在需要找到这些边缘的位置.

(我没有使用你提供的图像,我宁愿在桌面上使用示例图像:D)

以下行为您提供了这些坐标:

import cv2
import numpy as np

img = cv2.imread('Messi.jpg', 0)
edges = cv2.Canny(img, 100, 255)     #--- image containing edges ---

现在您需要找到值大于0的坐标

indices = np.where(edges != [0])
coordinates = zip(indices[0], indices[1])

>我使用numpy.where()方法检索两个数组的元组索引,其中第一个数组包含白点的x坐标,第二个数组包含白色像素的y坐标.

指数回报:

(array([  1,   1,   2, ..., 637, 638, 638], dtype=int64),
 array([292, 298, 292, ...,  52,  49,  52], dtype=int64))

>然后我使用zip()方法获取包含点的元组列表.

打印坐标为我提供了带边的坐标列表:

[(1, 292), (1, 298), (2, 292), .....(8, 289), (8, 295), (9, 289), (9, 295), (10, 288), (10, 289), (10, 294)]
上一篇:如何在谷歌地图android v2的地图上获取城市名称ontap?


下一篇:CESIUM内置shader变量和函数[转]