有没有办法使用命令行查看 Linux 中 jpeg 文件的尺寸?

有没有办法使用命令行查看 Linux 中 jpeg 文件的尺寸?

.jpeg在学校的集群中保存了一些图像。我在家使用 PuTTY 访问 Debian 节点之一。我可以访问包含所有图像的文件夹,但我需要查看每张图像的尺寸,以便对它们再进行一次计算。有没有办法做到这一点?

为了遵守计算机编程中寻求帮助的基本规则之一,我应该说明我的最终目标。目标是获取输入图像并对其执行奇异值分解,以便了解截断图像时会发生什么。使用较少量的奇异值,所得图像变得模糊。我现在需要确定每个图像的压缩比(输出与输入图像文件大小的比率)。我的目的是查看每个结果图像的尺寸,并将新宽度除以原始宽度,将新高度除以原始高度。如果有人知道更好的方法来做到这一点,我会洗耳恭听:)

注意:我没有 sudo 权限,因为它是大学计算机,不是我自己的。

答案1

我只能解决您问题的第一部分:您可以使用以下命令在命令行上查看图像的尺寸确认工具,一部分图像魔法包裹。 (要在 Debian 机器上安装 imagemagick,如果您有 sudo 权限,您可以运行sudo apt-get 安装 imagemagick)。

例如,在包含图像文件rose.jpg的目录中,运行识别玫瑰.jpg将产生如下结果:

rose.jpg JPEG 70x46 70x46+0+0 8-bit sRGB 2.36KB 0.000u 0:00.000

这表明图像的尺寸为 70 像素 x 46 像素。

您可以使用以下命令获取有关图像的更多信息-详细选项,例如识别-详细玫瑰.jpg

您可以在此处查看识别工具的文档:http://www.imagemagick.org/script/identify.php

答案2

有很多工具可以做到这一点:

如果未安装这些程序,请注意 jhead 和 jpeginfo 都非常简单,假设有可用的编译器将很容易在您自己的用户帐户中构建。

答案3

您可以使用命令file例如:

file images.jpg

输出类似于:

images.jpg: JPEG image data, JFIF standard 1.01, aspect ratio, density 
1x1, segment length 16, baseline, precision 8, 342x147, frames 3

或者

rdjpgcom -verbose images.jpg

样本输出

JPEG image is 342w * 147h, 3 color components, 8 bits per sample
JPEG process: Baseline

相关内容