Python-OpenCV学习--电脑外接摄像头实时采集FAST角点并显示

 一、一般的Python OpenCV代码是对现有的图片提取fast角点

参考代码很多:https://blog.csdn.net/update7/article/details/105927539

 

二、采用台式机外接USB摄像头采集图像,实时检测fast角点并显示。(可设置摄像头采集帧率)

        只是简单的将图像获取路径换成摄像头采集,也能运行,但是运行结果是图片的显示,关闭后又显示下一帧图像,无法实时视频流级别的显示检测结果。

        初学者摸索的修改版代码,测试可以使用。仅供自己以后学习参考。

import numpy as np
import cv2
from matplotlib import pyplot as plt
cap = cv2.VideoCapture(0)
cap.set(cv2.CAP_PROP_FPS, 10)
while True:

    ret, frame = cap.read()

   # cv2.imshow("Video", frame)
    #读取内容

    # Initiate FAST object with default values
    fast = cv2.FastFeatureDetector_create()
    # find and draw the keypoints
    kp = fast.detect(frame,None)
    img2 = cv2.drawKeypoints(frame, kp, None, color=(255,0,0))
    # Print all default params
   # print( "Threshold: {}".format(fast.getThreshold()) )
   # print( "nonmaxSuppression:{}".format(fast.getNonmaxSuppression()) )
  #  print( "neighborhood: {}".format(fast.getType()) )
  #  print( "Total Keypoints with nonmaxSuppression: {}".format(len(kp)) )
   # cv2.imwrite('fast_true.png',img2)
    cv2.imshow("Video", img2)
  #  plt.imshow(img2)
   # plt.show("display")

    if cv2.waitKey(10) == ord("q"):
        break
#随时准备按q退出
cap.release()
cv2.destroyAllWindows()

 

 

三、帧率设置: 参考一下表格中的参数。

cap.set(cv2.CAP_PROP_FPS, 10)  第一个是参数名,第二个是赋值,代表每秒10帧

参考:https://blog.csdn.net/weixin_41010198/article/details/88535234

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值