• 树莓派|采集视频并实时显示画面


    1、使用SSH远程连接到树莓派

    2、新建存放代码的目录

    mkdir /home/pi/my_code_directory

    3、进入存放代码的目录

    cd /home/pi/my_code_directory

    4、新建py文件

    nano cv2test.py

    5、输入代码

    1. import cv2
    2. # 打开摄像头
    3. cap = cv2.VideoCapture(0)
    4. while True:
    5. # 读取视频帧
    6. ret, frame = cap.read()
    7. # 显示视频帧
    8. cv2.imshow('Video', frame)
    9. # 按下'q'键退出循环
    10. if cv2.waitKey(1) & 0xFF == ord('q'):
    11. break
    12. # 释放摄像头和关闭窗口
    13. cap.release()
    14. cv2.destroyAllWindows()

    先按键盘上的ctrl+o,再按回车保存,再按ctrl+x退出nano编辑器回到命令行界面。

    6、执行代码

    python3 cv2test.py

    由于是SSH连接,出现如下错误:

    Unable to init server: 无法连接:拒绝连接 

    (Video:25768): Gtk-WARNING **: cannot open display:

    从错误消息看,这可能是因为正在尝试在没有图形环境的服务器上运行带有GUI界面的程序。OpenCV(cv2)通常需要显示图像,而在缺少图形环境的情况下,它无法正常工作。

    如果在远程服务器或没有图形界面的系统上运行代码,可以考虑以下解决方案:

    确保代码不需要图形界面。如果您只使用OpenCV进行图像处理、计算或保存图像等操作,并不需要实时显示图像,可以通过在代码中禁用图形界面相关的功能来解决此问题。

    如果确实需要实时显示图像,在本地机器上开启一个图形界面会话,并通过SSH将图像显示到本地。您可以使用X11 tunnelling来实现这一点。在进行SSH连接时,确保使用-X或-Y选项来启用X11转发。

    解决方法:使用VNC远程连接到树莓派,重新进入目录执行代码,弹出图像界面,程序正常运行

    图片

  • 相关阅读:
    python AIOT教程一1.必备多元函数微分学理论基础
    MySQL——进阶操作
    测开笔试笔记(1)
    ONLYOFFICE8.1版本桌面编辑器测评
    Android源码分析 - Framework层的Binder(客户端篇)
    网页JS自动化脚本(十)新旧字符串关键词检测
    贪心算法之——阶乘之和(nyoj91)
    在Vue项目中应用TypeScript
    php pecl安装redis扩展
    2023.10.19 关于设计模式 —— 单例模式
  • 原文地址:https://blog.csdn.net/weixin_74923758/article/details/138801173