libvips을 시도해 볼 수 있습니다. 스트리밍 이미지 처리 라이브러리이므로 별도의로드 단계가없고 임시 파일이 없어도 입력을 읽고 처리하고 단일 파이프 라인으로 출력을 쓸 수 있습니다. 그것은 또한 멋진 스레드 IO 시스템을 가지고 있으므로 performance is good and memory use is low입니다.
$ vips black test.tif 13000 10000 --bands 3
$ ls -l test.tif
-rw-r--r-- 1 john staff 390000854 22 Nov 09:43 test.tif
는 그래서는 13000 X 10000 3 밴드, 팔의 :
나는 (ImageMagick를 6.9.6-3 Q16, GM 1.3.25, VIP를 8.4.2로 아이맥)이 컴퓨터에 그것을 초과 bit 비 압축 TIFF. vipsthumbnail으로, VIP를 함께 제공되는 이미지 쉬 링커, 나는 참조 : 그 그냥 vipsthumbnail
의 테스트 및 나의 디스크 시스템해야하므로
$ /usr/bin/time -l vipsthumbnail test.tif -s 128x128 -o small.png
0.54 real 0.42 user 0.11 sys
77635584 maximum resident set size
나는 세 번을 실행하고 가장 빠른 들었다. 그것은 0.54 초 실시간, 77MB의 피크 메모리입니다.
convert
와
나는 참조 :
$ /usr/bin/time -l convert test.tif -resize 128x128 small.png
4.87 real 4.28 user 0.55 sys
1432182784 maximum resident set size
다시 말하지만, 가장 빠른 3 실점, 4.87s 실시간, 1.4GB 메모리. GraphicsMagick이 조금 더 빠르다 보니 :
$ /usr/bin/time -l gm convert test.tif -resize 128x128 small.png
3.95 real 3.41 user 0.51 sys
1264369664 maximum resident set size
실제 3.95s 진짜, 1.2gb 피크 메모리.
따라서이 테스트에서 libvips는 7 배 빨라지고 graphicsmagick보다 15 배 적은 메모리를 사용합니다.
libvips는 대부분의 리눅스의 표준 부분이며, homebrew 및 macports에 있으며, vips 웹 사이트에는 64 비트 Windows 바이너리가 있습니다.
. 당신은 Imagemagick의 8 비트 버전을 설치하여 더 많은 옵션을 시도 할 수 있습니까? – Bonzo
@Bonzo GraphicsMagick도 일반적으로 16 비트이지만 ImageMagick과 마찬가지로 Q8, Q16 및 다른 버전에서도 사용할 수 있습니다. –
@ user894763 님의 탁월한 답변이 문제를 해결 했습니까? 그렇다면 투표 수 옆에있는 빈 녹색 체크/체크 표시를 클릭하여 답변으로 수락하십시오. 감사. http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work/5235#5235 –