python opencv图像识别教程整理,pythonopencv图像识别

  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的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: