gpt4 book ai didi

python - 是否可以对多个图像使用 cv2.HoughCircles 函数?

转载 作者:太空宇宙 更新时间:2023-11-03 22:17:30 24 4
gpt4 key购买 nike

大多数来源提供的代码只能检测一张图片的圆圈。是否可以检测多个图像的圆圈?如果是,我该怎么办?如果不是,为什么不可能?

for img in os.listdir(path):  
img_array = cv2.imread(os.path.join(path,img))
circles = cv2.HoughCircles(img_array,cv2.HOUGH_GRADIENT,1,10,param1=50,param2=12,minRadius=0,maxRadius=10)

当我运行这段代码时,我得到了这个错误。谁能帮忙解释一下这是什么意思?

error: OpenCV(4.1.0) C:\projects\opencv-python\opencv\modules\imgproc\src\hough.cpp:1736: error: (-215:Assertion failed) !_image.empty() && _image.type() == CV_8UC1 && (_image.isMat() || _image.isUMat()) in function 'cv::HoughCircles'

最佳答案

错误消息告诉您您的图像是空的,或者它不是灰度图像,或者它不是 OpenCV 图像。最有可能是第二个。 HoughCircles 函数仅适用于灰度图像,您需要在使用前将图像转换为灰色:

for img in os.listdir(path):  
img_array = cv2.imread(os.path.join(path,img))
img_gray = cv2.cvtColor(img_array, cv2.COLOR_BGR2GRAY)
circles = cv2.HoughCircles(img_gray,cv2.HOUGH_GRADIENT,1,10,param1=50,param2=12,minRadius=0,maxRadius=10)

关于python - 是否可以对多个图像使用 cv2.HoughCircles 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56089222/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com