opencv學習筆記 22 圓檢測

2021-10-04 23:55:53 字數 1298 閱讀 5233

使用霍夫圓檢測的時候需要注意的是 霍夫圓檢測對雜訊特別敏感,需要對影象進行降噪處理。有時候出錯可以是因為處理過度或者沒有處理造成,我們可以通過顯示處理之後的影象檢查出錯點。

import cv2 as cv

import numpy as np

defdetect_circles_demo

(image)

:# 邊緣保留濾波

dst = cv.pyrmeanshiftfiltering(image,2,

100)

# cv.imshow('dst', dst) 這裡可以檢視處理之後的影象,因為霍夫圓檢測對雜訊特別敏感

cimage = cv.cvtcolor(dst, cv.color_bgr2gray)

# 霍夫圓檢測 引數: 輸入影象 方法(梯度) 步長 最小距離

circles = cv.houghcircles(cimage, cv.hough_gradient,1,

50, param1=

50, param2=

30, minradius=

0, maxradius=0)

# print(circles)

circles = np.uint16(np.around(circles)

)for i in circles[0,

:]:print

(i) cv.circle(image,

(i[0

], i[1]

), i[2]

,(0,

0,255),2

)# 繪製圓心

Opencv學習筆記(十一)霍夫圓檢測

霍夫圓變換的數學原理和霍夫直線變換的數學原理是一致的,都是要將要檢測的圖形從笛卡爾座標系轉換到霍夫空間。在笛卡爾座標系中某個特定的圓由三個引數 圓心座標及圓的半徑 所唯一確定 x x0 2 y y0 2 r2 x x 0 2 y y 0 2 r 2 x x0 2 y y0 2 r2如果要將其上的點轉...

OpenCV學習筆記(九)之霍夫圓檢測

老規矩 妹妹鎮樓 基於效率考慮,opencv中實現的霍夫變換圓檢測是基於影象梯度的實現,分為兩步 檢測邊緣,發現可能的圓心 在第一步的基礎上從候選圓心開始計算最佳半徑大小。cv houghcircles api分析 cv houghcircles inputarray image,輸入影象,必須是8...

(22)霍夫圓檢測

霍夫圓檢測 霍夫變換進行圓檢測 幾何中圓心座標和半徑表徵乙個圓,從平面座標到極座標轉換三個引數c x0,y0,r 固定r,在0 360度空間的時候只有x0,y0這兩個變數,就是a跟b,其中x0,y0是圓心,那麼在圓心處有最大值,霍夫空間累計最大值在圓心處 假設平面座標的任意乙個圓上的點,轉換到極座標...