UNSOLVED 执行编译出来的./video12 800 800 60 得到的图像。像是按照4:3拉伸得到的图像, 并不是裁剪出来的800 *800的正方形
-
@nb said in 执行编译出来的./video12 800 800 60 得到的图像。像是按照4:3拉伸得到的图像, 并不是裁剪出来的800 *800的正方形:
你之前提供的脚本是2字节读写的,应该不对, 我做了些调整,改正4字节读写了
我们提供的脚本没问题,直接make一下之后调用就可以。
你分别执行一下这两个命令,贴上来结果我看一下:
v4l2-ctl -d /dev/v4l-subdev2 -L media-ctl -p -d /dev/media0
-
@veye_xumm said in 执行编译出来的./video12 800 800 60 得到的图像。像是按照4:3拉伸得到的图像, 并不是裁剪出来的800 *800的正方形:
分别执行一下这两个命令,贴上来
gensong@ros2-ubuntu20-by-nb:~/20$ v4l2-ctl -d /dev/v4l-subdev2 -L
User Controls
trigger_mode 0x00981901 (int) : min=0 max=2 step=1 default=0 value=0 flags=grabbed, volatile, execute-on-write trigger_src 0x00981902 (int) : min=0 max=1 step=1 default=1 value=1 flags=grabbed, volatile, execute-on-write soft_trgone 0x00981903 (button) : flags=write-only, execute-on-write frame_rate 0x00981904 (int) : min=0 max=60 step=1 default=60 value=60 flags=grabbed, volatile, execute-on-write roi_x 0x00981905 (int) : min=0 max=1376 step=8 default=0 value=0 flags=grabbed roi_y 0x00981906 (int) : min=0 max=1024 step=4 default=0 value=0 flags=grabbed
Image Processing Controls
link_frequency 0x009f0901 (intmenu): min=0 max=0 default=0 value=0 0: 750000000 (0x2cb41780) pixel_rate 0x009f0902 (int64) : min=750000000 max=750000000 step=1 default=750000000 value=750000000 flags=read-only
gensong@ros2-ubuntu20-by-nb:~/20$
-
-
@nb 看起来你的配置没有问题。
有没有可能是硬件的问题?你试过ROC-RK3588S-PC主板上的结果吗? -
@veye_xumm 我们这边 没有ROC-RK3588S-PC 这个硬件,
我觉得 可以再往前面排查一步, 就是模组 出图Max width是1536 Height是1088然后不知道哪里给设置ROI 设置成了1440 和1088 我想知道 这一步是在哪里设置的。 会不会就是这一步设置成1440 *1088的时候 被拉伸了。
-
@nb 其实用mv_mipi_i2c.sh这个脚本,就是直接读取和写camera寄存器的,是最底层也最直接的操作。
驱动层面只是封装了对寄存器的读写而已。
但是你说你的板子上mv_mipi_i2c.sh不行,我觉得很奇怪。这里得到的结果是0x05a0(1440) 0x0440(1088)
根据你自己的修改过的脚本,相机端读到的roi数据是跟3588板子上的驱动中的值是一致的。
因此我才怀疑是不是硬件的问题。
-
@veye_xumm 硬件哪方面会导致这样的问题呢 ,可否提供一下排查思路,或者需要我们这边怎么配合你 来排查硬件呢?
-
@nb 我也只是怀疑到硬件方面了。不能完全确认就是硬件的问题。
你方便给我寄一套板子吗,我们这边进行一下测试。地址我可以私信给你。 -
@veye_xumm 可以的 私信 发给我下地址吧
-
@veye_xumm 你好 我们这边板子 发过去了。 你应该是收到了的吧?
-
@nb 是的,收到后我们研发会跟您联系具体事宜。
-
@veye_xumm 好的 感谢