如何使用ImageMagick实用程序显示/转换内部没有任何元数据的原始图像文件?

时间:2017-06-01 03:08:37

标签: imagemagick

我有一个RAW图像文件(来自相机传感器模块),里面没有任何元数据,但我知道来自其他来源的元数据,即它的宽度*高度和深度(8位灰色)。如何告诉imagemagick实用程序(转换,例如)将其转换为其他格式?

顺便说一句,我可以使用Photoshop打开它(通过在弹出对话框中告诉它元数据),但Photoshop并不适合我手边的任务。

谢谢,

/布鲁因

2 个答案:

答案 0 :(得分:4)

在ImageMagick中,您可以使用-size和-depth参数以及GRAY或RGB限定符,具体取决于您的文件是灰度还是彩色。所以

convert -size WIDTHxHEIGHT -depth 8 GRAY:inputname.suffix outputname.newsuffix

newsuffix可能是gif,tif,png,jpg等。后缀可能存在也可能不存在,但可能是bin或其他内容。

但是,您需要使用dcraw或ufraw,具体取决于您在系统上编译的操作系统,因为ImageMagick使用它们来完成工作。你也可以在没有ImageMagick的情况下使用那些独立的

答案 1 :(得分:0)

我还在处理原始图像(例如在包含没有头的像素值的二进制文件中),fmw42's answer帮助了我。

我发现弄清楚如何对位深度进行下采样很棘手。在我的情况下,原始文件每个像素包含10位未打包的文件(即,每个像素16位,但是只有10位有效)。要将其正确映射到8 bpp输出,请执行以下操作:

convert -size WIDTHxHEIGHT -depth 16 GRAY:inputname.suffix -level 0,1023,1.0 -depth 8 outputname.newsuffix

在没有-level的情况下,所有16位都将降采样为8位(在我的情况下),实际上是将2位图像存储为每像素8位。