3

关于yuv420数据读取的问题

目前,y数据可以成功读取出来,就是uv数据出问题。出现的图片有些纵向压缩一半,不知道怎么回事,我调试代码,感觉没有错哈!代码如下:

    pdata=ive_420_img->pu8VirAddr[1];
        qdata=ive_444_img->pu8VirAddr[1];
        for(HI_U16 i=0;i<ive_420_img->u16Height;i++)
        {

            for(HI_U16 j=0;j<ive_420_img->u16Stride[0];j++)
            {

                y_index=i*ive_420_img->u16Stride[0]+j;
                uv_index=(i>>1)*(ive_420_img->u16Stride[0]>>1)+(j>>1);

                qdata[y_index]=pdata[uv_index];

            }

        }


上面代码的意思是,将YUV420转化为YUV444,其中pdata直接指向的是420的U数据(源数据),qdata指向的是444的U数据(目的数据)。我用opencv显示U分量数据,结果见下:

(对不起图像传不上去:纵向压缩:正确转化后的坐标为(x,y),但是目前却显示在了(x,y/2)的位置,图像的分辨率不变,其余部分是以灰色填充的。大家帮忙分析一下什么问题?

查看全部
bendangth
bendangth
2015/07/31 03:13
  • 图片
  • yuv
  • 420 444
  • 点赞
  • 收藏
  • 回答
    私信

2个回复