如何使用python获取x,y坐标?

时间:2016-04-02 10:26:46

标签: python opencv image-processing

我使用以下算法(cornerHarris)检测到此图像的角落(图像中的红点)。现在我想得到那些点的坐标。我怎么能这样做?

import cv2
import numpy as np

filename = 'Square.jpg'
img = cv2.imread(filename)
gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)

gray = np.float32(gray)
dst = cv2.cornerHarris(gray,2,3,0.04)

#result is dilated for marking the corners, not important
dst = cv2.dilate(dst,None)

# Threshold for an optimal value, it may vary depending on the image.
img[dst>0.01*dst.max()]=[0,0,255]

cv2.imshow('dst',img)
cv2.waitKey(0)
cv2.imwrite('CornerSquare.jpg',img)

enter image description here

1 个答案:

答案 0 :(得分:3)

coord = np.where(np.all(img == (0, 0, 255), axis=-1))
print zip(coord[0], coord[1])