获取文件夹中所有图像的名称和尺寸

时间:2014-10-18 14:47:21

标签: python image batch-file

如何获取文件夹中所有图像的名称和尺寸?我在一个文件夹中有超过50k的图像。我需要名称列表以及所有图像文件的尺寸。安装了Mediainfo和Python的Windows 7 PC。如果需要,可以安装其他软件,如ImageMagick。


由Mofi编辑,向Renuka展示如何正确地提出要求。

我在文件夹C:\Temp\My Pictures及其子文件夹中有超过50,000个图像文件,其名称类似于

  • 子文件夹1
    • My Photo1.jpg
  • OneMoreSubFolder
    • Another Photo.jpg
  • PNG image.png

支持的文件扩展名为:JPG,JPEG,PNG,GIF,BMP

想要将包含路径的每个图像文件的名称转换为CSV文件C:\Temp\ImageList.csv,其中包含:

  1. 带双引号路径的文件名
  2. 图像宽度(以像素为单位)
  3. 图像高度(以像素为单位)
  4. 分隔符应为逗号,即,

    CSV文件应查找以上文件列表的示例:

    "C:\Temp\My Pictures\Subfolder 1\My Photo1.jpg",800,600
    "C:\Temp\My Pictures\OneMoreSubFolder\Another Photo.jpg",768,1024
    "C:\Temp\My Pictures\PNG image.png",48,36
    

    我到目前为止的代码是:

    rem Here should be your code. You should have already searched in WWW
    rem by yourself how to fulfill this task and tried something by yourself.
    

    我的问题是......

    如何......?

    Stack Overflow欢迎提出这样的问题。

3 个答案:

答案 0 :(得分:4)

使用ImageMagick并运行

identify -format "%f,%w,%h\n" *.jpg > filelist.csv

示例输出

identify -format "%f,%w,%h\n" *.jpg *.png

a.jpg,870,946
b.jpg,298,219
bd.jpg,3138,1877
bean1.jpg,1252,1252
bean2.jpg,500,355
bh.jpg,1877,3138
book.jpg,1715,3049
cap.jpg,300,221
fg.jpg,180,252
fractal.jpg,38400,21600
result.jpg,100,100
score.jpg,870,946
1.png,400,300
1b.png,202,102
2.png,400,300
2b.png,202,102
3.png,103,115
3b.png,202,102

identify -format "%f, width=%w, height=%h\n" *.jpg

如果您想对PNGTIF个文件执行相同操作,只需将jpg更改为pngtif

答案 1 :(得分:0)

如果您只想查看尺寸并且不想拥有包含所有内容的文档(在涉及任何编程部分之后),那么您甚至根本不需要软件。它是Windows中的内置功能。只需转到该文件夹​​并将视图切换到Detail模式,然后右键单击顶部的标题。选择more,然后从列表中选择Dimensions。确认对话框,然后返回该文件夹。现在,您可以看到该文件夹​​中所有图像的尺寸。

答案 2 :(得分:0)

我的建议是使用免费(私人使用)IrfanView并使用命令行:

"Path to IrfanView\i_view32.exe "Path to folder with images\*.*" "/info=Path to list file\ImageInfo.lst"

1个JPEG文件的列表文件中的输出例如是:

[photo.jpg]
File name = photo.jpg
Directory = 
Compression = JPEG, quality: 92, subsampling ON (2x1)
Resolution = 180 x 180 DPI
Image dimensions = 1024 x 768  Pixels (4:3)
Print size = 14.4 x 10.8 cm; 5.69 x 4.27 inches
Color depth = 16,7 Million   (24 BitsPerPixel)
Number of unique colors = 53939
Disk size = 225.87 KB (231.293 Bytes)
Current memory size = 2.25  MB (2.359.336 Bytes)
File date/time = 19.05.2014 / 15:14:32