![명령줄을 사용하여 이미지를 수직으로 분할하는 방법은 무엇입니까?](https://linux55.com/image/9905/%EB%AA%85%EB%A0%B9%EC%A4%84%EC%9D%84%20%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC%20%EC%9D%B4%EB%AF%B8%EC%A7%80%EB%A5%BC%20%EC%88%98%EC%A7%81%EC%9C%BC%EB%A1%9C%20%EB%B6%84%ED%95%A0%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
800x5000 크기의 큰 이미지가 있다고 가정해 보겠습니다. 명령줄을 사용하여 800x1000 크기의 별도 이미지 5개로 분할하려면 어떻게 해야 합니까?
답변1
그것을 사용하여 해결ImageMagick 변환-기하학 자르기+재페이지:
convert -crop 100%x20% +repage image.png image.png
답변2
ImageMagick 사용:
$ convert -crop 800x1000 image.png cropped_%d.png
등의 cropped_1.png
이름 을 가진 일련의 파일이 생성됩니다 .cropped_2.png
인용하다
답변3
"타일" 기능을 사용하십시오:
convert image.png -crop 1x5@ out-%d.png
답변4
ImageMagick은 이미지가 너무 커서 처리할 수 없기 때문에 충돌이 발생하여 다른 방법을 사용해야 했습니다.
결국 Python 이미지 라이브러리를 사용하게 되었습니다.
OP의 질문에 대한 빠르고 더러운 답변은 다음과 같습니다.
from PIL import Image
im = Image.open("YourImage.yourformat")
for h in range(0, im.height, 1000):
nim = im.crop((0, h, im.width-1, min(im.height, h+1000)-1))
nim.save("PartialImage." + str(h) + ".yourformat")
위의 코드에는 최종 치수가 하드 코딩되어 있지만 모든 입력이 매개변수화되어 자체 완전한 스크립트로 쉽게 변환될 수 있습니다. 누구든지 이런 것이 필요하다면.