update brightness and contrast control

This commit is contained in:
Dirk Surmann 2022-01-01 13:23:44 +01:00
parent 476e730135
commit 13c40dcfce
2 changed files with 12 additions and 10 deletions

11
scan
View File

@ -32,7 +32,7 @@ DRIVER_OPTION=
VERBOSE=0 VERBOSE=0
SKIP_EMPTY_PAGES=0 SKIP_EMPTY_PAGES=0
WHITE_THRESHOLD=99.8 WHITE_THRESHOLD=99.8
BRIGHTNESS=0 BRIGHTNESS_CONTRAST=
SOURCE="" SOURCE=""
TMP_DIR=$(mktemp -d -p "" scan.XXXXXXXXXX) TMP_DIR=$(mktemp -d -p "" scan.XXXXXXXXXX)
@ -98,7 +98,7 @@ while [[ $# > 0 ]]; do
-xo|--driver-options) shift; DRIVER_OPTION=$1;; -xo|--driver-options) shift; DRIVER_OPTION=$1;;
--brightness) BRIGHTNESS=1 ;; --brightness-contrast-sw) shift; BRIGHTNESS_CONTRAST=$1 ;;
*) if [[ $USEARRAY == 1 ]]; then OUTPUTARR+=("$1"); else echo >&2 "Unknown argument: $1"; exit 1; fi ;; *) if [[ $USEARRAY == 1 ]]; then OUTPUTARR+=("$1"); else echo >&2 "Unknown argument: $1"; exit 1; fi ;;
@ -153,8 +153,9 @@ if [[ $HELP == 1 ]]; then
echo " remove empty pages from resulting PDF document (e.g. one sided doc in duplex mode)" echo " remove empty pages from resulting PDF document (e.g. one sided doc in duplex mode)"
echo " --white-threshold" echo " --white-threshold"
echo " threshold to identify an empty page is a percentage value between 0 and 100. The default is 99.8" echo " threshold to identify an empty page is a percentage value between 0 and 100. The default is 99.8"
echo " --brightness" echo " --brightness-contrast-sw"
echo " Increase brightness and contrast in post-processing" echo " Alter brightness and contrast via post-processing - prefer specifying brightness and/or"
echo " contrast via --driver-options if supported by your hardware."
echo "" echo ""
echo "OUTPUT" echo "OUTPUT"
echo " -o, --output <outputfile>" echo " -o, --output <outputfile>"
@ -278,7 +279,7 @@ export PGHEIGHTIN
export PS2PDF_OPTS export PS2PDF_OPTS
export SKIP_EMPTY_PAGES export SKIP_EMPTY_PAGES
export WHITE_THRESHOLD export WHITE_THRESHOLD
export BRIGHTNESS export BRIGHTNESS_CONTRAST
if [[ $VERBOSE == 1 ]]; then if [[ $VERBOSE == 1 ]]; then
LOCKFILE=$(mktemp) LOCKFILE=$(mktemp)

View File

@ -14,7 +14,7 @@ usage()
echo " PGWIDTHIN" echo " PGWIDTHIN"
echo " PGHEIGHTIN" echo " PGHEIGHTIN"
echo " SKIP_EMPTY_PAGES" echo " SKIP_EMPTY_PAGES"
echo " BRIGHTNESS" echo " BRIGHTNESS_CONTRAST"
echo " PS2PDF_OPTS (optional)" echo " PS2PDF_OPTS (optional)"
echo " VERBOSE (optional)" echo " VERBOSE (optional)"
echo " LOCKFILE (required if VERBOSE=1)" echo " LOCKFILE (required if VERBOSE=1)"
@ -51,7 +51,7 @@ if [[ $# < 1 ]]; then
exit 1 exit 1
fi fi
if [[ "$UNPAPER" == "" || "$SEARCHABLE" == "" || "$RESOLUTION" == "" || "$RESOLUTION" == "" || "$SKIP_EMPTY_PAGES" == "" || "$BRIGHTNESS" == "" ]]; then if [[ "$UNPAPER" == "" || "$SEARCHABLE" == "" || "$RESOLUTION" == "" || "$RESOLUTION" == "" || "$SKIP_EMPTY_PAGES" == "" ]]; then
usage usage
exit 1 exit 1
fi fi
@ -68,11 +68,12 @@ fi
process_page() { process_page() {
log "" log ""
log "-------------------------------------------------------------------------------" log "-------------------------------------------------------------------------------"
log "Post-processing scanned page ${IMAGE_PATH}, deskew=$UNPAPER, searchable=$SEARCHABLE, skip-empty-pages=$SKIP_EMPTY_PAGES, white-threshold=$WHITE_THRESHOLD, brightness=$BRIGHTNESS..." log "Post-processing scanned page ${IMAGE_PATH}, deskew=$UNPAPER, searchable=$SEARCHABLE, skip-empty-pages=$SKIP_EMPTY_PAGES, white-threshold=$WHITE_THRESHOLD, brightness-contrast-sw=$BRIGHTNESS_CONTRAST..."
log "-------------------------------------------------------------------------------" log "-------------------------------------------------------------------------------"
if [[ $BRIGHTNESS == 1 ]]; then if [[ "$BRIGHTNESS_CONTRAST" != "" ]]; then
convert "$IMAGE_PATH" -brightness-contrast 20x10 "$IMAGE_PATH" log "Adjust brightness and contrast in ImageMagick by $BRIGHTNESS_CONTRAST"
convert "$IMAGE_PATH" -brightness-contrast $BRIGHTNESS_CONTRAST "$IMAGE_PATH"
fi fi
if [[ $SKIP_EMPTY_PAGES == 1 ]]; then if [[ $SKIP_EMPTY_PAGES == 1 ]]; then