如何解决V4L2 设置水平翻转导致“条形”伪影
摄像头:OmniVision OV5645(MIPI CSI-2 连接)
单片机:RK3399
Linux 内核版本:4.4.189
司机:v4 mainline
当我使用 v4l2-ctl -d /dev/video0 --set-ctrl horizontal_flip=1
水平翻转相机时,黑色竖条伪影开始出现在图像的所有边缘。
用于比较的捕获图像:flipped vs not flipped
有没有人遇到过类似的问题?我什至不确定从哪里开始调试 - 这是由于相机传感器还是 rk3399 上的 rkisp 模块或其他原因?我没有其他带有 MIPI 连接的 MCU,例如 Raspberry Pi 或其他可用于测试的 MCU。
我尝试过但不起作用的事情:
- 编辑 OV5645 驱动程序以在切换 v4l2 水平翻转控件时翻转
isp_mirror
位。这不仅没有解决问题,而且导致图像完全呈粉红色/紫色 - 编辑 OV5645 驱动程序以将默认水平翻转设置为 1
- 在 OV5645 驱动程序中编辑初始 i2c 寄存器值以关闭合并
media-ctl
拓扑转储:
Media controller API version 0.1.0
Media device information
------------------------
driver rkisp1
model rkisp1
serial
bus info
hw revision 0x0
driver version 0.0.0
Device topology
- entity 1: rkisp1-isp-subdev (4 pads,6 links)
type V4L2 subdev subtype Unknown flags 0
device node name /dev/v4l-subdev0
pad0: Sink
[fmt:UYVY8_2X8/1920x1080 field:none
crop.bounds:(0,0)/1920x1080
crop:(0,0)/1920x1080]
<- "rkisp1_dmapath":0 []
<- "rockchip-mipi-dphy-rx":1 [ENABLED]
pad1: Sink
<- "rkisp1-input-params":0 [ENABLED]
pad2: Source
[fmt:YUYV8_2X8/1920x1080 field:none
crop.bounds:(0,0)/1920x1080]
-> "rkisp1_selfpath":0 [ENABLED]
-> "rkisp1_mainpath":0 [ENABLED]
pad3: Source
-> "rkisp1-statistics":0 [ENABLED]
- entity 2: rkisp1_mainpath (1 pad,1 link)
type Node subtype V4L flags 0
device node name /dev/video0
pad0: Sink
<- "rkisp1-isp-subdev":2 [ENABLED]
- entity 3: rkisp1_selfpath (1 pad,1 link)
type Node subtype V4L flags 0
device node name /dev/video1
pad0: Sink
<- "rkisp1-isp-subdev":2 [ENABLED]
- entity 4: rkisp1_dmapath (1 pad,1 link)
type Node subtype V4L flags 0
device node name /dev/video2
pad0: Source
-> "rkisp1-isp-subdev":0 []
- entity 5: rkisp1-statistics (1 pad,1 link)
type Node subtype V4L flags 0
device node name /dev/video3
pad0: Sink
<- "rkisp1-isp-subdev":3 [ENABLED]
- entity 6: rkisp1-input-params (1 pad,1 link)
type Node subtype V4L flags 0
device node name /dev/video4
pad0: Source
-> "rkisp1-isp-subdev":1 [ENABLED]
- entity 7: rockchip-mipi-dphy-rx (2 pads,2 links)
type V4L2 subdev subtype Unknown flags 0
device node name /dev/v4l-subdev1
pad0: Sink
[fmt:UYVY8_2X8/1920x1080 field:none]
<- "ov5645 2-003c":0 [ENABLED]
pad1: Source
[fmt:UYVY8_2X8/1920x1080 field:none]
-> "rkisp1-isp-subdev":0 [ENABLED]
- entity 8: ov5645 2-003c (1 pad,1 link)
type V4L2 subdev subtype Sensor flags 0
device node name /dev/v4l-subdev2
pad0: Source
[fmt:UYVY8_2X8/1920x1080 field:none
crop:(0,0)/1920x1080]
-> "rockchip-mipi-dphy-rx":0 [ENABLED]
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。