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

提前致谢

最佳答案

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

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);
}


干杯

关于iphone - 如何将夜视滤镜应用于AVCaptureSessionPreviewLayer?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18647470/

10-16 04:39