문제

현재 많은 수의 JPG 이미지 (종이 문서 스캔)가있는 디렉토리가 있습니다.

많은 사람들이 아니라 모든 것이 실제로 색상이 있거나 배경으로 만 색상이 있지 않습니다 (예 : 착색 된 종이 또는 약간의 흰색 스캔).

디스크 공간을 절약하기 위해 그 이미지 (실제 색상의 이미지가없는 이미지가 아닌 이미지가 아님)를 대량 변환하고 싶습니다.

ImageMagick 에서이 작업을 수행 할 수있는 방법이 있음을 추측하지만 어떻게 알지 못합니다.제안?

도움이 되었습니까?

해결책

ImageMagick의 mogrify 유틸리티가 가장 간단한 해결책이 될 것입니다.

mogrify -path /path/to/output/dir/ -colorspace Gray /path/to/source/files
.

실제 색상만큼이나 자격을 갖는 문서를 식별하는 기능은 매우 현지화 될 수 있습니다.나는 각 이미지가있는 경우 색상 수를 평가할 것을 제안하고 주어진 임계 값 아래로 떨어지는 이미지 만 변환합니다.

THRESHOLD=1024
FILES=`ls /path/to/source/files`
for FILE in ${FILES}; do
COLORS=`identify -format %k "$FILE"`
if [[ $COLORS -lt $THRESHOLD ]]; then
  mogrify -path /path/to/output/dir/ -colorspace Gray "$FILE"
fi
.

소음을 줄이기 위해 사전 처리 옵션을 평가하는 것이 현명 할 수도 있습니다. 흑백 적용 할 수있는 가장 쉽지만 기타 훌륭한 솔루션 존재합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top