python opencv图像识别教程整理,pythonopencv图像识别
这篇文章主要介绍了如何利用Python OpenCV实现检测图片中的圆形,文中的示例代码讲解详细,感兴趣的小伙伴快跟随小编一起学习一下
效果展示
中心的三个没检测到
导入cv2
将数组作为铭牌导入
将matplotlib.pyplot作为血小板计数导入
w=20
h=5
params=cv2 .SimpleBlobDetector_Params()
# Setup SimpleBlobDetector参数。
打印(参数)
打印(参数)
打印(类型(参数))
#按区域过滤。
params.filterByArea=True
params.minArea=10e1
params.maxArea=10e3
params.minDistBetweenBlobs=25
# params.filterByColor=True
params.filterByConvexity凸度凸度=假
#调整这些你认为合适的
#按循环过滤
# params。filterbycircularity=False
# params.minCircularity=0.2
# params.blobColor=0
# # #按凸度过滤
# params.filterByConvexity凸度凸度=真
# params。部凸度=0.87
#按惯性过滤
# params.filterByInertia=True
# params.filterByInertia=False
# params.minInertiaRatio=0.01
# img=cv2。我在读(圆圈/圆环。jpg ,1)
img=cv2。im read( circles/Snap _ 001。jpg ,1)
gray=cv2.cvtColor(img,cv2 .COLOR_BGR2GRAY)
#检测斑点。
# image=cv2.resize(gray_img,(int(img.shape[1]/4),int(img.shape[0]/4)),1,1,cv2 .INTER _线性)
# image=cv2.resize(gray_img,dsize=None,fx=0.25,fy=0.25,插值=cv2 .INTER _线性)
minThreshValue=120
_,gray=cv2.threshold(gray,minThreshValue,255,cv2 .THRESH_BINARY)
gray=cv2.resize(gray,dsize=None,fx=2,fy=2,interpolation=cv2 .INTER _线性)
# plt.imshow(灰色)
# cv2.imshow(灰色,灰色)
检波器=cv2 .SimpleBlobDetector_create(参数)
关键点=检测器。检测器(灰色)
打印(len(关键点))
图=plt .图()
# im _ with _ keypoints=cv2。画关键点(gray,key points,np.array([]),(0,0,255),cv2 .DRAW _ MATCHES _ FLAGS _ DRAW _ RICH _ key点)
im _ with _ keypoints=cv2。画关键点(gray,key points,np.array([]),(0,0,255),cv2 .DRAW _ MATCHES _ FLAGS _ DRAW _ RICH _ key点)
PLT。im秀(cv2。CVT颜色(im _ with _ key points,cv2 .COLOR_BGR2RGB),插值=双三次)
fname=要点
titlestr=%s找到了%d个关键点% (fname,len(keypoints))
计划标题(标题串)
plt.show()
# cv2.imshow(graykey ,灰色)
# cv2.waitKey()
图。画布。设置窗口标题
ret,拐角=cv2。findcirclesgrid(gray,(w,h),flags=(cv2 .CALIB _ CB _对称_网格cv2 .CALIB_CB_CLUSTERING),blobDetector=detector)
如果拐角不是无:
cv2。画板角(img,(宽,高),角,角不是无)
打印("查找斑点”)
# # cv2.imshow(findCorners ,img)
# cv2.waitKey()
plt.imshow(img)
plt.show()
以上就是Python OpenCV实现图片中的圆形检测的详细内容,更多关于Python OpenCV圆形检测的资料请关注盛行信息技术软件开发工作室其它相关文章!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。