ios - 您可以在 iOS 上保存编辑后的 ​​RAW .dng 文件吗?

标签 ios ios10 cifilter dng

我想构建一个 iOS 10 应用程序,让您拍摄 RAW (.dng) 图像,对其进行编辑,然后将编辑后的 ​​.dng 文件保存到相机胶卷。通过结合 Apple 2016 年“AVCamManual”和“RawExpose”示例应用程序的代码,我得到了一个包含 CIFilter 的地步RAW 图像以及编辑。

但是,我不知道如何将生成的 CIImage 作为 .dng 文件保存到相机胶卷。这可能吗?

最佳答案

RAW 文件是直接从相机传感器输出的“原始”文件,因此获取它的唯一方法是直接从相机获取。处理完 RAW 文件后,根据定义,您所拥有的就不再是“原始”文件,因此您无法返回到 RAW。

延伸隐喻presented at WWDC where they introduced RAW photography ... RAW 文件就像蛋糕的配料。当您使用 Core Image 从 RAW 文件创建可 View 像时,您就是在烘烤蛋糕。 (如前所述,有许多不同的方法可以用相同的原料烘烤蛋糕,对应于处理 RAW 的可能选项。)但是你不能取消烘烤蛋糕——没有回到原始原料的方法,更不用说了一种以某种方式保留处理结果的方法。

因此,存储从 RAW 原始图像处理后的图像的唯一方法是以位图图像格式保存处理后的图像。 (如果您不介意有损压缩,请使用 JPEG,如果您需要无损压缩,请使用 PNG 或 TIFF 等)

如果您正在将编辑结果写入 PHPhotoLibrary ,使用 JPEG(如果您愿意,可以使用高质量/较少压缩),照片会将您的编辑存储为派生结果,允许用户恢复为 RAW 原始文件。您还可以描述您在与编辑一起保存的 PHAdjustmentData 中应用的滤镜集——使用调整数据,您应用的另一个实例(或照片应用扩展)可以使用原始 RAW 数据加上您保存的过滤器设置,然后允许用户更改过滤器参数以创建不同的处理图像。


注意:DNG 格式有一个版本叫做 Linear DNG支持非 RAW(或“不完全是 RAW”)图像,但在实践中很少见,Apple 的成像堆栈也不支持它。

关于ios - 您可以在 iOS 上保存编辑后的 ​​RAW .dng 文件吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39497072/

相关文章:

ios - Swift4 - 如何应用异步函数数组的每个元素

ios - 如何从 iMessage 打开我们的应用程序

macos - 在 GPU Cocoa 上应用 CIFilter

swift - 应用 CIFilter 后图像旋转

ios - 当加载WKWebview时,它是nil

ios - UITableView:拖放在单元格之间留出空间

ios - 无法弄清楚为什么 Xcode 模拟器无法正常工作

ios - 如何在iOS10上使用“返回应用”按钮

ios - OneSignal 可变内容 iOS 10

iphone - CIFilter filterWithName :keysAndValues: set keysAndValues from NSDictionary