将一系列位图图像转换为灰度图像

将一系列位图图像转换为灰度图像

我有一系列包含 RGB 编码数据的 bmp 图像文件。我需要将所有这些图像转换为灰度图像。为此,我考虑了两种方法,但都不够充分。

1) 我尝试使用 IrfanView 和 Gimp。在这两个软件中,我都可以加载单个图像并将其转换为灰度,然后保存灰度图像。但是,由于我有 500 张图像,所以这种方法不可行,因为它们都不允许我在整个图像系列中应用 RGBTogreyscale 操作

2) 我尝试了 Matlab。但是,由于某种原因,我的文件与 Matlab 不兼容。Matlab 中的简单 imread 无法加载图像文件。

imgdata = imread('myimg.bmp')  % gives error saying that 'Bitfield compression not supported'

有什么建议么?

答案1

在 Irfanview 中,转到“文件”»“批量转换”(或按热键B),添加所有要转换的文件,选中“使用高级选项”,然后单击“高级”按钮,并选中“转换为灰度”,如下所示:

上面描述的配置的屏幕截图

这应该允许将多个位图图像批量转换为灰度图像。您还可以批量转换为任何Irfanview 支持的图像文件格式,例如 BMP、PNG、GIF、JPG 等。

答案2

我推荐 Imagemagick。它是一款命令行实用程序,非常灵活,支持许多功能。其中之一就是转换为灰度。

更多内容请参阅此帖子:

http://www.imagemagick.org/Usage/color_mods/

总结

convert  test.png  -type GrayScale  grey_type.png

要安装 Imagemagick,这里有各种二进制文件:

关联

答案3

尽管有一个可以接受的答案,我还是想发表一下我的意见。

如果您只想使用默认转换方法转换为灰度,IrfanView 可以完成这项工作。但是,对于那些可能想要指定确切如何转换颜色到灰度我想我会提到我使用的程序。

它是商业的,但允许人们指定红色,绿色和蓝色的贡献量,以及允许人们使用其他颜色模型(如HSL和HSI)的亮度或强度“通道”来实现转换:批量图像处理器此外,它还有各种保存灰度图像的选项:8 位位图、8 位 PNG、8 位 GIF 和其他一些选项。如果您需要,它还有许多其他图像处理功能,如亮度、对比度等。

所以我的看法是,如果您只想使用一些默认实现转换为灰度,请使用 IrfanView,但如果您需要更多的灵活性、选项,并且可能想要将不同的批处理操作组合在一起,请使用像我提到的更专业的工具。

答案4

我刚刚发现 IrfanView 中有批处理选项。使用批处理,我能够一次性将系列中的所有图像转换为灰度图像。输出的灰度图像类型为 .PGM。

相关内容