问题标签 [dng]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
95 浏览

react-native - 在移动应用程序中的其他图像上实现 xmp 数据或 dng 数据

我正在尝试构建一个移动应用程序(react-native 或本地语言),它将能够获取 xmp 文件(换句话说是照片的预设)并在另一张照片上实现其数据,或在另一张照片上实现 dng 设置。

我试图了解是否可能在 Lightroom App 之外使用 Lightroom 预设。这里有人在不使用移动设备上的 Lightroom 的情况下成功实现了他\她自己的 Lightroom 预设吗?

0 投票
1 回答
385 浏览

ios - 如何在 Swift 中将数值数据数组转换为 RAW 图像数据?

我有一个 Int16 或 Int32 数值的数据数组,它们是来自具有 RGGB 像素布局 (CFA) 的 11MP 相机芯片的原始图像数据。数据由相机驱动程序导出为 FITS 数据,在我的例子中,它基本上是一个向量或长字节串或 16 位/像素数据。

我喜欢在 Swift 中将这些数据转换为原始图像格式,以便使用 iOS/Swift 中强大的去拜耳和去马赛克功能和算法。我不打算自己去马赛克,因为 iOS 已经为此提供了一个很棒的库(请参阅 WWDC2016 主题演讲关于使用 Core Image 进行原始处理)。

我需要让 iOS “相信”我的数据是实际的原始图像数据。

我尝试在 Swift 中使用 CreatePixelBufferWithBytes,然后从像素缓冲区使用 CIImage,但无济于事。CIImage.cgimage 不是 RGB 彩色图像。

有没有一种简单的方法可以从原始数值数据在 Swift 中创建原始或 DNG 图像?

这是我尝试使用 CVPixelBuffer 方法的方法,但我没有从中得到任何彩色图像:

imgRawData 是一个 [Int32] 或 [Float32] 数组,其元素个数为 width*height。

Xcode 的 Quickview 只显示黑白或灰度图像。CGImage 的 SwiftUI 视图也是如此...

0 投票
0 回答
59 浏览

compiler-errors - 使用 CMake 编译链接器错误 MacOS c++

我尝试使用 Libraw 和 ... 在 Mac OSX 10.13.6 中使用 cmake 编译 ADobe DNG SDK 并得到此链接器错误:

我尝试更改源代码,但我认为它没有错误,并附上我的 cmake 配置屏幕截图,看看是否有人可以帮助我解决这个问题

图片... 图片

Cmake:3.5 xcode:9.4.1

谢谢

0 投票
0 回答
29 浏览

python-3.x - 如何使用 python 将 lrtemplates、DNG、XMP 应用于图像?

据我研究,流行的图像预设是 lrtemplates、dng、xmp。但是,我们只能通过Photoshop,Lightroom等专业软件应用这些滤镜。是否可以通过代码(尤其是Python)来完成?这个想法是开发一个服务器,允许用户上传他们的图像,选择一个过滤器并应用于图像。我在这里找到了一种按颜色矩阵应用过滤器的方法:https ://fecolormatrix.com/ 。但我正在互联网上寻找更多资源,其中大部分不是颜色矩阵,而是上述扩展。如果可能,最好将这些扩展名转换为颜色矩阵。

先感谢您!

0 投票
0 回答
104 浏览

swift - 自定义 AVCapturePhoto 对象的像素缓冲区

我正在尝试通过平均来自不同帧的结果来编写一个模拟长时间曝光的相机应用程序。我请求 RAW 格式的捕获结果,我需要将逐像素平均的结果保存在 DNG 文件中。

我天真的方法是从以下位置获取 AVCapturePhoto 对象:

照片对象有一个 pixelBuffer 属性 (CVPixelBuffer),我可以将其用于我的操作。更重要的是,它有一个非常方便的方法:fileDataRepresentation(),它返回一个可以写入 DNG 文件的平面数据表示。我真的很喜欢使用这种方法:)

但是,pixelBuffer 属性是只读的(所以我不能修改它),并且 AVCapturePhoto 类没有初始化程序。我找不到任何方法来继承 AVCapturePhoto 并覆盖 pixelBuffer 属性。

有没有办法可以创建自己的 AVCapturePhoto 对象(或其子类)并使用 fileDataRepresentation() 编写带有自定义像素缓冲区的 DNG 文件?

0 投票
0 回答
139 浏览

python - RawPy:如何获取线性原始数据 - 偏移校正(黑电平、白电平)、白平衡和去马赛克

我想将 DNG 文件中的数据转换为以下内容:

  1. 使用黑电平校正偏移
    image_without_offset = image - black_level
  2. 将白色缩放到最大值 2^16-1
    image_scaled = image_without_offset / (white_level - black_level) * (2**16-1)
  3. 将白平衡和剪辑应用到有效范围
    image_white_balanced = clip(image_scaled * asn_gains, 0, 2**16-1)
  4. 去马赛克拜耳图像

使用 RawPy 怎么能做到这一点?第 3 步和第 4 步可能按顺序颠倒,但必须提前应用偏移校正。

进一步的后处理是单独进行的。这部分有效,因为它已经使用不依赖于 RawPy 的其他工作流程进行了验证,这首先提到的步骤。

我不知道完成此操作的正确参数化,或者是否可以使用 RawPy。以下是我尝试过的,但颜色看起来与应有的不同。

我现在还不清楚参数如何no_auto_scale影响结果。

0 投票
0 回答
81 浏览

c# - 通过 Libtiff .NET 编写线性 DNG 时出错

我正在尝试使用有损 JPEG (34892)压缩(在 DNG 1.4.0.0 中引入)创建基于 JPG 的线性 DNG 文件。运行下面的方法后,我从 dng_validate.exe收到错误“错误:文件格式无效(JPEG 尺寸与图块不匹配)” 。

如果有人可以通过调整我的代码来解决它,那就太好了。另外,我很乐意提供教程链接。使用图像工具(magick、dcraw、exiftool)也可能是一种解决方案。

0 投票
0 回答
37 浏览

image-processing - rawpy.imread 中的奇怪损坏

我打算使用代码 rawpy.imread(path) 读取 DNG 格式的图像,但是它返回给我一条错误消息,说unknown file: data corrupted at xxxxxxx (7-digit number)

在这个错误之后,我发现程序仍然能够继续运行,并且 DNG 图像不是平面图像,因为在访问它的属性时raw_image_visible,它返回给我一个包含四个通道的 ndarray。我在 Windows 10 环境下拥有最新版本的 rawpy 包(0.16.0)。

我通过Google Drive分享了这张照片。我不知道如何解决这个问题。任何形式的帮助表示赞赏。

0 投票
0 回答
190 浏览

c++ - 使用 libraw 读取原始图像并使用 libtiff 转换为 DNG

我正在使用 Libraw 读取 RAW 文件(通常是 NEF 格式),一切似乎都很好。经过一些处理,我需要将 RAW 图像保存为 DNG 文件。但是,当我用 Photoshop 打开 DNG 文件时,颜色似乎不对。

为了找到 CFA 模式,我使用 RawProcessor.COLOR 查看模式的前两行和两列。我得到以下模式:\00\01\01\02。然后我将原始图像写入文件:

我使用以下方法找到 cam_xyz:RawProcessor.imgdata.color.cam_xyz,它是一个 4x3 矩阵,我删除了最后一行以获得 cam_xyz。cam_mul 来自 RawProcessor.imgdata.color.cam_mul,它有 4 个元素,我删除了最后一个元素以获得 cam_mul。cam_mul 的值在传递给 Tiff 标记之前被反转。

编辑:这是使用 LibRaw 从文件中读取 RAW 图像的代码:

我得到 cam_xyz 的以下值:

[1.0405 -0.3755 -0.127

-0.5461 1.3787 0.1793

-0.104 0.2015 0.6785

0 0 0]

和 cam_mul : [1.78906, 1, 1.67969, 1]。

  1. 正如我所说,我有一个大问题,即当我在 Photoshop 中加载 DNG 图像时,颜色不正确,这可能是由于颜色矩阵或白平衡造成的。

  2. 另一个问题是,当我在 Photoshop 中加载原始 NEF 文件时,大小为 5504x8256,而 DNG 文件的大小为 5520x8288。我也检查了这些值:

    RawProcessor.imgdata.sizes.top_margin:0

    RawProcessor.imgdata.sizes.left_margin:2

这与我在另一个软件中打开 NEF 文件的大小不对应。知道问题出在哪里吗?

尝试此图库中的任何图像 ( https://www.photographyblog.com/previews/nikon_d850_photos ) 将得到与此类似的结果,其中原始 RAW 图像是底部图像,顶部图像是转换后的 DNG 图像:

转换后的 DNG 原始RAW

0 投票
0 回答
44 浏览

java - 使用 OpenCV 在 Java 中编写 DNG 文件

我有一个连接到我的计算机的相机,它可以让我拍摄图像并直接访问传感器的原始数据(即我将图像作为原始字节数组获取)。与任何原始照片一样,图像需要先显影,然后才能可视化。为此,我目前使用 OpenCV,如下所示:

OpenCV 完全能够对图像进行去拜耳处理,但我想知道如果我使用 Lightroom 之类的工具来开发图像,是否可以进一步改进图像。因此,我想知道如何使用 OpenCV(或任何其他工具)将这些图像转换为 DNG 图像。