从 Android 内的 DNG 文件中检索像素

Retrieving Pixels from a DNG file within Android

我目前正在开发一个 HDR 应用程序,它需要使用 Camera2 才能自定义 HDR 设置。

我开发了一种自定义算法来从 Raw DNG 图像中检索某些数据,我想在 Android 上实现它。

不幸的是,我不是 Java/Android 方面的专家,所以我自学了如何编码。使用其他格式时,我通常使用位图来检索像素数据。 (相对于现有方法而言,这是一个相对容易的任务)

关于 DNG 文件,我没有找到说明如何检索像素数据的文档。我想对图像进行缓冲,但是 DNG 文件格式包含像素以外的许多信息,恐怕我无法找到使用 bufferstream 的提取策略。 (我只想将像素存储在数组中)

有人有想法吗?非常感谢一些提示。

此致

Camera2 不直接生成 DNG - 它生成普通的 RAW 缓冲区,然后您可以通过 DngCreator 将其保存为 DNG。

您是在初始 RAW 缓冲区上操作,还是保存 DNG 然后将它们加载回来?

一般来说,DNG 不是完全烘焙的图像,因此需要相当多的代码才能完全渲染它们 - 请参见示例 Adobe's DNG SDK