专栏底层软件ov x8b发送 rggb raw12格式图像数据,hbplayer图像非常绿

ov x8b发送 rggb raw12格式图像数据,hbplayer图像非常绿

已解决
szc2024-11-12
133
45

用户您好,请详细描述您所遇到的问题,详细的描述有助于帮助我们快速定位,解决问题~Thanks♪(・ω・)ノ

  1. 硬件获取渠道及型号:立昇智能科技提供的J5 SOM EDK
  2.  系统镜像版本:root@j5dvb:~# cat /etc/versionmipi@mipi debug 20231219-124328
  3.  问题模块:vpm4.

  4. 问题描述:       为了避开敏感词汇, ov x 8b 中间加了空格

ov x8b发送 rggb raw12格式图像数据,hbplayer图像显示非常绿。具体图像可以查看附件。配置的 calib_lname 是 lib_x8bRGGB_pwl12_PH_Fov120.so 。

这个需要怎么配置可以没有色差。或者有 lib_x8bRGGB_pwl12_PH_Fov120.so 的源代码吗,需要怎么修改。
底层软件
征程5
评论1
0/1000
  • 费小财
    Lv.5

    你这个看着还是Bayer order配置不对,你那边可以改这个参数吗,或者发个raw过来看看

    2024-11-14
    0
    44
    • szc回复费小财:

      怎么修改 Bayer order? 不会修改。 另外hbplayer无法保存raw,不知道为什么

      2024-11-20
      0
    • 费小财回复szc:

      可以先跑起来程序后,动态直接改下寄存器的,dump 图的话,你跑的是哪个程序的

      2024-11-20
      0
    • szc回复费小财:
      怎么动态修改寄存器。是运行 sh server_isp0_8000.sh, 然后 访问 http://192.168.1.10:8000/,在control tool中修改吗。但是没有找到bayer order。
      是在 hbplayer 中保存raw,无法勾选界面的save_raw. hbplayer 版本是v2.07.01
      2024-11-20
      0
    • 费小财回复szc:

      你直接改寄存器吧 基地址 + 0xe018 跑起来后直接写

      2024-11-20
      0
    • 费小财回复szc:

      最好是dump一个raw过来,分析是最快的

      2024-11-20
      0
    • szc回复费小财:
      我不知道怎么操作。能否给下详细的操作步骤。
      bayer order 寄存器是地平线平台上的寄存器,不是sensor的寄存器吧。
      基地址怎么获取呢?写什么值呢。是不是通过类似的命令: i2ctransfer -f -y 1 w7@基地址 0xe0 0x18 0x04 0x0 0x0 0x0 0x1去修改吗。

      怎么dump 一个raw呢?能否给下具体的操作步骤。谢谢
      2024-11-20
      0
    • 费小财回复szc:

      你的程序是怎么跑的,是跑我们提供的sample吗

      2024-11-20
      0
    • szc回复费小财:
      是你们提供的sample。
      cd /app/bin/tuning_tool
      sh run_tuning.sh
      然后选择ovx8b_rggb 再选择pwl12_ph_fov120
      sensor接在rx0, i2c bus 是1
      2024-11-20
      0
    • 费小财回复szc:
      [39.717748][Tuning]:[isp_sensor_tool][.766]hb_cam_init success [39.723816][Tuning]:[isp scanf thread][187]preess scanf [1-5] to dump 2 [53.532472][Tuning]:[isp_scanf_thread][187]press scanf [1-5] to dump [53.565656][Tuning]:[isp_dump_func][289]yuv frame id= 414 [53.565672][Tuning]:[isp_dump_func][290]size = 8294400 [53.599000][Tuning]:[isp_dump_func][289]yuv frame id :415 [53.599012][Tuning]:[isp dump func][290]size = 8294400
      跑的过程中敲1 2 3 4 5 分别代表dump 1 2 3 4 5帧
      2024-11-20
      0
    • szc回复费小财:
      是在 执行 sh run_tuning.sh 命令中的窗口中输入 1 2 3 4 5吧。但是没有dump log打印。raw文件会dump到哪个目录中呢
      ===== hp_file:/system/etc/vio_tool/dump_config.json ===== sleeptimes:2147483647 ---sensor_mode_config_init_nano--end--- [16:52:53]init_process[787] viomonitor L: start yuv process! [16:52:53]dump_server_thread_start[287] viomonitor L: wait new socket connect. [16:52:53]send_yuvdata_pic_info[136] viomonitor L: send_data error, close fd! [16:52:53]send_yuvdata_pic_info[136] viomonitor L: send_data error, close fd! [16:52:53]send_yuvdata_pic_info[136] viomonitor L: send_data error, close fd! [16:52:53]dump_server_thread_start[287] viomonitor L: wait new socket connect. [16:52:53]server_thread_client_process[221] viomonitor L: read success, len = 24
      1
      2
      3
      4
      5
      2024-11-20
      0
    • 费小财回复szc:

      才发现你是J5的环境,J5不支持的,你跑的是isp0还是isp1的,我给你个基地址试试吧

      2024-11-20
      0
    • szc回复费小财:

      isp0,同时给下具体的命令吧。我在培训资料中没有看到这方面的内容。谢谢

      2024-11-20
      0
    • 费小财回复szc:

      devmem 470Ce018 先读下看是多少 运行期读

      2024-11-20
      0
    • szc回复费小财:
      读出来结果如下,值会动态变的。

      root@j5dvb:/# devmem 0x470Ce018
      0x00000000
      root@j5dvb:/# devmem 0x470Ce018
      0x00000003
      root@j5dvb:/# devmem 0x470Ce018
      0x00000003
      root@j5dvb:/# devmem 0x470Ce018
      0x00000303
      root@j5dvb:/# devmem 0x470Ce018
      0x00000003
      root@j5dvb:/# devmem 0x470Ce018
      0x00000003
      root@j5dvb:/# devmem 0x470Ce018
      0x00000102
      root@j5dvb:/# devmem 0x470Ce018
      0x00000003
      root@j5dvb:/# devmem 0x470Ce018
      0x00000003
      root@j5dvb:/# devmem 0x470Ce018
      0x00000003
      root@j5dvb:/# devmem 0x470Ce018
      0x00000000
      root@j5dvb:/# devmem 0x470Ce018
      0x00000003
      2024-11-20
      0
    • 费小财回复szc:

      cat /proc/hw_isp ,发出来看看

      2024-11-20
      0
    • szc回复费小财:
      root@j5dvb:/# cat /proc/hb_isp
      fw_ctx_count active inactive
      817
      dev_sched_mode
      tdmf
      ---------------------------------------------------------------------------------------------- safety_slots counter 10s/counter
      enable 53476 308
      ---------------------------------------------------------------------------------------------- isp_pipe pipeline_id base_litmmu base_phy 0 0 0xc5397000 0xc5397000 isp_pipe usecase mode s_Width s_Height frame_rate 0 local native 3840 2160 30 isp_pipe axi_output stream_output 0 yuv420 disable

      2024-11-20
      0
    • 费小财回复szc:

      数据变是因为这个跑了safety slot,那你要读 0xc5397000+e018

      2024-11-20
      0
    • szc回复费小财:
      root@j5dvb:/# devmem 0xc53a5018
      0x00000003
      root@j5dvb:/# devmem 0xc53a5018
      0x00000003
      root@j5dvb:/# devmem 0xc53a5018
      0x00000003
      2024-11-20
      0
    • szc回复szc:
      执行命令 devmem 0xc53a5018 80x00000000 ,颜色变成青色。如下图


      执行命令devmem 0xc53a5018 80x00000001 ,颜色变成梅红。 如下图

      寄存器值3是绿色。修改其他值后,颜色就是这三种。看上去就是最低两个bit位有效果。但是不会变成正常颜色
      2024-11-20
      0
    • 费小财回复szc:

      2的值呢

      2024-11-20
      0
    • szc回复费小财:

      2的值,颜色也是梅红,和值1是一样的

      2024-11-20
      0
    • 费小财回复szc:

      你的模组之前有tuning过吗,这个库是拿其他的模组的吗

      2024-11-20
      0
    • szc回复费小财:

      我的模组是ovx8b,从森云和立昇(从立昇买的地平线soc开发板)都有买过,点亮效果一样,都是绿色。不确定有没有tuning过。测试用例的lib_x8bRGGB_pwl12_PH_Fov120.so就是ovx8b的,不是其他模组

      2024-11-20
      0
    • 费小财回复szc:

      你在板子里面找下,看看还有没有其他的库,这个看上去是库的问题了,如果要解决了的话就要tuning了

      2024-11-21
      0
    • szc回复费小财:
      用lib_ar0820RGGB_pwl12_WS_Fov120.so ,图像好一些。但是亮的地方还是很绿。
      我用 /system/etc/cam/ 中文件 ar0820RGGB_pwl12_WS_Fov120_dynamic.json和 ar0820RGGB_pwl12_WS_Fov120_static.json , 去编译生成 lib_ar0820RGGB_pwl12_WS_Fov120.so 。然后比较和x8bRGGB_pwl12_PH_Fov120_static.json、 x8bRGGB_pwl12_PH_Fov120_dynamic.json差异。逐步修改,看下是什么导致的。
      但是编译生成的 lib_ar0820RGGB_pwl12_WS_Fov120.so ,会导致无法出图,有下面的错误log。好像是buffer没有释放,不知道为什么。
      [ 2990.112399] vps mipi_dev0 stl: start done
      [ 2990.210445] [ISP_HW0][WARN] [FW_GENERIC] acamera_isp_ctx.c: 234:id(0), buf0_status(1), buf1_status(1),frameid = 4
      [ 2990.243779] [ISP_HW0][WARN] [FW_GENERIC] acamera_isp_ctx.c: 234:id(0), buf0_status(1), buf1_status(1),frameid = 5
      [ 2990.275741] [S0][G1]pym_set_group_instance down fail(-62)
      [ 2990.275783] pym_set_subdev_config enable cnt > 1, please check it
      [ 2990.275825] [ISP_HW0][WARN] [FW_GENERIC] interlock.c: 166:slot_get_free_node slot_id = 0!
      [ 2990.277089] [ISP_HW0][WARN] [FW_GENERIC] acamera_isp_ctx.c: 234:id(0), buf0_status(1), buf1_status(4),frameid = 6
      2024-11-21
      0
    • szc:
      编译方法是
      把 ar0820RGGB_pwl12_WS_Fov120_dynamic.json和 ar0820RGGB_pwl12_WS_Fov120_static.json 放到~/zhichao/dpx/horizon-dev-J5-0810/hbre/libisp/j5/tuning/caldata/generate_lib 中,然后执行下面的命令

      cd ~/zhichao/dpx/horizon-dev-J5-0810/build

      cd build

      source ./envsetup.sh

      lunch 5

      cd ~/zhichao/dpx/horizon-dev-J5-0810/hbre/libisp/j5/tuning/caldata/generate_lib
      make
      2024-11-21
      0
    • 费小财回复szc:

      这个不是buffer没释放,而是改完后 ISP不工作,导致buffer一直是filled状态就做不了新帧了

      2024-11-21
      0
    • 费小财回复szc:

      编译看着没问题的

      2024-11-21
      0
    • szc回复费小财:
      你们是怎么编译生成 lib_ar0820RGGB_pwl12_WS_Fov120.so ?我用 /system/etc/cam/ lib_ar0820RGGB_pwl12_WS_Fov120.so 是可以出图的,但是用自己编译的 lib_ar0820RGGB_pwl12_WS_Fov120.so 就有上面的错误,无法出图。
      2024-11-21
      0
    • 费小财回复szc:

      编译看着是没问题的,这个问题最好是能dump一张raw过来 分析下的

      2024-11-21
      0
    • 费小财回复szc:

      另外你不加载库,试试看看图片是啥样的

      2024-11-21
      0
    • szc回复费小财:
      我在hbplayer上无法保存raw。 hbplayer 无法勾选save_raw. 能否给下dump的操作步骤,和配置。
      另外我修改vio_tool目录下dump_config.json, 配置 raw_enable 为1,也 无法勾选save_raw 。只是执行命令的界面上多了打印 [16:52:53]get_raw_data[237] viomonitor L: ----isp--get raw success, num_planes 2---------。

      不加载库,是非常暗的梅红色。
      2024-11-21
      0
    • 费小财回复szc:

      dumpraw的话要改 vpm json的文件,把isp的output加上raw 就可以dump,但是看上去你的参数好像选择的不对的, sh run_tuning.sh的参数你都组合的试试看

      2024-11-21
      0
    • szc回复费小财:
      能否给下vpm json文件中加raw的具体命令?我在其他用例中没有看到类似raw的配置命令。
      如果要加,是加在下面这段中吗?其他的组合已经尝试过,不是绿就是红。
      "pipeline0": { "isp": { "hw_id":0, "ctx_id": 0, "sched_mode":1, "hdr_mode": 1, "width": 3840, "height": 2160, "frame_rate": 30, "input_crop_enable": 0, "input_crop_x": 0, "input_crop_y": 0, "input_crop_width": 0, "input_crop_height": 0, "output_crop_enable": 0, "output_crop_x": 0, "output_crop_y": 0, "output_crop_width": 0, "output_crop_height": 0, "isp_stream_output_format": 1, "isp_dma_output_format": 8, "calib_mode": 1, "calib_lname": "/system/etc/cam/lib_ar0820RGGB_pwl12_WS_Fov120.so", "isp_algo_state": 1 },
      2024-11-21
      0
    • szc回复szc:

      能否给下vpm json文件中加raw的具体命令?

      2024-11-26
      0
    • 费小财回复szc:

      "isp_dma_output_format": 8 改成12,就可以通过hb player dump了

      2024-11-26
      0
    • szc回复费小财:
      改成12后,hbplayer收到raw了,raw_frameID数字在增长,但是没有dump出来。 hbplayerdump配置参见下面的图

      2024-11-26
      0
    • 费小财回复szc:

      勾选 save raw 存不下来吗

      2024-11-26
      0
    • szc回复费小财:

      单击复选框,无法选中。就是不能勾选save raw。不知道什么原因

      2024-11-26
      0
    • 费小财回复szc:

      channelid不是0 吗,另外这个是raw12的,不是8

      2024-11-26
      0
    • szc回复费小财:

      channelid改成0 ,pixellength 改成pixel 12. 还是无法勾选 save_raw复选框。你有新版本的hbplayer下载链接吗。我换个版本试试。

      2024-11-27
      0
    • 费小财回复szc:

      你之前是从哪里获取的,我这边也很久没试过了

      2024-11-27
      0
    • szc回复费小财:

      我终于获取到raw文件了。原来是要先在下面的raw_num文本框中输入要保存的个数,才能选中上面的复选框。回复中无法上传文件。我把这个帖子先关闭了。重新开个帖子上传raw文件。

      2024-11-27
      0
    • 费小财回复szc:

      好的好的

      2024-11-27
      0