8个稳定版本
1.5.2 | 2024年8月12日 |
---|---|
1.5.1 | 2023年8月6日 |
1.5.0 | 2023年1月23日 |
1.3.0 | 2022年11月25日 |
#181 在 图像
每月下载量:159
110KB
2K SLoC
DNG-rs
一个纯Rust库,用于以零拷贝友好的方式读取/写入DNG文件,并提供对原始数据的访问。 还包含读取/写入DNG标签/IFD结构的可读YAML表示的代码。DNG-rs还支持与DCP(Dng Camera Profile)文件交互,但由于我无法找到有关该文件的官方文档,所以这是尽力而为。
工具
此库还包含一对命令行工具,用于将DNG转换为可读YAML表示,反之亦然。这些工具类似于dcpTool的-d
和-c
,但使用YAML而不是XML。
$ target/debug/dump_dng -h
Dump the IFD metadata of a TIFF / DNG image to a human readable yaml representation
Usage: dump_dng [OPTIONS] <FILE>
Arguments:
<FILE> input file to get the metadata from
Options:
-f, --dump-rational-as-float convert Rational and SRational types to float for better readability (this is lossy)
-e, --extract extract strips, tiles and larger blobs into a directory. also write the ifd chain as a yaml file there
-h, --help Print help information
-V, --version Print version information
$ target/debug/compile_dng -h
Assemble a DNG file from some of other dng files, plain raw files and metadata
Usage: compile_dng [OPTIONS] --yaml <YAML>
Options:
--yaml <YAML> input YAML file to get the metadata from
--dcp
-b, --big-endian
-h, --help Print help information
-V, --version Print version information
示例
$ target/debug/dump_dng src/yaml/testdata/axiom_beta_simulated.dcp -f
UniqueCameraModel: "AXIOM Beta"
ProfileName: "AXIOM Beta spectral simulated"
ProfileEmbedPolicy: allow copying
CalibrationIlluminant1: StandardIlluminantA
ColorMatrix1: [
2.698, -1.8779, 0.3348,
0.493, 0.0325, 0.2078,
0.2645, -0.1286, 0.3895,
]
CalibrationIlluminant2: D65Illuminant
ColorMatrix2: [
2.5136, -1.2873, -0.1654,
0.2275, 0.5494, 0.0929,
0.1393, 0.0697, 0.4617,
]
当前状态
此库应该适用于许多应用程序。然而,尚未实现更高级别的API(?)。为此(以及支持其他原始格式),您可能希望使用rawloader。
依赖项
~1.2–2.7MB
~56K SLoC