如何将夜视滤镜应用于AVCaptureSession PreviewLayer?

时间:2013-09-05 23:22:10

标签: iphone filter core-image

我是iphone编程的新手,想知道如何通过Core Image应用过滤器。此外,核心图像过滤器列表中的哪个过滤器是夜视,因为我在文档中看到了列表,但无法确定哪个过滤器看起来像夜视。

提前致谢

1 个答案:

答案 0 :(得分:1)

您可以简单地将图像转换为YCbCr色彩空间,并在要显示的RGB图像中使用Y通道值而不是绿色通道。同样建议here。最后,您有一个代表更多绿色像素的图像,而不是更亮的图像,反之亦然。虽然在夜视图像中,最亮的像素是白色的,但这样你就会有更多的绿色像素!我假设您可以使用Y值的非线性函数来获得R和B值以达到此属性。例如:

for(int i=0;i<image.size;i+=3)
{
RGBImage[i] = YCbCrImage[i];
RGBImage[i+1] = 256*log(YCbCrImage[i]+1);
RGBImage[i+2] = 256*log(YCbCrImage[i]+1);
}

干杯