opencv学习笔记之霍夫圆检测(python版)

本文介绍如何利用OpenCV库在Python环境中读取并处理图像,通过转换颜色空间、应用中值模糊去除噪声,然后使用霍夫圆变换检测图像中的圆形物体。展示了从加载图像到识别并标记出所有圆形的具体步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

import cv2 as cv
import numpy as np

planets = cv.imread("planet_glow.jpg")
gay_img =cv.cvtColor(planets,cv.COLOR_BGRA2GRAY)
img  = cv.medianBlur(gay_img, 7)  #进行中值模糊,去噪点
cimg = cv.cvtColor(img, cv.COLOR_GRAY2BGR)
circles = cv.HoughCircles(img,cv.HOUGH_GRADIENT, 1, 120, param1=100, param2=30, minRadius=0, maxRadius=0)

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


for i in circles[0,:]: #遍历矩阵每一行的数据
    cv.circle(planets, (i[0],i[1]),i[2],(0,255,0) ,2)
    cv.circle(planets, (i[0], i[1]),2, (0,0,255) ,3)         


cv.imshow("gay_img", planets)
cv.waitKey(0)
cv.destroyAllWindows()

样图:

效果图:(按照书上设置的参数效果不好,cv.medianBlur(gay_img, 7) 把第二个参数调成7以后才得到最终效果 )

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值