专栏底层软件J5全流程示例里的各种配置参数的疑问,PYM模块的疑问

J5全流程示例里的各种配置参数的疑问,PYM模块的疑问

已解决
XSXXH2024-01-29
268
13

最近在研究地平线J5开发板上调用摄像头运行oe包里的ai_forward_view_sample例子(:/home/xxx/horizon_j5_open_explorer_v1.1.60-py38_20230714/ddk/samples/ai_forward_view_sample)

相机连接如图所示。(上方:MAX96712+AR0233*4, 下方:MAX9296+AR0820)

提供了一份测试5路摄像头是否能正常工作的配置文件与执行脚本demo,配置文件与执行脚本在附件1中。demo运行5路摄像头正常,该项目直接使用自带的配置文件无法运行,

根据这个项目的官方配置文件修改部分配置后始终无法得到带检测框的视频画面,只能呈现出常规状态下的摄像头捕捉画面,没有检测框,就像相机普通拍照呈现的画面一样。模仿修改的配置文件如附件2所示。

1. 首先hb_j5dev.json
官方配置如下:

解串器的bus_num,以及第0号端口的相机bus_num为什么填0呢?有什么依据吗?

我进入J5板端系统的 dev看到 i2c-0, ,,,i2c-7 ,问题是我怎么知道bus_num我该填哪个数字?(demo里面的bus_num填了6)

2. 官方配置里的serial_addr,sensor_addr分别填了0x40,0x10,这有什么依据吗?是固定的吗? 相机demo配置里的serial_addr,sensor_addr填了0x41, 0x11. 那在这个项目里我该选哪个

3. Extra-mode demo配置里是7,该项目官方配置是6 ,我应该选填什么? config_index为什么是3072?Demo配置里config_index为0,我该怎么选填

4. Sensor_mode

(sensor 模式: 1-linear, 2-dol2, 3-dol3, 4-dol4, 5-pwl. ) 这里面的linear, dol2, dol3, dol4, pwl模式是什么意思啊,该怎么选呢,demo配置里是5 pwl模式也不知道什么意思。

vpm_config.json

5. Sched-mode   ISP工作模式tdmf模式是什么模式? J5连接了5路摄像头,4个ar0233 1个ar0820,但是只用到其中一路ar0233,其余4路摄像头不用,这种情况是不是只能选择 1.manual工作模式。

Hdr_mode里面的 linear/ native(pwl)....这些模式是怎么回事,该选那个

6. PYM部分的下采样层, 通过ds_roi_en按位使能,ds_roi_en=1,是只选择第0层,其余5层全部屏蔽吗,假设选取第0,1,2层的下采样层,ds_roi_en应该为7对吗

该项目官方只选择了 下采样的第0层,如图所示

他是 只能选择下采样层某一层输入到模型推理,还是可以选择多层下采样层输入到模型进行推理。如果我选择输入下采样层的第0,1,2层输入到模型推理,应该怎么改呢

是这样吗?

  input_tensor->sysMem[0].phyAddr =

      pyramid_message->pym_image_->roi_ds_[0].y_paddr + roi_ds_[1].y_paddr+

roi_ds_[2].y_paddr + y_offset;

 

  input_tensor->sysMem[0].virAddr =

      reinterpret_cast(

          pyramid_message->pym_image_->roi_ds_[0].y_vaddr+roi_ds_[1].y_vaddr+ roi_ds_[2].v_paddr ) +y_offset;


7.没有J5的系统软件SDK,只有预装好系统的J5开发板,这个J5系统软件SDK在哪里下载呢 
底层软件
征程5
评论3
0/1000
  • TROS.Enid
    Lv.1

    1.pym的各层数据是分开的,不会融合叠加在一起,接收到数据后用户自己选择某一个图层数据送入推理。

    2.你可以看看VPM的配置有没有将downscale其他层使能,根据你提供的信息 input int32_t width = pyramid_message->pym_image_->roi_ds_[0].width; index0取得0层的数据,取其他数据需要你将对应层使能,然后接收输入对的index。

    3.ds_roi_sel:源图像类型选择,原图层:0,bl层 :1,gs层:2。

    ds_roi_layer:选择donwscale层的源数据来源。

    4.请问你们有地平线征程5系统软件文档么

    2024-01-30
    0
    6
    • XSXXH回复TROS.Enid:

      地平线征程5系统软件文档?是J5开发板系统里面的文档吗?我没留意。除了官网算法工具链文档没看到关于这方面的文档。你说的那些文档是在开发板系统的文件路径吗?

      2024-01-30
      0
    • XSXXH回复TROS.Enid:

      看到有文章介绍【bl_en(0 31 0)线性基础层使能按 bit 位设置使能对应层,对应为设置为1则打开该层】 假设我使能ds的第0,1,2层,我应该将bl_en设置为7 对吧? 那推理部分代码inference_module.cc的输入张量应该怎么描述呢,叠加吗 源代码使能单层ds层【 input_tensor->sysMem[0].phyAddr = pyramid_message->pym_image_->roi_ds_[0].y_paddr + y_offset; input_tensor->sysMem[0].virAddr = reinterpret_cast( pyramid_message->pym_image_->roi_ds_[0].y_vaddr) +y_offset; input_tensor->sysMem[0].memSize = ALIGNED_16(aligned_width * valid_height); 】 1。那如果使能0,1,2层ds层呢,是直接叠加吗? input_tensor->sysMem[0].phyAddr = pyramid_message->pym_image_->roi_ds_[0].y_paddr+roi_ds_[1].y_paddr+roi_ds_[2].y_paddr+y_offset; 2. 把ds层送入推理模块,会不会因为宽高缩小为原来的一半,面积的缩小导致检测精度下降?要考虑超分辨率吗,有人这样问。这个例子是没有进行超分的,直接推理了。

      2024-01-30
      0
    • TROS.Enid回复TROS.Enid:

      你们有拿到,系统软件SDK吗?文档在里面有的。

      2024-02-01
      0
    • XSXXH回复TROS.Enid:

      没有系统软件SDK,只有预装好系统的J5开发板,这个系统软件SDK在哪里下载呢

      2024-02-01
      0
    • TROS.Assist回复TROS.Enid:

      请参考下面的帖子

      2024-02-05
      0
    • TROS.Assist回复TROS.Enid:

      请参考下面的帖子https://developer.horizon.auto/developerForum?fullPath=/home/community/bbsdetail?bid=542144913399324672

      2024-02-05
      0
  • TROS.Enid
    Lv.1

    1.pym的作用看文档html/j5_media_debug/pyramid/index.html。

    2.图片数据流向取决于你的pipeline配置,可以参看文档pipeline介绍,html/api/senario_sample/api_senario_sample_single_yuv.html。

    3.送入推理模块的数据根据用户自己pipeline的配置决定的,自己决定是否使能pym的各层数据,可以18层都使能,接收后自己再决定是否送入推理模块,这部分配置可以参考html/j5_media_debug/pyramid/j5_media_debug_pym_user_guide_introduction_to_configuration_parameters.html


    2024-01-29
    0
    4
    • XSXXH回复TROS.Enid:

      工程师你好,i请问你说的 /html/xxx/xxx 这些文档的网址是在哪里,麻烦告诉我下网址,我好点进去详细研究下这些文档

      2024-01-29
      0
    • XSXXH回复TROS.Enid:

      工程师你好,请问送入推理模块的pym各层数据,是融合在一起的吗?比如我一个摄像头,一路pipeline,全部使能这18层,他是每一层都处理,然后把每一层处理后的结果进行叠加得到最终融合后的结果吗?因为下采样层已经缩小图像了,有人认为,把经过下采样缩小的某一层送入推理模块可能因为图像面积小,导致检测结果不准,应该要考虑超分辨率。因此请问下,假设全部使能这18层,他是每一层都处理,然后把每一层处理后的结果进行叠加得到最终融合后的结果吗?

      2024-01-29
      0
    • XSXXH回复TROS.Enid:

      // prepare for input int32_t width = pyramid_message->pym_image_->roi_ds_[0].width; int32_t height = pyramid_message->pym_image_->roi_ds_[0].height; int32_t stride = pyramid_message->pym_image_->roi_ds_[0].stride; 在ai_forward_view_sample例子里面,推理模块似乎只接受了 downscale的第0层,宽高均为原图的一半,面积变为原来的1/4,因此有人认为,图像面积小了,要考虑超分辨率,请问如果都选择这些下采样层该怎么办,迷惑????

      2024-01-29
      0
    • XSXXH回复TROS.Enid:

      ai_forward_view_sample的vpm里ds部分的配置如下,除了第一个ds_roi_sel=1,ds_roi_layer=0,选择了从bl层的第0层数据,剩下的都是ds_roi_sel=0,ds_roi_layer=0,这是怎么回事,重复选了多次源图像src的第0层吗,"ds_roi": [ { "ds_roi_layer": 0, "ds_roi_sel": 1, "ds_roi_start_top": 0, "ds_roi_start_left": 0, "ds_roi_region_width": 960, "ds_roi_region_height": 540, "ds_roi_stride_y": 512, "ds_roi_stride_uv": 512, "ds_roi_out_width": 512, "ds_roi_out_height": 512 }, { "ds_roi_layer": 0, "ds_roi_sel": 0, "ds_roi_start_top": 20, "ds_roi_start_left": 16, "ds_roi_region_width": 900, "ds_roi_region_height": 600, "ds_roi_stride_y": 700, "ds_roi_stride_uv": 700, "ds_roi_out_width": 700, "ds_roi_out_height": 500 }, { "ds_roi_layer": 0, "ds_roi_sel": 0, "ds_roi_start_top": 8, "ds_roi_start_left": 48, "ds_roi_region_width": 720, "ds_roi_region_height": 480, "ds_roi_stride_y": 640, "ds_roi_stride_uv": 640, "ds_roi_out_width": 640, "ds_roi_out_height": 320 }, { "ds_roi_layer": 0, "ds_roi_sel": 0, "ds_roi_start_top": 18, "ds_roi_start_left": 24, "ds_roi_region_width": 520, "ds_roi_region_height": 450, "ds_roi_stride_y": 320, "ds_roi_stride_uv": 320, "ds_roi_out_width": 320, "ds_roi_out_height": 160 }, { "ds_roi_layer": 0, "ds_roi_sel": 0, "ds_roi_start_top": 0, "ds_roi_start_left": 0, "ds_roi_region_width": 520, "ds_roi_region_height": 450, "ds_roi_stride_y": 512, "ds_roi_stride_uv": 512, "ds_roi_out_width": 512, "ds_roi_out_height": 240 }, { "ds_roi_layer": 0, "ds_roi_sel": 0, "ds_roi_start_top": 0, "ds_roi_start_left": 10, "ds_roi_region_width": 520, "ds_roi_region_height": 450, "ds_roi_stride_y": 122, "ds_roi_stride_uv": 122, "ds_roi_out_width": 122, "ds_roi_out_height": 32 }

      2024-01-29
      0
  • TROS.Enid
    Lv.1

    内部分析中



    2024-01-29
    0
    0