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.

[参考译文] PROCESSOR-SDK-AM68A:请求使用 AF 功能的示例

Guru**** 2538960 points
Other Parts Discussed in Thread: AM68A

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

https://e2e.ti.com/support/sensors-group/sensors/f/sensors-forum/1329861/processor-sdk-am68a-request-an-example-to-use-an-af-feature

器件型号:PROCESSOR-SDK-AM68A
主题中讨论的其他器件:AM68A

您好!


我知道、TI H3A 系统支持 AF 功能。 但我找不到合适的信息来设置 AF。
您是否会提供使用 AF 功能的信息?
为什么我问,我们的系统有一个 MFZ(电动对焦和变焦)镜头来支持自动对焦功能. 它应该是实时的。

我试图设置 AF 的贝洛斯。 但似乎 AF 的 ROI 没有设定。 请检查我是否尝试了正确设置。  

我试过的东西:  

1.在"imx415_h3A_aewb_dcc.xml"中为 AF/ AEWB 配置了 ROI

   <h3a_aewb_dcc type="iss_h3a_grid_size">
                {
                       1,     // enable:   u8
                       2,     // mode:     u8

                    920,     // v_start:  u16
                    1600,     // h_start:  u16

                      32,     // v_size:   u8
                      64,     // h_size:   u8

                      10,     // v_count:  u8
                      10,     // h_count:  u8

                       2,     // v_skip:   u8
                       2,     // h_skip:   u8

                    1000,     // saturation_limit: u16

                       2,     // blk_win_numlines: u16
                    2158,     // blk_row_vpos:     u16

                       2,     // Sum Shift:   u8

                       0,     // ALaw_En:     u8
                       0,     // MedFilt_En:  u8
                }

2.   在"/edgeai-tiovx-modules/tiovx_viss_module.c"中将"h3a_aewb_af_mode"更改为"TIVX_VPAC_VISS_H3A_MODE_AF" src

static vx_status tiovx_viss_module_configure_params(vx_context context, TIOVXVISSModuleObj *obj)
{                                                                                         
    vx_status status = VX_SUCCESS;                                                              
                                                                                        
    SensorObj *sensorObj = obj->sensorObj;                                            
                                                                                     
    obj->params.sensor_dcc_id       = sensorObj->sensorParams.dccId;  

..........................
                                                                       
    //obj->params.h3a_aewb_af_mode = TIVX_VPAC_VISS_H3A_MODE_AEWB;             
    obj->params.h3a_aewb_af_mode = TIVX_VPAC_VISS_H3A_MODE_AF;      
..........................

3. 在/edgeai-gst-plugins/ext/tiovx/gsttiovxisp.c 中添加打印以检查 ROI

static gboolean                                                          
gst_tiovx_isp_postprocess (GstTIOVXMiso * miso)                          
{                                                                           
  GstTIOVXISP *self = NULL;                                                     
  GList *sink_pads_list = NULL;                                                 
  GList *l = NULL;                                                              
  gboolean ret = FALSE;                                                  
  struct v4l2_control control;                                        
  gchar *video_dev = NULL;                                                  
  vx_map_id h3a_buf_map_id;                                                  
  vx_map_id aewb_buf_map_id;                      
  gint i = 0;      

..........................  
  ti_2a_wrapper_ret = TI_2A_wrapper_process (&sink_pad->ti_2a_wrapper, &sink_pad->aewb_config, h3a_data, &sink_pad->sensor_in_data, ae_awb_result, &sink_pad->sensor_out_data);
  if (ti_2a_wrapper_ret) {
    GST_ERROR_OBJECT (self, "Unable to process TI 2A wrapper: %d",
    ti_2a_wrapper_ret);
    goto out;
  }
  GST_LOG_OBJECT (sink_pad, "Exposure time output from TI 2A library: %d",
    sink_pad->sensor_out_data.aePrms.exposureTime[0]);
  GST_LOG_OBJECT (sink_pad, "Analog gain output from TI 2A library: %d",
    sink_pad->sensor_out_data.aePrms.analogGain[0]);


  printf("H3A aewwin1_WINH:%d aewwin1_WINW:%d aewwin1_WINVC:%d, aewwin1_WINHC:%d\n", h3a_data->aew_config.aewwin1_WINH , h3a_data->aew_config.aewwin1_WINW , h3a_data->aew_config.aewwin1_WINVC , h3a_d
  printf("H3A aew_af_mode:%d channel_id:%d cpu_id:%d, size:%d\n", h3a_data->aew_af_mode, h3a_data->channel_id, h3a_data->cpu_id, h3a_data->size);
    
..........................  

打印:

H3A aewwin1_WINH:0 aewwin1_winw:0 aewwin1_WINVC:0、aewwin1_WINHC:0   => ROI 未设置
h3A aew_af_mode:1 channel_id:0 cpu_id:3、大小:2112

谢谢。  

张。

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

    尊敬的 Jang:

    为什么我问,我们的系统有一个 MFZ(电动对焦和变焦)镜头来支持自动对焦功能. 它应该是实时的。

    [/报价]

    个人而言、我尚未在 TDA4/AM68A 器件上使用 AF、而且我不熟悉 AF 透镜或 AF 算法。

    由于存在 H3A H/W 限制、因此 H3A-AF 和 H3A-AEWB 不能同时使用。
    也就是说、如果将 H3A-AF 用于输入帧、则 AE 和 AWB 将无法使用统计数据。

    1.在"imx415_h3A_aewb_dcc.xml"中为 AF/ AEWB 配置了 ROI

    [/报价]

    此配置仅适用于 AEWB。
    我们不支持 AF 的 DCC xml。  
    要设置 H3A-AF、必须在源代码中进行。
    有关 H3A-AF 详细信息、请参阅 AM62A TRM 中的"6.7.3.2.4.6 RAWFE H3A"。

    遗憾的是、我们没有任何 AF 算法参考或 AF 设置参考、因为 TI 没有 AF 经验、

    Unknown 说:
    H3A aewwin1_WINH:0 aewwin1_winw:0 aewwin1_WINVC:0、aewwin1_WINHC:0   =>没有设置 ROI
    [/报价]

    您知道上面这行内容是从哪个源文件打印的吗?
    这似乎是驱动程序中的问题、因为启用 H3A-AF 后、H3A-AEWB 无关紧要。

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

    尊敬的 Gang:  

    我想、AF 和 AEWB 在"imx415_H3A_aewb_DCC.xml"中共享相同的 ROI。  

    关于在您的评论下方、  

    您知道上面这行内容是从哪个源文件打印的吗?

    [张]

    我在"/edgeai-tiovx-modules/tiovx_viss_module.c"中将"obj->params.h3A_aewb_af_mode"从"TIVX_VPAC_VISS_H3A_MODE_AF"更改为"TIVX_VPAC_VISS_H3A_MODE_AF" src。

     我在/edgeai-gst-plugins/ext/tiovx/gsttiovxisp.c 中添加了"printf"来查看 ROI 设置。

    谢谢。  

    张。  

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

    我想、AF 和 AEWB 在"imx415_H3A_aewb_DCC.xml"中共享相同的 ROI。  

    [/报价]

    H3A-AF 和 H3A-AEWB 是分开的。

    , 我在/edgeai-gst-plugins/ext/tiovx/gsttiovxisp.c 中添加了"printf"以查看 ROI 设置。

    好的、谢谢!

    我没有意识到您使用 gstreamer。
    就像您启用 H3A-AF 时一样、没有对 H3A-AEWB 参数进行编程。

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

    感谢您的快速回复。

    我在 AM62A TRM 中为 H3A-AF 寻找"6.7.3.2.4.6 RAWFE H3A"。 但不容易找到。

    我会告诉我从何处可以获取关于 H3A-AF 的 AM62A TRM 中"6.7.3.2.4.6 RAWFE H3A"的信息(代码、文档)?

    谢谢。

    张。

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

    这里有一个拼写错误。
    我是指 AM68A TRM 中的"6.7.3.2.4.6 RAWFE H3A"。
    在 TRM 版本中、"6.7"是"视觉预处理加速器(VPAC)"。

    您可以在 TRM 中搜索部分名称"RAWFE H3A"。

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

    您好:Gang

    您:有 H3A H/W 限制、因此 H3A-AF 和 H3A-AEWB 不能同时使用。

    提问: H3A 硬件限制是什么?

    可以参考 AM62A TRM 中的"6.7.3.2.4.6 RAWFE H3A"了解 H3A-AF 详细信息。

    提问:我看了一下 RAWFE H3A,它描述了如何计算 AF 数据。 我们是否需要自己实施所有与 AF 相关的规范? 后续 SDK 版本是否会支持该功能?

    谢谢~

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

    您好、Quan:

    提问: H3A 硬件限制是什么?

    [/报价]

    这是一个硬件限制、无法为同一 VISS 输入图像帧启用 H3A-AE 和 H3A-AF。

    我们是否需要自己实施所有 AF 相关代码? 后续 SDK 版本是否支持该功能?

    据我所知、TI 之前没有 AF 算法的相关经验、也没有相关计划。
    您将不得不自己去做、或者从第三方那里获得。

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

    如果我只想获取 AF 统计信息、请使用检测当前屏幕的雾感。

    我能否将帧 N 设置为输出 H3A-AE、将帧 N+1设置为输出 H3A-AF、等等

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

    您好、Quan:

    是的、这可以从 H/W 的角度来实现、因为你可以逐帧重新编程 VISS。

    ,检测当前屏幕的雾感。

    您是指检测烟雾场景还是镜头脏/遮挡?

    请注意、H3A 的输入位深度限制为10位。