Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

looking and cant find the perfect one.
i have 100 gig of 4K image-sequence to process.

found imagizer2 on sourceforge. multi-thread but not 64bit (does matter?).
i guess the fastest one will be using intel's IPP image core lib .

i am on windows, but if some crazy fast linux option is available i'll consider (benchmarks?).

included benchmarks i ran on a test batch of 100 5k (4.3MB) files

share|improve this question
    
You mentioned image sequence - do you want to process individual images, or combine them into video sequences? If the latter, I would do the transformations during production with virtualdub. –  Andy Lee Robinson Jul 27 '11 at 20:55
    
yes, my orginal plan was to do this all in command line using ffmpeg ffmpeg -i d:\g\25\g_%%04d.jpg -r 15 -s hd720 -vcodec libx264 -fpre "libx264-hq.ffpreset" -crf 16 Day01_720.mp4 but fmpeg is hard coded to support images no larger then 5012pixels. hence the resize. –  yoshco Jul 27 '11 at 21:56
    
i actually prefer avisynth for image sequence work, its so powerful. –  yoshco Jul 27 '11 at 21:57
    
Penny drops! 4K line film quality images, not 4kb images! Yes, avisynth is great and supplied with virtual dub. ffmpeg is open source, so the 5012 pixel limit can be modified and recompiled, or the authors could increase the default limit. It shouldn't be difficult. –  Andy Lee Robinson Jul 28 '11 at 21:26
    
adding more benchmakrs: VIPS and GraphicsMagick vips.ecs.soton.ac.uk/index.php?title=Speed_and_Memory_Use –  yoshco Mar 14 '12 at 17:03
show 1 more comment

6 Answers

up vote 0 down vote accepted

Great stats - thanks for the references. Perhaps too late but you didn't mention ImageResizer results (from Codeplex) suggested with Batch Picture Resizer above. (not the same as the mentioned "crapware") I started using it after MS stopped updating their Image Resizer. But certainly don't have have the speed and volume needs - just clean and quick resizes for email attachments and such.

share|improve this answer
    
thanks, i lost the original dataset but on comparable set seems this is crazy fast. too bad its not scriptable (but sourcecode is available, so...) –  yoshco Apr 20 '13 at 17:38
add comment

Check out these programs:

  1. Batch Picture Resizer.
  2. Image Resizer.

Resizing images using batch files: Batch Resize.

share|improve this answer
1  
i took 100 5k pictures: batch picture resizer = 30sec imagizer2 = 64sec –  yoshco Jul 27 '11 at 19:10
    
Try this one: Fast Image Resizer (adionsoft.net/fastimageresize). This one also seems promising: obviousidea.com/windows-software/light-image-resizer –  TookTheRook Jul 27 '11 at 19:14
    
Fast image sizer= 110 sec –  yoshco Jul 27 '11 at 19:18
    
light-image-resizer is crapware –  yoshco Jul 27 '11 at 19:25
    
False advertising then. Try the batch method I put in the edited comment. If that doesn't help then I'm out of options. Otherwise, if the batch picture resizer took 30 sec, to resize 500 MB word of images (assuming each of the 100 images was 5 Mb. ea), it should take 1 hour, 40 minutes to resize all of the 100 GB of pics you have. That's not too bad? –  TookTheRook Jul 27 '11 at 19:25
show 1 more comment

Not sure how it will compare in the benchmark dept but you may want to give ImageMagick a try using the "convert" or "mogrify" tools. It sounds like it makes good use of 64 bit, number of cores and such.
All I know is that it is really powerful and feature full. I can resize in place or add options like resample filters and file type conversions.

mogrify -format jpg -filter Cubic -resize 20%x20% rgb-?.png
share|improve this answer
    
i love cmd, but im also benchmark junky... mageMagick-6.7.1-Q16x64 = 149sec –  yoshco Jul 27 '11 at 20:07
    
I guess I'm not surprised as it seems ImageMagick is more the Swiss army knife than the scalpel. Well done on the question and benchmarks. –  Dennis Jul 27 '11 at 21:05
add comment

I'm using IrfanView for converting 1 GB of tiff files to smaller GIF ones each night. Takes only some minutes.

A sample command woulöd look like this (I use this to convert pictures for my digital photo display)

"C:\Program Files (x86)\IrfanView\i_view32.exe" "C:\Pictures\Best\*.jpg" /resample=(720,540) /aspectratio /convert="C:\Temp\miniDisp\*_rsz.jpg"

This does resize all JPG files from C:\Picutres\Best\ to 720x540 and save them as C:\Temp\miniDisp\ OrgFilename_rsz.jpg.

The command line switches IrfanView understands can be found inside the online help (see Index - Command line options) or online here

share|improve this answer
    
irfan is also my day to day tool, but irfan = 80sec for same test. –  yoshco Jul 27 '11 at 19:22
    
Well, that's really long compared with the other programs. Thanks for the tests. –  TeX HeX Jul 27 '11 at 19:34
    
irfanview also my viewer and batch processor of choice though virtualdub is also an essential tool. It could be used to combine image sequences into a video with the benefit of delta compression, and an image could be retrieved by indexing a frame. –  Andy Lee Robinson Jul 27 '11 at 20:51
add comment

Parallel can be used to speed up batch conversions with imagemagick.

Shrink every *.jpg in a directory such that neither the height nor width is bigger than 1080 pixels:

parallel mogrify "{}" -resize 1080x1080 ::: *.jpg

Using convert to create seperate smaller files:

parallel convert "{}" -resize 1080x1080 "{.}-small.jpg" ::: *.jpg

Note that this applies to GNU parallel, not the version packaged in Debian's moreutils, which has a different syntax & less features. See the man page for more information on parallel.

share|improve this answer
add comment

vips is faster, for me:

$ header sample.jpg 
sample.jpg: 8888x5000 uchar, 3 bands, srgb, jpegload
$ for i in {1..100}; do cp sample.jpg t$i.jpg; done
$ time vipsthumbnail --size 1280 t*
real  0m14.672s
user  0m17.631s
sys   0m0.988s

Speed is limited by jpeg encode/decode, which (thanks to libjpeg) is single-threaded. You can get it going quite a bit quicker if you run several vipsthumbnail in parallel:

$ mkdir a b c d e
$ for j in a b c d e; do for i in {1..20}; do cp sample.jpg $j/t$i.jpg; done; done
$ time (for i in a b c d e; do vipsthumbnail --size 1280 $i/t* & done; wait)
real  0m5.258s
user  0m18.557s
sys   0m0.891s

This is on a 2012 imac, but there are windows binaries too.

http://www.vips.ecs.soton.ac.uk/supported/current/

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.