본문 바로가기
IT 정보/Mac

imagemagick 설치 및 사용법(사진 용량 및 크기 줄이기)

by lifeasy88 2020. 3. 16.

Mac에서 이미지 편집에 자주 사용하는 커맨드 라인 툴인 imagemaggick을 소개합니다. imagemagick은 커맨드 라인 명령어로 엄청나게 다양한 이미지 편집 기능을 제공하는 프로그램이에요. 저는 일반적으로 사진 포맷을 변경하거나 크기를 조정하는 정도로 사용하지만 상, 하, 좌, 우 반전, 블러 효과 등등 많은 기능들을 제공하고 있어요.

 

 

Mac 프로그램이라고 소개는 했지만 사진 imagemagick을 거의 대부분의 OS를 지원하고 있어요. 지원하는 OS 종류는 아래 다운로드 페이지에서 확인하실 수 있어요.

 

https://imagemagick.org/script/download.php

불러오는 중입니다...

아래에서 보여드릴 예제는 mac 환경에서 실행하지만 imagemagick은 윈도우나 리눅스 환경에서도 똑같은 명령어로 사용할 수 있으니까 쉽게 따라 하실 수 있어요.

설치

mac의 경우 터미널을 열고 아래 명령어로 설치가 가능합니다.

brew install imagemagick  

사진 포맷 변환(PNG에서 JPG로)

블로그에 사용할 사진 용량을 줄이기 위해 많이 사용하는 명령어예요. imagemagick을 설치하면 기본 명령어 외에도 다른 명령어들이 많이 설치되는데, 여기서 사용할 명령어는 mogrify에요.

 

PNG 파일을 jpg로 변경하는 명령어을 실행 해볼게요. 아래 명령어는 모든 PNG 파일을 jpg로 변경해요.

mogrify -format jpg \*.PNG  

*.PNG는 모든 PNG 확장자 사진을 대상으로 한다는 의미고, jpg는 대상 사진들을 jpg 포맷으로 바꾸겠다는 명령이에요.

 

실행 전

-rw-r--r--@ 1 lifeasy88  staff   3.0M  3 10 23:26 [IMG\_1362.PNG](IMG_1362.PNG)  
-rw-r--r--@ 1 lifeasy88  staff   2.7M  3 10 23:38 [IMG\_1363.PNG](IMG_1363.PNG)  
-rw-r--r--@ 1 lifeasy88  staff   1.6M  3 10 23:38 [IMG\_1364.PNG](IMG_1364.PNG)  
-rw-r--r--@ 1 lifeasy88  staff   2.3M  3 10 23:38 [IMG\_1365.PNG](IMG_1365.PNG)  
-rw-r--r--@ 1 lifeasy88  staff   2.2M  3 10 23:38 [IMG\_1366.PNG](IMG_1366.PNG)  

실행 후

-rw-r--r--@ 1 lifeasy88  staff   3.0M  3 10 23:26 [IMG\_1362.PNG](IMG_1362.PNG)  
-rw-r--r--  1 lifeasy88  staff   461K  3 11 23:13 [IMG\_1362.jpg](IMG_1362.jpg)  
-rw-r--r--@ 1 lifeasy88  staff   2.7M  3 10 23:38 [IMG\_1363.PNG](IMG_1363.PNG)  
-rw-r--r--  1 lifeasy88  staff   136K  3 11 23:13 [IMG\_1363.jpg](IMG_1363.jpg)  
-rw-r--r--@ 1 lifeasy88  staff   1.6M  3 10 23:38 [IMG\_1364.PNG](IMG_1364.PNG)  
-rw-r--r--  1 lifeasy88  staff   126K  3 11 23:13 [IMG\_1364.jpg](IMG_1364.jpg)  
-rw-r--r--@ 1 lifeasy88  staff   2.3M  3 10 23:38 [IMG\_1365.PNG](IMG_1365.PNG)  
-rw-r--r--  1 lifeasy88  staff   163K  3 11 23:13 [IMG\_1365.jpg](IMG_1365.jpg)  
-rw-r--r--@ 1 lifeasy88  staff   2.2M  3 10 23:38 [IMG\_1366.PNG](IMG_1366.PNG)  
-rw-r--r--  1 lifeasy88  staff   441K  3 11 23:13 [IMG\_1366.jpg](IMG_1366.jpg)  

실행 후에 PNG 파일들의 jpg 복사본이 생성됐어요. PNG보다 jpg의 사진의 용량이 더 적어서 자주 사용하는 명령어입니다.

사진 사이즈 비율 변환

사진 사이즈도 특정 비율로 변경할 수 있어요. 아래 명령어는 모든 jpg 파일의 크기를 50%로 변경하는 거예요.

mogrify -resize 50% \*.jpg  

실행 후

아까 jpg로 바꾸기 전과 비교해서 대략 1/3로 용량이 줄어들었어요.

-rw-r--r--@ 1 lifeasy88  staff   3.0M  3 10 23:26 [IMG\_1362.PNG](IMG_1362.PNG)  
-rw-r--r--  1 lifeasy88  staff   142K  3 11 23:16 [IMG\_1362.jpg](IMG_1362.jpg)  
-rw-r--r--@ 1 lifeasy88  staff   2.7M  3 10 23:38 [IMG\_1363.PNG](IMG_1363.PNG)  
-rw-r--r--  1 lifeasy88  staff    53K  3 11 23:16 [IMG\_1363.jpg](IMG_1363.jpg)  
-rw-r--r--@ 1 lifeasy88  staff   1.6M  3 10 23:38 [IMG\_1364.PNG](IMG_1364.PNG)  
-rw-r--r--  1 lifeasy88  staff    50K  3 11 23:16 [IMG\_1364.jpg](IMG_1364.jpg)  
-rw-r--r--@ 1 lifeasy88  staff   2.3M  3 10 23:38 [IMG\_1365.PNG](IMG_1365.PNG)  
-rw-r--r--  1 lifeasy88  staff    63K  3 11 23:16 [IMG\_1365.jpg](IMG_1365.jpg)  
-rw-r--r--@ 1 lifeasy88  staff   2.2M  3 10 23:38 [IMG\_1366.PNG](IMG_1366.PNG)  
-rw-r--r--  1 lifeasy88  staff   139K  3 11 23:16 [IMG\_1366.jpg](IMG_1366.jpg)  

사진 정보 출력

사이즈가 제대로 변경됐는지 확인은 dentify 명령어를 이용할 수 있어요

~/Downloads/photo » \*\*identify\*\* [IMG\_1362.PNG](IMG_1362.PNG)  
[IMG\_1362.PNG](IMG_1362.PNG) PNG 828x1792 828x1792+0+0 16-bit sRGB 2.99733MiB 0.000u 0:00.003  
------------------------------------------------------------  
~/Downloads/photo » \*\*identify\*\* [IMG\_1362.jpg](IMG_1362.jpg)  
[IMG\_1362.jpg](IMG_1362.jpg) JPEG 414x896 414x896+0+0 8-bit sRGB 145904B 0.000u 0:00.002  

기존에 828x1792였던 이미지가 414x896으로 변경됐어요. -verbose 옵션으로 더 자세한 정보도 확인 가능합니다.

퀄리티 변경

사진 JPEG와 MPEG 포맷의 사진인 경우 퀄리티 조절이 가능해요. mogrify-quality 옵션으로 설정이 가능하고요 1(최저) 100(최고) 값을 줘서 변경이 가능해요.

mogrify -quality 50 \*.jpg  

중간 퀄리티로 변경했고요, 기존에 142Kb였던 사진이 51Kb로 줄어들었어요.

이미지 테두리 적용

종종 흰색 배경 사진을 블로그에 올리면 배경과 사진의 경계가 애매해서 잘 안 보이는 경우가 있어요. 이럴 때 사진에 테두리 효과를 주면 좋은데, 역시 mogrify로 설정이 가능해요.

mogrify -bordercolor "black" -border 20 \*.PNG  

PNG 확장자 모든 사진에 검은색 20 pixel 두께의 테두리를 넣었어요. 이때 주의할 점은 테두리의 두께만큼 사진 사이즈가 커집니다.

댓글