是否可以通过Core Image处理(过滤)HDR图像?我找不到太多的文档,所以我想知道是否有人可能有答案。我知道在初始化CIContext
时可以使用RGBAh
进行工作空间计算,所以我认为如果我们可以使用浮点图像格式进行计算,那么应该有可能。通过核心图像的HDR图像?
什么,if这是不可能的,如果你想在iOS上产生HDR效果,是否是替代方案?
编辑:我想我会尽量做得更简洁。根据我的理解,可以通过钳位像素值来将HDR图像钳位并保存为.jpg,.png和其他图像格式。不过,我更感兴趣的是通过Core Image在尚未转换的HDR图像上进行色调映射。这个问题是用一个HDR图像编码一个CIImage,据推测是扩展名为.hdr。
编辑2:也许这将是有用的使用CGImageCreate
,以及CGDataProviderCreateWithFilename
?
虽然结合起来,但生成的文件不能以任何方式用于提供像素信息?也许我们在外部有这样的文件,因此我见过的.hdr扩展名在示例MATLAB代码中用于色调映射,不能简单地提供此文件并将生成的图像编码为CIImage?也许这不是Core Image在HDR图像上进行色调映射的目的吗?尽管在技术上是可行的,但使用他们的自定义过滤器。 –
@DavidSacco的第一个问题是,在iOS中,无法访问原始捕获的具有不同曝光的图像阵列。一旦处理完最终的HDR,它不保存源文件的像素信息,因为在技术上不可能将这些数据存储在3个RGB通道中。在iOS中,“HDR”标记的图像只是JPEG,已经使用不同曝光的多张照片进行处理。 – sleepwalkerfx
谢谢,是的,来自我自己的google-fu,这也是我所学到的。我想知道是否有任何新的iOS 10与.RAW图像有关的东西可能有所帮助。我其实也了解到HDR图像可以保存在浮点中。TIFF文件,其中可以保留高强度,只是如果用户想要使用色调映射,用户将不得不提供所述图像。通过选项'kCIContextWorkingFormat'还可以确保您的上下文是以浮点精度计算的。 –