当前位置:   article > 正文

基于python-opencv的摄像头识别五角星_五角星识别

五角星识别

每秒截取摄像头的一张照片放到文件夹,在读取识别。

使用前在D盘创建一个Images的文件夹就ok了。

  1. import threading
  2. import cv2
  3. global timer
  4. import sys
  5. num = 0
  6. def shot_img():
  7. global num
  8. success, frame = cameraCapture.read()
  9. print(num)
  10. path = "D:/Images/"
  11. cv2.imwrite( path +str(num) + '.png', frame)
  12. e = cv2.imread("D:/Images/" + str(num) + '.png')
  13. g = cv2.cvtColor(e, cv2.COLOR_BGR2GRAY)
  14. r, b = cv2.threshold(g, 0, 255, cv2.THRESH_OTSU)
  15. cr, t = cv2.findContours(b, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
  16. ep = 0.01 * cv2.arcLength(cr[1], True)
  17. ap = cv2.approxPolyDP(cr[1], ep, True)
  18. co = len(ap)
  19. if co==10:
  20. print("五角星")
  21. else:
  22. print("识别失败")
  23. num += 1
  24. if num==5:
  25. cameraCapture.release()
  26. cv2.destroyAllWindows()
  27. sys.exit()
  28. timer = threading.Timer(1, shot_img)
  29. timer.start()
  30. #---------------------------------------------------------------------------------------------------
  31. if __name__ == '__main__':
  32. cameraCapture = cv2.VideoCapture(0)
  33. timer = threading.Timer(1, shot_img)
  34. timer.start()
  35. cv2.waitKey(1000)

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/神奇cpp/article/detail/836900
推荐阅读
相关标签
  

闽ICP备14008679号