TI中文支持网
TI专业的中文技术问题搜集分享网站

DM368接1080i摄像机,图像上边有黑边

大家好,

我用的是DM368的开发板,之前接D1的摄像机,图像都是正常的,现在我们用的sony的1080i的摄像机,采集到的图像上边有黑色和绿色的色块,图像的右边也有黑边。

请问大家,这个是什么问题?我们把sony的摄像机直接接到电视上,是没有这个黑边的。

我又继续做了实验,我使用了v4l2_mmap_loopback,只是在LCD上回放,上边也会有绿色和黑色的条纹。

是capture要做什么设置吗?

 

Sheng Liu1:

D1和1080i图像的长宽比例不一样,因此显示1080i时会对图像resize,然后显示到电视上。1080i显示到4:3电视时会有上下部分填充不完整的现象。

如果你使用的demo支持1920×1080,那么可以接宽屏显示器来看显示效果;

或者需要在capture或者display的时候对图像进行resize来适合你的显示器;

在dmai目录下有个app是video_lookback_resize,你可以参考下。

peter li1:

回复 Sheng Liu1:

       /* Crop the image depending on requested image size */

       if (ioctl(hCapture->fd, VIDIOC_S_CROP, &crop) == -1) {

sony摄像机出来的视频确实是1920X1080的,我解码播放的时候也是1080P的。上边的绿条和黑线的问题,我已经解决了。

我把attrs->cropY 设置成48,cropHeight还是1080,这样就没有上边的黑边了,图像也没有失真。

但是,图像右边还是有8个像素的黑边,这个问题就麻烦了,不能这么解决了,因为cropX不能是负数。

不知道大家有什么建议没?

peter li1:

回复 peter li1:

补充说明下,这样改是有问题的。

if ((crop->c.left + crop->c.width > max_width) ||

   (crop->c.top + crop->c.height > max_height)) {

v4l2_err(&vpfe_dev->v4l2_dev, "Error in S_CROP"

" params, max_width = %d, max_height = %d\n",

max_width, max_height);

ret = -EINVAL;

goto unlock_out;

}

我把attrs->cropY 设置成48,那么 cAttrs.cropHeight就要设置成1080-48。

这样得到的结果,是整个图像拉伸了48个像素,虽然黑边没了,但是图像变形了。

看来问题的根源还不在这里。

我换了2个1080P的摄像机,都有这个问题,难道是tvp7002的设置有问题?

赞(0)
未经允许不得转载:TI中文支持网 » DM368接1080i摄像机,图像上边有黑边
分享到: 更多 (0)