컬러와 흑백의 직사각형 사진 세트를 스캔하고 싶습니다. 스캔에 전반적으로 매우 만족하지만, 사진을 수동으로 배치하고 스캔 캔버스(또는 스캐너 가장자리)와 잘 정렬되지 않을 수 있기 때문에 몇 가지 실질적인 문제가 발생했습니다.
나는 내 사진이 내가 원하는 직사각형 그림을 포함하는 흰색 배경 직사각형으로 스캔되었다고 가정하고 있습니다. 아마도 흰색 직사각형의 가장자리와 정렬되지 않았을 것입니다.
사진의 가장자리가 수평/수직이 되도록 스캔을 자동으로 회전할 수 있는 응용 프로그램(Linux에서 실행하는 것이 좋음)이 있습니까? 주변의 흰색 배경도 클리핑하면 더 좋을 것입니다(적절한 Unix 디자인으로 이 문제를 해결할 수는 있지만).
나는 눈으로 회전을 확인하면서 Gimp를 사용하여 수동으로 이 작업을 수행하는 방법을 알고 있습니다. 하지만 나는 그것이 자동으로 이루어지기를 원합니다.
실제 이미지를 더 선명하게 만들려면 아래 첫 번째 이미지에 불규칙한 흰색 테두리가 있으므로 주변에 흰색이 없는 두 번째 이미지를 자동으로 추출하고 싶습니다.
참고: 첫 번째 이미지의 가장자리를 표시하기 위해 점선을 추가해야 했습니다. 자동 추출을 위해 제안된 솔루션을 테스트하려면 다음을 수행해야 합니다. 이 이미지를 사용하세요.
답변1
찾고 있는 것 같군요.이미지 마술사. 이것은 일반적으로 더 널리 사용되는 배포판에 기본적으로 설치됩니다. 그렇지 않은 경우 배포판의 패키지 관리자를 사용하여 설치할 수 있습니다.
일반 이미지 회전
$ sudo yum install ImageMagick
-or-
$ sudo apt-get install ImageMagick
ImageMagick에는 많은 CLI 도구가 포함되어 있으며 그 중 하나는 convert
다음 convert
과 같이 이미지를 회전할 수 있습니다.
$ convert -rotate "90" in.jpg out.jpg
더 많은 활용 사례가 있습니다convert
여기. ImageMagick에 포함된 나머지 도구를 사용하면 이미지 편집, 크기 조정 및 주석을 추가할 수 있습니다.
보정
수직 또는 수평으로 약간 기울어지는 이미지를 회전시키는 또 다른 방법은 기울어짐 보정이라고 합니다.
~에서ImageMagick 온라인 명령줄 옵션 도움말:
-deskew threshold{%}
straighten an image. A threshold of 40% works for most images.
Use -set option:deskew:auto-crop true | false to auto crop the image.
convert
이 옵션을 사용하려면 또 다른 ImageMagicks CLI 도구인 CLI 도구를 사용해야 합니다 .
$ convert skewed.jpeg -deskew 40% not_skewed.jpg
인용하다
답변2
저는 최근에 필름 카메라로 찍은 500장 이상의 사진을 디지털화해야 했습니다. 그리고 자동 트림 및 자동 회전이 필요합니다.
다음 매개변수가 나에게 더 잘 작동합니다.
convert myFile.jpg -fuzz 30% -trim +repage -deskew 40% cropped_file.jpg
전체 폴더에 적용하려면 다음을 수행하십시오.
mkdir cropped
for i in `ls *.JPG`; do convert $i -fuzz 30% -trim +repage -deskew 40% cropped/`basename $i JPG`jpg; done
답변3
독서로이 블로그 게시물, 내가 찾은이 bash 스크립트그것은 사용한다이미지 마술사: 다운로드 chmod +x
한 후 다음을 사용하여 스캔한 사진을 회전하고 자를 수 있었습니다.
multicrop -c 50,50 -f 40 -d 50 scanned_photo_in.jpg extracted_photo_out.jpg
-c 50,50
배경색은 50,50의 픽셀에서 감지됩니다(기본값은 0,0).-f 40
"분리된 배경색의 백분율로 표현된 흐림 값"입니다(기본값은 10).-d 50
이 크기보다 너비나 높이가 작은 영역은 모두 삭제됩니다. (기본값은 아무것도 삭제하지 않는 것입니다.)
다음은 현재 폴더의 jpg 파일에 대해 이 명령을 실행하고 추출된 사진을 extracted
하위 폴더에 배치하는 bash 스크립트입니다.
mkdir extracted; for PHOTO in *.jpg; do multicrop -c 50,50 -f 40 -d 50 $PHOTO extracted/$PHOTO; done