通常的摄像头读取的数据都是YUV422格式的,如果想要支持数码变焦,我们需要对他进行缩放操作,当然具体点应该是放大操作,因为我们都是把采集到的图像的局部放大,称为数码变焦.
在测试过程中尝试了很多不同的方法,包括了Gdiplus, Opencv, Ippi 以及自己编写的基于YUV422的插值操作.
这里简单介绍下基于Gdiplus, Opencv和Ippi的缩放操作. Gdiplus和Opencv都只能在YUV444上操作,为此,我们需要将YUV422转换为YUV444,有了YUV422,YUV444很容易得到,速度也很快. 通过Gdiplus, Opencv对YUV444进行缩放,将缩放后的YUV444再转换为YUV422即可完成整个缩放过程. 而Ippi提供了YUV422上的缩放函数,可以直接进行缩放操作.
具体的缩放如下:
Gdiplus:
Opencv:
Ippi: