簡體   English   中英

查找圖像中圓心的像素

[英]Find the pixel of center of a circle in an image

嘿伙計們,我需要在圖像中找到內部小圓圈的中心坐標。 我不想使用 cv 的 Hought 方法。 每個圓的半徑為 20 像素。

圖像是這樣的:

在此處輸入圖像描述

我以灰度讀取圖像,因為我希望 e 值在 0-255 之間標准化。

這是代碼,我找不到我錯的地方:

img = cv2.imread('input_image',0)#read in grayscale
lista = []
rows,cols = img.shape
for i in range(rows):
    for j in range(cols):
        k = img[i,j]
        if k == 0:
            #No circle
            continue
        else:
            #Circle
            x=i+10
            y=j
            k = img[x,y]#centro del pallino
            i+=21
            
            arr = np.array([x,y,k])
            lista.append(arr)
      
print(lista)

我想要一個 arrays 列表,其中每個 arrays 包含 x 坐標、y 坐標和像素值。 我哪里錯了?

由於在 for 循環中將第一次遇到圓的最高點,因此 x 和 y 值應更新為x=iy = j+10

此外,如果有兩個圓使得連接兩個圓的中心的線幾乎是水平的,則此邏輯將不起作用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM