[RKNN学习记录]香橙派orangepi 5plus python获取HDMI输入视频流_python hdmi(1)

本文详细描述了如何在Ubuntu和Windows系统中为OpenCV4.5.4配置CMake,包括GStreamer支持,以及在ARM设备上遇到的问题和解决方法。作者还分享了Python开发者的学习资源,提供了一套全面的Python开发学习资料。
摘要由CSDN通过智能技术生成
unzip opencv-4.5.4.zip
cd opencv-4.5.4
mkdir build
cd build

Cmake配置如下

cmake \
    -D CMAKE_BUILD_TYPE=RELEASE \                         # 设置构建类型为RELEASE
    -D INSTALL_PYTHON_EXAMPLES=OFF \                      # 不安装Python示例
    -D INSTALL_C_EXAMPLES=OFF \                           # 不安装C示例
    -D BUILD_opencv_python2=OFF \                         # 不构建Python 2支持
    -D CMAKE_INSTALL_PREFIX=$(python3 -c "import sys; print(sys.prefix)") \  # 设置安装路径为Python的安装路径
    -D PYTHON3_EXECUTABLE=$(which python3) \              # 指定Python 3可执行文件路径
    -D PYTHON3_INCLUDE_DIR=$(python3 -c "from distutils.sysconfig import get_python_inc; print(get_python_inc())") \  # 指定Python 3的包含目录
    -D PYTHON3_PACKAGES_PATH=$(python3 -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())") \  # 指定Python 3的包路径
    -D WITH_GSTREAMER=ON \                                # 开启GStreamer支持
    -D BUILD_EXAMPLES=OFF \                               # 不构建示例
    -D PNG_LIBRARY=/usr/lib/aarch64-linux-gnu/libpng.so \ # 指定PNG库路径
    ..

配置后检查一下自己的配置,路径什么的是否正确,重点是GStreamer一行为YES(下图是截的别人的How to compile OpenCV with Gstreamer [Ubuntu&Windows] | by Galaktyk 01 | Medium

3、开始编译

下面命令是全核一起参与编译,但是在我的香橙派5plus上开全核编译时出现多次系统死机情况,所以我使用的是 make -j4 只开启四个线程编译

make -j$(nproc)

4、安装,更新动态链接库

sudo make install
sudo ldconfig

5、测试

首先卸载python中的opencv-python包

然后直接进入python测试下面代码

import cv2
print(cv2.getBuildInformation())

显示YES则成功。

6、获取HDMI输入测试

import cv2

# GStreamer 管道字符串
pipeline = "v4l2src device=/dev/video0 ! videoconvert ! appsink"

# 创建 VideoCapture 对象
cap = cv2.VideoCapture(pipeline, cv2.CAP_GSTREAMER)

if not cap.isOpened():
    print("Error: Could not open video stream.")
    exit()

# 读取和显示视频流
while True:
    ret, frame = cap.read()
    if not ret:
        print("Error: Failed to read frame from video stream.")
        break

    cv2.imshow('Video Stream', frame)
    
    key = cv2.waitKey(1)
    if key == ord('q'):
        break

# 释放资源
cap.release()
cv2.destroyAllWindows()

OK了

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Python工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Python开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

img

img

img

img

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注Python)

盖了95%以上前端开发知识点,真正体系化!**

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注Python)

img
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值