opencv无法设置禁用RGB转换问题

树莓派连接摄像头,摄像头输出格式为YUYV(YUV422)。

通过执行 v4l2-ctl --list-formats --device=/dev/video0 可以看的具体的摄像头的数据格式。

使用opencv获取视频流,通过cap.set(cv2.CAP_PROP_CONVERT_RGB, 0)设置禁用自动转换RGB格式,但是打印输出的数据依旧是RGB。

设置

cap.set(cv2.CAP_PROP_FOURCC, cv2.VideoWriter_fourcc('Y', 'U', 'Y', 'V')) # 设置摄像头为 YUYV

依旧输出的还是RGB,

复制代码
cap = cv2.VideoCapture(0,cv2.CAP_V4L)
cap.set(cv2.CAP_PROP_CONVERT_RGB, 0)  # 去除默认的RGB转换
cap.set(cv2.CAP_PROP_FOURCC, cv2.VideoWriter_fourcc('Y', 'U', 'Y', 'V'))  # 设置摄像头为 YUYV

width = cap.get(cv2.CAP_PROP_FRAME_WIDTH)
height = cap.get(cv2.CAP_PROP_FRAME_HEIGHT)

经过仔细检查发现,执行cap.set(cv2.CAP_PROP_CONVERT_RGB, 0)的时候会报警

WARN:0@2.647 global ./modules/videoio/src/cap_gstreamer.cpp (1716) setProperty OpenCV | GStreamer warning: GStreamer: unhandled property

报警导致此指令执行失败,会自动将yuv数据转换为rgb。

解决方法:

执行sudo apt-get install gstreamer1.0* ,将gstreamer相关库更新到最新版后,问题解决。

相关推荐
白露与泡影16 分钟前
从 GLM 到 GPT,HarnessPro 如何用 RSI 降低 Agent 成本
人工智能·gpt·机器学习
u13013017 分钟前
GitHub 热榜项目:日榜(2026-10-28)
人工智能·github
会编程的吕洞宾31 分钟前
RAG检索质量怎么评估?3个指标+LLM裁判实战
java·开发语言·人工智能·后端
ShuangNaoPai33 分钟前
失效检测与原型匹配:基于双脑派于华的高尔夫案例,重构AI内容生成策略
人工智能·架构·产品运营·prompt
西柚不烦恼35 分钟前
Windows 本地部署私有 AI 全攻略:纯 CPU 环境(Ollama + Open WebUI)
人工智能·windows
2601_962885721 小时前
让 AI Agent 自动收盘复盘:定时取全市场数据 + 生成复盘
人工智能
2501_918126911 小时前
如何使用ai预防ai爆破服务器
人工智能
马剑威(威哥爱编程)1 小时前
【HarmonyOS 7 小艺智能体实战】10:提交、审核、上架与上线后——把服务真正交给用户
人工智能·华为·harmonyos
yyk333241 小时前
YOLOv3算法
人工智能·yolo·目标跟踪
cooldream20091 小时前
AI 时代编程学习路线图:四个阶段,从零基础到独立交付
人工智能·编程学习