ImageMagick을 사용하여 여러 이미지를 하나의 이미지로 결합하고 싶습니다. 조금 더 잘 설명하기 위해 결과가 다음과 유사하게 보이기를 원합니다.
즉, 나는 많은 스크린 샷을 가지고 있으며 원본 이미지가 서로 위에있는 하나의 이미지로 바꾸고 싶습니다.
인터넷 검색을 통해 '복합'명령을 보았지만 그 경우 내가 원하는 결과를 얻는 데 사용하는 방법을 모르겠습니다.
ImageMagick을 사용하여 여러 이미지를 하나의 이미지로 결합하고 싶습니다. 조금 더 잘 설명하기 위해 결과가 다음과 유사하게 보이기를 원합니다.
즉, 나는 많은 스크린 샷을 가지고 있으며 원본 이미지가 서로 위에있는 하나의 이미지로 바꾸고 싶습니다.
인터넷 검색을 통해 '복합'명령을 보았지만 그 경우 내가 원하는 결과를 얻는 데 사용하는 방법을 모르겠습니다.
답변:
다음과 같은 이름의 입력 파일 수 :in-<something>.jpg
convert -append in-*.jpg out.jpg
특정 파일을 추가하거나 전체 "글로브"를 얻는 대신 숫자를 건너 뛰려면 입력 파일을 명시 적으로 언급하고 append
나중에 명령을 넣을 수 있습니다
in-1.jpg 변환 in-5.jpg in- N .jpg + out-in1-plus-in5-and-in N .jpg에 추가
세로 붙여 넣기 -append
에는 (대신 +append
)를 사용할 수 있습니다 .
또는:
montage -mode concatenate -tile 1x in-*.jpg out.jpg
또한 out.jpg
소스 이미지의 수직 연결을 포함 하는 파일 을 만듭니다 .
convert
단일 행 또는 열로 간단하게 연결 append
하려면 convert
도구 옵션으로 충분합니다. 참고 -append
로 하나의 열 생성, 수직 이미지를 모두 연결 한 N 개의 행 및 +append
하나의 열 생성을 가로 연접 n 개의 열.
ImageMagick : 명령 줄 옵션을 참조하십시오 .
montage
레이아웃을보다 세밀하게 제어하려면 montage
도구 가 필요합니다 . 옵션과 montage -mode concatenate
같이 입력 이미지를 붙이고 적용 할 레이아웃을 제어합니다.append
-tile 1x
tile
는 columns × rows 형식을 따르지만 양쪽이 누락 montage
되어 제약 조건을 충족시키는 방법을 알아냅니다.
우리가 사용하는 1x
것과 같은 효과를 얻기 위해 여기 (행의 수와 정확히 하나의 열) -append
. 이 없으면 기본적으로 (한 행의 여러 열)로 -tile 1x
이미지를 결합합니다 .+append
-tile x1
( ImageMagick 예 : 몽타주, 이미지 배열 참조 )
convert -append `counter=0; for x in in-*; do if [[ $(($counter % 2)) == 0 ]]; then echo $x; fi; counter=$((counter + 1)); done` out.jpg
이 일을해야합니다.
convert -tile 2x2
등의 명령을 사용하여 파일을 읽을 순 . 즉, 이름 0-10
이 지정된 청크 는 다음과 같이 읽습니다 0,10,1,2,..,9
. 이 기본적인 것을 깨닫기 위해 거의 2 시간이 걸렸습니다.
ls *
해당 값을 순서대로 반환합니다.