主题中讨论的其他器件: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
谢谢。
张。