小编Har*_*rai的帖子

像opencv一样检测圆形

每个人我对OpenCV和计算机视觉都很陌生,而且我坚持这个问题,这看起来似乎是一件相当微不足道的事,但原谅我的无聊:)

我试图从横截面图像中检测出Rebars.

原始彩色图像

我正在使用此代码:

import cv2
import cv2.cv as cv
import numpy as np

img = cv2.imread('test/t2.jpg',0)
img = cv2.equalizeHist(img)
cimg = cv2.cvtColor(img,cv2.COLOR_GRAY2BGR)

circles = cv2.HoughCircles(img,cv.CV_HOUGH_GRADIENT,1,10,param1=50,param2=30,minRadius=0,maxRadius=25)

circles = np.uint16(np.around(circles))
for i in circles[0,:]:
    # draw the outer circle
    cv2.circle(cimg,(i[0],i[1]),i[2],(0,255,0),2)

cv2.imshow('detected circles',cimg)
cv2.waitKey(0)
cv2.destroyAllWindows()
Run Code Online (Sandbox Code Playgroud)

这是我目前得到的结果,这并不好: 结果

我正在寻找关于如何解决这个问题以及如何了解更多关于简历的指示,因为我真的很感兴趣!

万分感谢!

python opencv artificial-intelligence computer-vision

5
推荐指数
1
解决办法
1万
查看次数