树莓派+摄像头如何实现对移动物体的检测

  介绍

这篇文章主要为大家展示了“树莓派+摄像头如何实现对移动物体的检测”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“树莓派+摄像头如何实现对移动物体的检测”这篇文章吧。

<强>一、环境变量的配置

我们可以参照上一篇文章对我们的树莓派进行环境的配置

当我们将cv2的库安装之后,就可以实现对摄像头的操作

<强>二、摄像头的连接

在此实验中,我使用的为usb摄像头

当我们连接摄像头之后,终端输入

ls /dev/视频*

如果终端提示如下:

笆鬏?摄像头如何实现对移动物体的检测"

则表示摄像头连接成功

<强>三、编码实现对移动物体的检测

使用python编写程序,实现对移动物体的检测,代码如下

#=utf - 8编码   import  RPi.GPIO  as  GPIO   import  cv2   import 时间   import 操作系统   ,   GPIO.setmode (GPIO.BCM)   GPIO.OUT GPIO.setup(18日)   ,   时间=camera  cv2.VideoCapture (0)   if  camera  is 没有:   ,打印(& # 39;please  connect 从而相机# 39;)   ,退出()   ,   时间=fps  30,   时间=pre_frame 没有   ,   led =False   ,   while 真正的:=,,start  time.time ()   ,res, cur_frame =, camera.read ()   ,if  res  !=,真的:   ,打破   ,最终获得=,time.time ()=,seconds ,最终获得成功,开始   ,if  seconds  & lt; 1.0/帧:   ,time . sleep (1.0/fps 作用;秒)   ,   ,cv2.namedWindow (& # 39; img # 39;, 0);   ,# cv2.imshow (& # 39; img # 39;,, cur_frame)=,,key  cv2.waitKey(30),及0 xff   ,if  key ==, 27日:   ,打破   ,=,,gray_img  cv2.cvtColor (cur_frame, cv2.COLOR_BGR2GRAY)=,,gray_img  cv2.resize (gray_img,, (500,, 500))=,,gray_img  cv2.GaussianBlur (gray_img,, (21,, 21), 0)   ,   ,if  pre_frame  is 没有:=,pre_frame  gray_img   ,其他的:=,,img_delta  cv2.absdiff (pre_frame, gray_img)=,,thresh  cv2.threshold (img_delta, 25岁,255年,cv2.THRESH_BINARY) [1]=,,thresh  cv2.dilate(打,,没有,,迭代=2)   ,   轮廓的不同之处是,hierarchy =, cv2.findContours (thresh.copy (), cv2.RETR_LIST, cv2.CHAIN_APPROX_SIMPLE)   ,for  c 轮廓拷贝:   if 才能cv2.contourArea (c), & lt;, 1000:   ,继续   其他的才能:   ,(x, y, w, h),=, cv2.boundingRect (c)   ,cv2.rectangle (cur_frame (x, y) (x + w, y + h) (0255 0), 2)   ,   ,打印(“something  is 移动! ! !“)   led =, True   ,if  led ==,真的:   ,for 小姐:拷贝范围(30):   GPIO.HIGH, GPIO.output(18日)   ,time . sleep (0.03)   GPIO.LOW, GPIO.output(18日)   ,time . sleep (0.03)   ,打破   ,   ,cv2.imshow (& # 39; img # 39;,, cur_frame),=,pre_frame  gray_img   ,   camera.release ()   cv2.destroyAllWindows ()

我的树莓派终端不能显示中文,因此会出现乱码

Ubuntu下的运行结果如下

笆鬏?摄像头如何实现对移动物体的检测"

树莓派下执行结果如下:

笆鬏?摄像头如何实现对移动物体的检测"

以上是“树莓派+摄像头如何实现对移动物体的检测”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

树莓派+摄像头如何实现对移动物体的检测