Deepika Makhija wrote:
Hi All,

I am facing image corruption problem while resizing 960*1080 image into different resolution like 256*384, 256*192, 192*288, 512*384
Input is 1920*1080 image jpeg image which is decoded and than resized to 512*384 resolution.
DM355 ipipe can only process 1344 per line once so I split the image into two parts each of 960*1080. Resize operation is performed on each part and those buffers are combined.
Below is snapshot of input and output image.

Snapshot of input and output image
Image corruption behavior is not at all certain. This corruption occurs while processing n number of images in loop.

Below is my ipipe module configurations.
int i_width = 960;
int i_height = 1080;
int
o_width = 256;
int _height = 384;
ipipeParamStruct.ipipeif_param.source = SDRAM_YUV;
ipipeParamStruct.ipipeif_param.hnum = i_width;
ipipeParamStruct.ipipeif_param.vnum = i_height;
ipipeParamStruct.ipipeif_param.glob_hor_size = i_width + 8;
ipipeParamStruct.ipipeif_param.glob_ver_size = i_height + 10;
ipipeParamStruct.ipipeif_param.adofs = ((i_width * 2 + 31) & (~31));
ipipeParamStruct.ipipeif_param.rsz = 16;
ipipeParamStruct.ipipeif_param.clk_div = DIVIDE_SIXTH;
ipipeParamStruct.ipipe_dpaths_fmt = data_fmt;
ipipeParamStruct.ipipe_vst = 0;
ipipeParamStruct.ipipe_hst = 0;
ipipeParamStruct.ipipe_vsz = i_height - 1;
ipipeParamStruct.ipipe_hsz = i_width - 1;
ipipeParamStruct.rsz_rsc_param[0].rsz_h_dif = (i_width * 256 / o_width);
ipipeParamStruct.rsz_rsc_param[0].rsz_v_dif =
                                                ((i_height) * 256 / o_height);
ipipeParamStruct.rsz_rsc_param[0].rsz_o_hsz = o_width - 1;
ipipeParamStruct.rsz_rsc_param[0].rsz_o_vsz = o_height - 1;
ipipeParamStruct.ext_mem_param[0].rsz_sdr_oft = ((o_width * 2 + 31) & (~31));
ipipeParamStruct.ext_mem_param[0].rsz_sdr_ptr_e = o_height;
ipipeParamStruct.rsz_en[0] = ENABLE;
ipipeParamStruct.rsz_en[1] = DISABLE;
ipipeParamStruct.prefilter.pre_en = DISABLE;
ipipeParamStruct.false_color_suppresion.fcs_en = DISABLE;
ipipeParamStruct.edge_enhancer.yee_emf = DISABLE;
ipipeParamStruct.rgb2yuv.yuv_adj_ctr = 0x20;
ipipeParamStruct.wb.wb2_dgn = 0x200;
ipipeParamStruct.wb.wb2_wg_r = 0x110;
ipipeParamStruct.wb.wb2_wg_gr = 0xf0;
ipipeParamStruct.wb.wb2_wg_gb = 0xf0;
ipipeParamStruct.wb.wb2_wg_b = 0x130;
According to my observation, there is some problem of HSYNC and VSYNC i.e glob_hor_size and glob_ver_size still I am not sure of it and even don't know what should be value of glob_hor_size and glob_ver_size in my case.

Any kind of help will be appreciated.

Thanks & Regards,
Deepika
  
_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source

Reply via email to