-1
我有一個圖像,我想查找位於此圖像中曲線上某些點的座標。請看看圖像。 紅點是我需要計算它們的座標的點。你能告訴我如何在Python中做到這一點嗎?
提前感謝您的幫助。 最佳使用Python查找位於圖像中曲線上的點的座標
我有一個圖像,我想查找位於此圖像中曲線上某些點的座標。請看看圖像。 紅點是我需要計算它們的座標的點。你能告訴我如何在Python中做到這一點嗎?
提前感謝您的幫助。 最佳使用Python查找位於圖像中曲線上的點的座標
首先將圖像轉換爲HSV並分離出紅點。然後通過查找輪廓和他們的時刻來獲得它的座標很簡單。如果你正在使用的OpenCV -
輸出:
代碼:
import cv2
import numpy as np
frame=cv2.imread("dots.jpg")
dots=np.zeros_like(frame)
hsv = cv2.cvtColor(frame, cv2.COLOR_BGR2HSV)
lower_hsv = np.array([112, 176, 174])
higher_hsv = np.array([179,210,215])
mask = cv2.inRange(hsv, lower_hsv, higher_hsv)
cnts, h = cv2.findContours(mask, cv2.RETR_LIST, cv2.CHAIN_APPROX_NONE)
mnts = [cv2.moments(cnt) for cnt in cnts]
centroids = [(int(round(m['m10']/m['m00'])),int(round(m['m01']/m['m00']))) for m in mnts]
for c in centroids:
cv2.circle(dots,c,5,(0,255,0))
print c
cv2.imshow('red_dots', dots)
cv2.waitKey(0)
cv2.destroyAllWindows()
謝謝您的答覆。然而,這不是我正在尋找的。首先,我無法弄清楚這些座標是根據什麼來源計算的!無論如何,我很抱歉在我的問題中沒有提及它,但我想要的是相對於圓點所在圓弧中心的紅點座標(可以說中心的座標是(0,0)。在這種情況下,點(點)的座標應該爲零,因爲它們位於下半部分。我很感謝您再次查看它。 – Leo
您可以查看hough圓[here](http: //opencv-python-tutroals.readthedocs.io/en/latest/py_tutorials/py_imgproc/py_houghcircles/py_houghcircles.html)這些可能是一個圓上的點,你可以很容易地得到該圓圈的中心,如鏈接,一旦你有了中心,從打印的座標中減去它,你就可以得到相對於弧中心的座標 –
謝謝,我會按照你所說的去研究Hough Circle Transform,但是我的問題依然存在。你能否澄清一下原產地的位置?你還計算了這些座標相對於X和Y軸? – Leo