This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TDA4VM:VISS 节点:尝试从 viss 节点生成 RGB 图像

Guru**** 2549700 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1200270/tda4vm-viss-node-trying-to-produce-rgb-images-from-the-viss-node

器件型号:TDA4VM

您好!  

环境、我们正在使用->  08_00_00_12 -> https://www.ti.com/tool/download/PROCESSOR-SDK-RTOS-J721E/08.00.00.12

此-> https://e2e.ti.com/support/processors-group/processors/f/processors-forum/972208/tda4vm-tda4vm 上有一个主题

viss 节点文档中可以看到我们可以获取 RGB 图像。  

vissObj->params.sensor_dcc_id    = sensorObj->sensorParams.dccId;
vissObj->params.fcp[0].ee_mode          = 0;
vissObj->params.fcp[0].mux_output0      = 0;//TIVX_VPAC_VISS_MUX0_NV12_P12;//1;//TIVX_VPAC_VISS_MUX0_NV12_P12;
vissObj->params.fcp[0].mux_output1      = 0;//1;
vissObj->params.fcp[0].mux_output2      = TIVX_VPAC_VISS_MUX2_RED;
vissObj->params.fcp[0].mux_output3      = TIVX_VPAC_VISS_MUX3_GREEN;
vissObj->params.fcp[0].mux_output4      = TIVX_VPAC_VISS_MUX4_BLUE;
vissObj->params.h3a_in           = 3;
vissObj->params.h3a_aewb_af_mode = 0;
vissObj->params.fcp[0].chroma_mode      = 0;
vissObj->params.bypass_nsf4      = 0;
vissObj->params.enable_ctx       = 1;



vissObj->node = tivxVpacVissNode(
                                graph,
                                vissObj->config,
                                NULL,
                                NULL,
                                raw_image, NULL, NULL,
                                output_img_r, output_img_g, output_img_b,
                                h3a_stats, NULL, NULL, NULL);

当我们设置它并尝试在硬件上运行它时、我收到以下错误

App Init Done!
Graph create done!
VISS graph done!
AEWB graph done!
App Create Graph Done!
6895935.671125 s:  VX_ZONE_ERROR:[tivxAddKernelVpacVissValidate:694] Parameter 'output3' height should have value of -1330597712
6895935.671147 s:  VX_ZONE_ERROR:[ownGraphNodeKernelValidate:531] node kernel validate failed for kernel com.ti.hwa.vpac_viss at index 0
6895935.671153 s:  VX_ZONE_ERROR:[vxVerifyGraph:1930] Node kernel Validate failed
6895935.671160 s:  VX_ZONE_ERROR:[vxVerifyGraph:2098] Graph verify failed
App Run Graph Done!
Capture delete done!
VISS delete done!
AEWB delete done!

不确定此错误是否源于 viss 节点中的某个错误、或者我们是否出错。  

我们还使用 DCC 配置文件。 我们是否必须更改此文件以获取 RGB 图像而不是 nv12图像?

我们能否获得一些关于可能存在哪些错误的信息? 或者、您是否需要更多信息来向我们提供有关该方向的信息。  

谢谢你

Niranjan

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    有关从 VISS 获取 RGB 输出、请参阅下面的。

    https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1160452/tda4vm-the-single-camera-demo-code-for-rgb888-separate-3-color-planes-r-g-b-output-mode/4456341#4456341

    此致、

    Brijesh

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Brijesh:  

    我们已经完成了这条链路。 它表明、Vis 节点在生成 RGB 输出时似乎存在问题。 我看到为 SDK -8.4提供了一个补丁、是否可以为 SDK-8.0提供该补丁  

    我们的主要问题->
    我们从摄像头传感器获得原始图像(10位像素数据打包为16位数据格式)。 此原始文件将写入边缘设备上的磁盘。 同时、解压缩该原始文件以在目标上生成8位 nv12映像。 我们可以调用此 target_viss_img。  

    在 PC 上、我们使用去抖来解压缩原始文件。 我们稍后剪切这个图像并将其转换为8位。 我们调用此 pc_raw_img。  

    我们现在面临的问题是 target_viss_img 和 pc_raw_img 是完全不同的。 它们看起来相似、但直方图略有不同。 这种差异会导致算法运行不佳。 我们确实希望发现这种差异。 如果我们能够在 PC 上复制 viss 节点、我们也会很高兴。  

    为了找出这个问题,我们想要生成 r , g , b 图像,看看这是否可以帮助我们。 然而、获得 RGB 图像似乎是一个更大的问题。  

    第二次尝试、我们尝试获取12位 packed nv12映像。 我们弄清楚了如何解包小端字节序的12位打包数据。 但是、它的范围似乎是8位 nv12图像的4倍。 raw_8bit_img 的范围要大得多。  
    此外、我们的 nv12 12位图像没有颜色。 这可能是因为 DCC 被调谐以提供 nv12 8位图像。 我们需要研究对其进行 DCC 调优。  

    关键问题是、我们如何重现 viss 节点在 PC 上执行的操作? 我们应该采取什么方法? 在这方面的任何帮助都将是非常有帮助的

    谢谢你

    Niranjan

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    嗨、Niranjan:

    在 PC 上,我们使用借记解压缩原始文件。 我们稍后剪切这个图像并将其转换为8位。 我们调用此 pc_raw_img。  [/报价]

    在 PC 上、您可以获得直接去邮输出、但在实际硬件上、我们无法获得直接去邮输出。 交错输出通过 FCC、然后我们得到 NV12输出。

    我们现在面临的问题是 target_viss_img 和 pc_raw_img 根本不相同。 它们看起来相似、但直方图略有不同。 这种差异会导致算法运行不佳。 我们确实希望发现这种差异。 如果我们能够在 PC 上复制 viss 节点、我们也会很高兴。  [/报价]

    为了获取 VISS 和 PC 仿真的匹配输出、请确保所有 中间 VISS 子模块都配置得完全相同。 在 进行配置匹配后、您应该会得到精确匹配的输出。 没有其他方法、即使将 输出格式更改为 RGB、除非配置匹配、否则输出将不匹配。  

    此致、

    Brijesh

    [/quote]
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Brijesh:  

    很高兴知道我们可以获得相同的输出。  
    在我对此进行一些调查之前、有几个问题。  
    您能详细介绍什么是 FCC 吗? 我能获得一些相关文档吗? 或者您的意思是 FCP (Flex Color Processing)吗?  

    关于声明-"请确保所有 中间 VISS 子模块的配置完全相同"  
    我是否需要使用 DCC 工具对此进行检查? 我可以获得这方面的示例或一些文档吗? 如果没有文档,我应该查看哪些文件来了解 viss 节点的这一方面?  

    谢谢你

    Niranjan

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    嗨、Niranjan:

    是的、FCC 的意思是柔性色彩处理。  

    是的、您需要检查 DCC 文件、PC 和硬件模式中使用了相同的文件。  

    DCC 工具的文档在 DCC 工具中提供。  

    此致、

    Brijesh

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Brijesh:  

    我详细了解了 DCC 工具。 它似乎有很多功能,如颜色校正,噪声过滤,...  

    在我们的用例中、我们从摄像机获取 RAW 文件。 OpenCV 进行的简单去抖可提供足够好的图像。 不需要其他类型的处理。  
    我的问题是、如何调整 DCC 工具、以便以特定格式(类似于 OpenCV)对原始图像进行去抖?  

    谢谢你

    Niranjan

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    嗨、Niranjan:

    您可以看看 FCC 吗? FCC 只有很少几个模块、它位于 CFA 模块之后。 如需更多信息、请参阅 TRM/数据表。  

    在当前的 SW 中、不支持直接获取 CFA 输出。  

    此致、

    Brijesh