개요
리눅스 터미널 환경에서 여러 이미지를 겹치거나 투명 워터마크를 삽입할 때 유용한 ImageMagick composite 명령어의 기본 사용법과 주요 옵션을 알아봅니다. 위치 지정, 투명도 조절, 합성 모드(Blend Mode)를 활용해 터미널 환경에서 그래픽 작업을 자동화하는 방법을 소개합니다.
ImageMagick 패키지 설치 및 실습용 샘플 이미지 생성
composite 도구가 포함된 ImageMagick을 우분투 시스템에 설치하기 위해 apt-get update -qq && apt-get install -y imagemagick 명령어를 실행합니다.

이미지 합성 실습의 배경으로 사용할 600x400 크기의 푸른색 캔버스 이미지를 생성하기 위해 convert -size 600x400 xc:steelblue background.png 명령어를 실행합니다.

배경 이미지 위에 합성할 워터마크 배지 이미지를 생성하기 위해 convert -size 200x80 xc:coral -fill white -pointsize 20 -gravity center -annotate +0+0 'WATERMARK' badge.png 명령어를 실행합니다.

생성한 background.png와 badge.png 파일의 포맷과 이미지 속성이 정상적으로 구성되었는지 확인하기 위해 file background.png badge.png 명령어를 실행합니다.

기본 이미지 오버레이와 위치(Gravity & Geometry) 지정
composite 명령어에 -gravity center 옵션을 지정하여 배경 이미지 background.png의 정중앙에 워터마크 badge.png를 오버레이합니다.
합성된 결과물은 output_center.png 파일로 저장됩니다.

배경 이미지의 우측 하단(동남쪽)을 기준으로 가로와 세로 각각 20픽셀의 여백을 두고 배치하기 위해 -gravity southeast와 -geometry +20+20 옵션을 함께 적용합니다.
합성된 결과물은 output_southeast.png 파일로 저장됩니다.

기본 기준점인 좌측 상단을 기준으로 x축과 y축으로 각각 50픽셀 떨어진 좌표에 이미지를 배치하기 위해 -geometry +50+50 옵션을 사용합니다.
합성 작업의 결과는 output_offset.png 파일로 생성됩니다.

앞선 명령어로 생성된 결과 이미지 파일들의 목록과 용량 등의 세부 정보를 확인하기 위해 ls -lh output_*.png 명령어를 실행합니다.

투명도(Dissolve) 옵션을 활용한 워터마크 효과 구현
-dissolve 30 옵션을 적용하여 오버레이할 badge.png 이미지의 투명도를 30%로 조절하고, -gravity center를 통해 배경 이미지 중앙에 배치합니다.
합성된 결과물은 은은한 워터마크 효과가 적용된 output_watermark_30.png 파일로 저장됩니다.

-dissolve 60 옵션으로 배지 이미지의 불투명도를 60%까지 높이고, -gravity southeast와 -geometry +15+15를 함께 사용하여 우측 하단에서 15픽셀 떨어진 위치에 배치합니다.
워터마크가 이전보다 더 선명하게 드러나는 결과물이 output_watermark_60.png 파일로 생성됩니다.

투명도 옵션을 적용하여 합성한 두 결과 이미지의 규격과 세부 속성을 확인하기 위해 identify output_watermark_30.png output_watermark_60.png 명령어를 실행합니다.

블렌딩 모드(Compose) 적용 및 결과 확인
-compose multiply 옵션을 적용하여 오버레이 이미지와 배경 이미지의 색상 값을 곱하는 곱하기(Multiply) 블렌딩 방식으로 합성합니다.
어두운 톤이 자연스럽게 겹쳐지는 시각 효과가 반영된 결과물은 output_multiply.png 파일로 저장됩니다.

-compose screen 옵션을 사용하여 두 이미지의 색상을 밝게 혼합하는 스크린(Screen) 블렌딩 모드를 적용합니다.
밝은 색상 영역이 강조되어 부드럽게 밝아지는 효과가 적용된 이미지는 output_screen.png 파일로 생성됩니다.

블렌딩 모드를 적용하여 새롭게 생성된 두 결과 파일의 목록과 용량 정보를 확인하기 위해 ls -lh output_multiply.png output_screen.png 명령어를 실행합니다.

지금까지 우분투 환경에서 ImageMagick composite 명령어를 활용해 이미지를 합성하고 워터마크를 적용하는 방법을 자세히 정리해보았습니다.
쉘 스크립트와 함께 연계하여 반복되는 대량의 이미지 편집 작업을 손쉽게 자동화해보세요.