中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

怎么使用OpenCV檢測圖像中的圓形

小億
165
2024-05-22 16:21:15
欄目: 編程語言

要使用OpenCV檢測圖像中的圓形,可以使用Hough Circle Transform算法。以下是一個簡單的例子,演示如何在圖像中檢測圓形:

import cv2
import numpy as np

# 讀取圖像
image = cv2.imread('circle.jpg')
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)

# 高斯濾波
gray_blurred = cv2.GaussianBlur(gray, (9, 9), 0)

# 使用Hough Circle Transform檢測圓形
circles = cv2.HoughCircles(gray_blurred, cv2.HOUGH_GRADIENT, dp=1, minDist=20,
                            param1=50, param2=30, minRadius=0, maxRadius=0)

if circles is not None:
    circles = np.uint16(np.around(circles))

    for i in circles[0, :]:
        # 繪制圓形邊界
        cv2.circle(image, (i[0], i[1]), i[2], (0, 255, 0), 2)
        # 繪制圓心
        cv2.circle(image, (i[0], i[1]), 2, (0, 0, 255), 3)

# 顯示結果
cv2.imshow('Detected Circles', image)
cv2.waitKey(0)
cv2.destroyAllWindows()

在上面的代碼中,首先讀取圖像并將其轉換為灰度圖像。然后,對灰度圖像進行高斯模糊處理。接下來,使用cv2.HoughCircles()函數檢測圖像中的圓形。最后,遍歷檢測到的圓形,并用綠色圓圈繪制圓形的邊界,用紅色點繪制圓心。

注意:在使用Hough Circle Transform算法時,需要調整函數的參數以獲得最佳效果,具體參數的意義可以參考OpenCV官方文檔。

0
教育| 永丰县| 浪卡子县| 奉贤区| 正定县| 乾安县| 玛曲县| 宁远县| 太仆寺旗| 贵定县| 潍坊市| 观塘区| 炎陵县| 张掖市| 汪清县| 津市市| 左贡县| 金秀| 句容市| 上栗县| 临高县| 额尔古纳市| 江西省| 淄博市| 乐陵市| 乌拉特后旗| 天门市| 随州市| 太仆寺旗| 新竹县| 大邑县| 奉化市| 门源| 家居| 贵阳市| 五大连池市| 宣化县| 娄底市| 通江县| 大方县| 永寿县|