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:CSI 在 VISION_APPS 中捕获错误的图像、包括 single_cam 和 multi_cam 示例

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1008125/tda4vm-csi-capture-wrong-images-in-vision_apps-both-single_cam-and-multi_cam-example

器件型号:TDA4VM

您好、TI 专家:

我们使用连接到 TDA4 (CSI1)的 MAX9286解串器来捕获四个摄像头。  我们已经配置了 MAX9286并获得了正确的寄存器 STAUTS (Framesync 锁定、Vsync 锁定)、输出 CSI 数据类型为 YUV422-8Bit。 但是、当在 VISION_APPS 中运行 single_cam 或 multi_cam 示例时、我们得到了错误的图像。 (版本7.2 SDK、传感器为960P 25fps)

根据 e2e 上的其他线程、我们编辑代码:

Fullscreen
1
2
3
4
5
6
7
8
9
10
/* Config initialization */
tivx_capture_params_init(&local_capture_config);
local_capture_config.numInst = 1U;
local_capture_config.numCh = 1U;
local_capture_config.instId[CAPT_INST_ID] = 1;//CAPT_INST_ID;
local_capture_config.instCfg[CAPT_INST_ID].enableCsiv2p0Support = (uint32_t)vx_true_e;
local_capture_config.instCfg[CAPT_INST_ID].numDataLanes =
sensorParams.sensorInfo.numDataLanes;
local_capture_config.chInstMap[CAPT_INST_ID] = 1U;
local_capture_config.instCfg[CAPT_INST_ID].laneBandSpeed = TIVX_CAPTURE_LANE_BAND_SPEED_560_TO_640_MBPS;
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

我们只有在运行 single_cam 时才会进行警告、并且帧正在计数、但帧速率错误。 (应为25fps,但小于25fps)

Fullscreen
1
[MCU2_0]· ·3637.109145 s:· VX_ZONE_WARNING:[tivxCaptureSetTimeout:759]· CAPTURE: WARNING: Error frame not provided using tivxCaptureRegisterErrorFrame, defaulting to waiting forever !!!
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

我们还读取了 Phy 寄存器:

Fullscreen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Read at address 0x04514020 (0xffffbb084020): 0x00000002
Read at address 0x04514028 (0xffffaef94028): 0x00000000
Read at address 0x04514048 (0xffffb8634048): 0x00333306
Read at address 0x04514040 (0xffff8ecc4040): 0x0001F01F
Read at address 0x0451404C (0xffffb64d404c): 0x00000000
Read at address 0x04514050 (0xffff99ee4050): 0x00000000
Read at address 0x04514074 (0xffff8baf4074): 0x00000000
Read at address 0x04514100 (0xffff81c64100): 0x00000001
Read at address 0x04514104 (0xffff897a4104): 0x80000112
Read at address 0x04514200 (0xffffb6844200): 0x00000000
Read at address 0x04514204 (0xffff869f4204): 0x00000000
Read at address 0x04514300 (0xffffb0a94300): 0x00000000
Read at address 0x04514304 (0xffff8e414304): 0x00000100
Read at address 0x04514400 (0xffffb4804400): 0x00000000
Read at address 0x04514404 (0xffffaaad4404): 0x00000100
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

看起来在 Phy 中是正确的。

我们错过了什么吗? 谢谢你

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

    您好、Xiang Zhao、

    请在下方查看?

    1、示例中有一个用于在 YUV 模式下配置 csirx 的标志、 您能否检查此标志是否设置为 true?

    2、laneBandSpeed 设置为560至640Mbps、请查看是否正确

    3、请检查通道数量、通道排序。

    4、确保解串器输出仅在调用 vxVerifyGraph 后启用。  

    此致、

    Brijesh

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

    您好!感谢您的回复!

    1、“app_single_cam_main.c”中的函数“app_create_graph”中的标记是否被称为“yuV_cam_input”? 我检查了该标志是否设置为 true

    2、laneBandSpeed 可能出错,因为 PCLK 是84MHz,它应该是672Mbps? 如果数据类型是 YUV422-8位并使用4通道和4通道。 我尝试 使用 TIVX_CAPTURE_RAM_BAD_SPED_640_TO_720_Mbps、但问题仍然存在。

    3、通道数和订购均正确。 (4通道)

    4、是的、 我确信在调用 vxVerifyGraph 之后已启用解串器 CSI 输出。

    我现在取得了进展:

    我更改了 max9286,的一些寄存器并获得了图像、但看起来仍然不正确、 可能是颜色空间问题?我在:下上传了一个 vedio

    e2e.ti.com/.../IMG_5F00_3343.MOV.zip

    这意味着 mipi 配置是正确的?

    这可能是什么问题?

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

    您好!

    很遗憾、我无法播放此视频、您能否以不同的格式分享? 或者、您能否共享一 个捕获的图像?  

    此致、

    Brijesh

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

    您好!  

    我上传了、请检查、谢谢。

    e2e.ti.com/.../images.rar

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

    您好!

    好的、捕获的图像没有正确的值。  

    首先要解决的问题是  、您能否检查解串器、它以何种信道速度输出数据? 在 CSIRX 中应配置相同的配置。 如果没有此 配置、捕获的数据可能不正确。

    此致、

    Brijesh

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

    您好,

    谢谢、我 将 检查 一下。 但首先、我对"laneBandSpeed"有疑问。 该变量是指四个通道的总速率还是每个通道的速率?

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

    laneBandSpeed 是每个通道的速率。  

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

    您好、Brijesh、

    我认为我  已正确设置"laneBandSpeed"(TIVX_CAPTURE_RAW_BAD_SPEED_480_TO_560_Mbps)。 Max9286使用4个通道、PCLK 为84MHz。对于速率、960P 25fps YUV422-8位、它大约为500Mbps? 我是对的吗?  

    顺便说一下、我尝试将  laneBandSpeed 范围从  TIVX_CAPTURE_RAW_BAD_SPEED_280_TO_320_Mbps 设置为 TIVX_CAPTURE_LANK_BAD_SPEED_800_TO_880_Mbps、捕获的图像看起来是相同的。fps 是正确的。

    如果我设置正确、我还能检查什么?

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

    您好、Xiang Zhao、

    通道速度和像素时钟有两种不同的设置。 您能否检查 max286规范/设置 以查看其中配置了什么通道输出速度。  

    此致、

    Brijesh

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

    您好 、Brijesh、

    感谢你的答复。  我已确认通道速度为672Mbps

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

    您好、Xiang Zhao、

    好的、您可以在 CSIRX 配置中设置此通道速度吗?  

    您能否检查数据类型是否与 解串器发送的数据类型匹配?

    此致、

    Brijesh

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

    您好 Brijesh,

    感谢你的帮助。 我们取得了一些进展。 现在颜色问题已经解决了、因为我们在 max9286中调整了一些寄存器。

    只剩下一个问题。  图片中有几行错误。 我上传视频。  

    e2e.ti.com/.../video.zip

    当我运行 multi_cam 示例时、fps 并不正确。 但是、当我运行 single_cam 示例时是正确的。

    此致、

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

    赵好、

    我只能看到单个凸轮输出的视频。 我在 捕获的帧的中间看到三个水平条。 我仍然对 maxim 和/或摄像头 配置有疑问。 摄像头中似乎存在一些 hs/vs 问题。

    此致、

    Brijesh

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

    您好、Brijesh、

    到目前为止、我们可以正确地捕获四个摄像头的图像、然后为一个摄像头剂量。 但我仍有疑问。

    解串器具有两种输出模式、如下图所示。

    当我使用 Mode1 (4W*H、VC=0)时,它就可以工作。 但是当 我使用 mode2(W*4h, VC=0-3)时,捕获的图像不正确

     使用 Mode1(4W*H)运行 single_cam 示例时,我得到了正确的图像,并保存了以下图片:

    但,μ A

    当我使用 mode2(W*4h),捕获的图像与下图类似。

    我使用 multi_cam 示例、因为它配置了4 个虚拟通道  

    我认为解串器配置正确。

    在 multi_cam 中还需要配置什么? 或者 我错过了什么吗?

    此致、

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

    赵好、

    我仍然对摄像头/解串器配置有疑问。 它无法正确发送完整的帧。 解串器是否 在  mode2 (W*4h、VC=0-3)中正确发送 VC? 如果它混合、则输出看起来像这样。

    此致、

    Brijesh

x 出现错误。请重试或与管理员联系。