~thedsweb/easyphoto/experimental

« back to all changes in this revision

Viewing changes to easyphoto

  • Committer: Dominik Brämer
  • Date: 2014-07-31 09:22:19 UTC
  • Revision ID: dominik@thedscomputer-20140731092219-s1fukxb0q1z4iawp
pre-release version c 1.15.22

Show diffs side-by-side

added added

removed removed

Lines of Context:
45
45
#----------------------------------------------------------------------------------------
46
46
 
47
47
#Config file-----------------------------------------------------------------------------
48
 
# Generate a config file if it dosent exist
49
 
# and read it in
50
 
# Also regenerate config at fail
51
 
if [[ ! -f "$HOME/.easyphoto.conf" ]]; then
52
 
  cat "/usr/share/easyphoto/lang/"$lang"/"$lang"_easyphoto_conf.txt" > "$HOME/.easyphoto.conf"
53
 
fi
54
 
. "$HOME/.easyphoto.conf" 2>/dev/null
55
 
if [[ "$?" -ne "0" ]]; then
56
 
  cat "/usr/share/easyphoto/lang/"$lang"/"$lang"_easyphoto_conf.txt" > "$HOME/.easyphoto.conf"
57
 
  . "$HOME/.easyphoto.conf" 2>/dev/null
 
48
# Read config file
 
49
. "/usr/share/easyphoto/easyphoto.conf"
 
50
#----------------------------------------------------------------------------------------
 
51
 
 
52
#Quality backcheck-----------------------------------------------------------------------
 
53
if [[ "$quality" == "" ]] || [[ "$quality" -lt "1" ]] || [[ "$quality" -gt "100" ]]; then
 
54
  quality="90"
 
55
  awk 'NR==22 {print;exit}' "/usr/share/easyphoto/lang/"$lang"/"$lang"_easyphoto.txt"
58
56
fi
59
57
#----------------------------------------------------------------------------------------
60
58
 
62
60
# Get the CPU Core number to set the number of
63
61
# maximum parallel processes with the variable
64
62
# $spec  
65
 
if [[ "$(grep -c "processor" "/proc/cpuinfo")" == "1" ]]; then 
 
63
if [[ "$parallel_processing" != "true" ]] && [[ "$parallel_processing" != "false" ]]; then
 
64
  parallel_processing="true"
 
65
  awk 'NR==22 {print;exit}' "/usr/share/easyphoto/lang/"$lang"/"$lang"_easyphoto.txt"
 
66
fi
 
67
if [[ "$parallel_processing" == "false" ]]; then 
 
68
  spec="1"
 
69
else
66
70
  spec="$(grep -c "processor" "/proc/cpuinfo")"
67
 
else
68
 
  if identify --version | grep -i "openmp" 1>/dev/null; then 
69
 
    spec="$(($(grep -c "processor" "/proc/cpuinfo")*15/10))"
70
 
  else
71
 
    awk 'NR==21 {print;exit}' "/usr/share/easyphoto/lang/"$lang"/"$lang"_easyphoto.txt"
72
 
  fi
73
71
fi
74
72
#----------------------------------------------------------------------------------------
75
73
 
191
189
  # interrupted
192
190
  trap "rm -f -r /tmp/eptmp; exit" SIGTERM
193
191
  #--------------------------------------------------------------------------------------
194
 
  
195
192
  if [[ ! -d "$1" ]]; then
196
193
    mkdir "/tmp/eptmp"
197
194
    local tmpdir="`dirname "$1"`"
198
195
    cp "$1" "/tmp/eptmp/`basename "$1"`"
199
196
    if [[ "$5" -eq "0" ]]; then
200
 
      console "/tmp/eptmp" "$2" "$3" "$4" "$5"
 
197
      console "/tmp/eptmp" "$2" "$3" "$4"
201
198
    else
202
199
      noise "/tmp/eptmp" "$2"
203
200
    fi
205
202
    rm -r "/tmp/eptmp"
206
203
  else
207
204
    if [[ "$5" -eq "0" ]]; then
208
 
      console "$1" "$2" "$3" "$4" "$5"
 
205
      console "$1" "$2" "$3" "$4"
209
206
    else
210
207
      noise "$1" "$2"
211
208
    fi
279
276
          dupes "$path" "1"
280
277
        fi
281
278
        if [[ "$o" == "$(awk 'NR==9 {print;exit}' "/usr/share/easyphoto/lang/"$lang"/"$lang"_easyphoto.txt")" ]]; then
282
 
                  checkdir "$path" "1" "1" "0" "0"
 
279
                  checkdir "$path" "1" "1" "0"
283
280
                else
284
 
                  checkdir "$path" "0" "1" "0" "0"
 
281
                  checkdir "$path" "0" "1" "0"
285
282
                fi
286
283
                        kill $zen
287
284
              zenity --info --text="$(awk 'NR==17 {print;exit}' "/usr/share/easyphoto/lang/"$lang"/"$lang"_easyphoto.txt")" --title="$(awk 'NR==11 {print;exit}' "/usr/share/easyphoto/lang/"$lang"/"$lang"_easyphoto.txt")" --window-icon="/usr/share/easyphoto/epicon.png"
310
307
# enabled an optimized binning factor
311
308
# $1 = image width
312
309
# $2 = image heigh
313
 
# $3 = console(0) or anoise(1)
314
 
if [[ "$binning_ppi" == "" ]]; then
 
310
# $3 = console(0) or noise(1)
 
311
if [[ "$binning_ppi" == "" ]] || [[ "$binning_ppi" -lt 250 ]] || [[ "$binning_ppi" -gt 600 ]]; then
315
312
  binning_ppi="300"
316
 
elif [[ "$binning_ppi" -lt 250 ]]; then
317
 
  binning_ppi="250"
318
 
elif [[ "$binning_ppi" -gt 600 ]]; then
319
 
  binning_ppi="600"
 
313
  awk 'NR==22 {print;exit}' "/usr/share/easyphoto/lang/"$lang"/"$lang"_easyphoto.txt"
320
314
fi
321
315
if [[ "$3" -eq "0" ]]; then
322
316
  case $binning in
323
317
    none)
324
318
      local varbin="100";;
325
319
    dynamic)
326
 
      local varbin="$(echo "100000*sqrt(13)*$binning_ppi/(127*sqrt($1^2+$2^2))" | bc -l)"
 
320
      local varbin="$(echo "100000*sqrt(13)*$binning_ppi/(381*sqrt($1^2+$2^2))" | bc -l)"
327
321
      if [[ "${varbin%.*}" -lt "33" ]]; then
328
322
        local varbin="33.33"
329
323
      fi
333
327
    3)
334
328
      local varbin="33.33";;
335
329
    *)
336
 
      local varbin="$(echo "100000*sqrt(13)*$binning_ppi/(127*sqrt($1^2+$2^2))" | bc -l)"
 
330
      local varbin="$(echo "100000*sqrt(13)*$binning_ppi/(381*sqrt($1^2+$2^2))" | bc -l)"
337
331
      if [[ "${varbin%.*}" -lt "33" ]]; then
338
332
        local varbin="33.33"
339
333
      fi
 
334
      awk 'NR==22 {print;exit}' "/usr/share/easyphoto/lang/"$lang"/"$lang"_easyphoto.txt"
340
335
      ;;
341
336
  esac
342
337
else    
343
338
  case $binning_anoise in
344
339
    dynamic)
345
 
      local varbin="$(echo "100000*sqrt(13)*$binning_ppi/(127*sqrt($1^2+$2^2))" | bc -l)"
 
340
      local varbin="$(echo "100000*sqrt(13)*$binning_ppi/(381*sqrt($1^2+$2^2))" | bc -l)"
346
341
      if [[ "${varbin%.*}" -lt "33" ]]; then
347
342
        local varbin="33.33"
348
343
      fi
352
347
    3)
353
348
      local varbin="33.33";;
354
349
    *)
355
 
      local varbin="$(echo "100000*sqrt(13)*$binning_ppi/(127*sqrt($1^2+$2^2))" | bc -l)"
 
350
      local varbin="$(echo "100000*sqrt(13)*$binning_ppi/(381*sqrt($1^2+$2^2))" | bc -l)"
356
351
      if [[ "${varbin%.*}" -lt "33" ]]; then
357
352
        local varbin="33.33"
358
353
      fi
 
354
      awk 'NR==22 {print;exit}' "/usr/share/easyphoto/lang/"$lang"/"$lang"_easyphoto.txt"
359
355
      ;;
360
356
  esac
361
357
fi
373
369
# $1 = directory
374
370
# $2 = Overwrite(1) or not(0)
375
371
# $3 = Console(0) or zenity(1) output
376
 
# $4 = optimization for fast option
377
 
#      on(1) or off(0)
378
 
# $5 = convert Raw(1) or not(0) 
379
 
  if [[ "$5" -eq "1" ]]; then
 
372
# $4 = convert Raw(1) or not(0) 
 
373
  if [[ "$4" -eq "1" ]]; then
380
374
    raw "$1"
381
375
  fi
382
376
  #Preload standard output text----------------------------------------------------------
389
383
    
390
384
    (
391
385
    #Delete 0Byte Files------------------------------------------------------------------
392
 
    if [[ "$4" -eq "0" ]]; then
393
 
      if [[ ! -s "$i" ]]; then
394
 
        rm "$i"
395
 
        continue
396
 
      fi
 
386
    if [[ ! -s "$i" ]]; then
 
387
      rm "$i"
 
388
      continue
397
389
    fi
398
390
    #------------------------------------------------------------------------------------
399
391
    
400
 
    #Override check----------------------------------------------------------------------
 
392
    #Overwrite check---------------------------------------------------------------------
401
393
    if [[ "$2" -eq "0" ]]; then
402
394
      local outp="${i%.[jJ][pP][gG]}edit.jpg"
403
395
    else
438
430
    local flash="${flash%,*,*,*}"
439
431
    #If no data is available
440
432
    if [[ "$flash" == "" ]]; then
441
 
      local flash="0"
 
433
      local flash="1"
442
434
    fi
443
435
    #Brightness
444
436
    local mean="${mfip%,*,*,*,*}"
447
439
    #------------------------------------------------------------------------------------
448
440
    if [[ "${mean%.*}" -lt "8000" ]]; then
449
441
      #Deep Night
450
 
      if [[ "$4" -eq "0" ]]; then
451
 
        local abin="$(binning "$wid" "$hei" "0")"
 
442
      if [[ "$iso" -ge "800" ]]; then 
 
443
        local abin=$(binning "$wid" "$hei" "0")
452
444
        if [[ "${abin%.*}" -lt "100" ]]; then
453
 
          convert "$i" -level 0%,100%,0.875 -crop ""$wid"x"$hei"+0+0" +repage -filter box -scale "$abin"% -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality 90 "$outp"
 
445
          convert "$i" -level 0%,100%,0.875 -crop ""$wid"x"$hei"+0+0" +repage -filter box -scale "$abin"% -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
454
446
        else
455
 
          convert "$i" -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 3:1:0 -quality 75 "$outp"
 
447
          convert "$i" -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
456
448
        fi
457
449
      else
458
 
        convert "$i" -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 3:1:0 -quality 75 "$outp"
 
450
        convert "$i" -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
459
451
      fi
 
452
      #Notification
460
453
      if [[ "$3" -eq "0" ]]; then
461
454
        echo "${i##*/} $rea"
462
455
      else
467
460
    #------------------------------------------------------------------------------------
468
461
    if [[ "${mean%.*}" -lt "12500" ]]; then
469
462
      #Night + Binning
470
 
      if [[ "$iso" -gt "600" ]] && [[ "$flash" != "0" ]] && [[ "$flash" != "8" ]] && [[ "$flash" != "16" ]] && [[ "$flash" != "20" ]] && [[ "$flash" != "24" ]] && [[ "$flash" != "32" ]] && [[ "$flash" != "48" ]] && [[ "$flash" != "80" ]] && [[ "$flash" != "88" ]] || [[ "$iso" -ge "800" ]]; then
 
463
      if [[ "$iso" -ge "800" ]] && [[ "$flash" != "0" ]] && [[ "$flash" != "8" ]] && [[ "$flash" != "16" ]] && [[ "$flash" != "20" ]] && [[ "$flash" != "24" ]] && [[ "$flash" != "32" ]] && [[ "$flash" != "48" ]] && [[ "$flash" != "80" ]] && [[ "$flash" != "88" ]]; then
471
464
        #Flash
472
 
        local abin="$(binning "$wid" "$hei" "0")"
 
465
        local abin=$(binning "$wid" "$hei" "0")
473
466
        if [[ "${abin%.*}" -lt "100" ]]; then
474
 
          if [[ "$4" -eq "0" ]]; then
475
 
            convert "$i" -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -crop ""$wid"x"$hei"+0+0" +repage -filter box -scale "$abin"% -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality 90 "$outp"
476
 
          else
477
 
            convert "$i" -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 3:1:0 -quality 75 "$outp"
478
 
          fi
479
 
        else
480
 
          if [[ "$4" -eq "0" ]]; then
481
 
            convert "$i" -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality 90 "$outp"
482
 
          else
483
 
            convert "$i" -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 3:1:0 -quality 75 "$outp"
484
 
          fi
485
 
        fi
486
 
        if [[ "$3" -eq "0" ]]; then
487
 
          echo "${i##*/} $rea"
488
 
        else
489
 
          zenity --notification --window-icon="/usr/share/easyphoto/epicon.png" --text="${i##*/} $rea" --timeout=1
490
 
        fi
491
 
        continue
492
 
      elif [[ "$iso" -le "600" ]] && [[ "$flash" != "0" ]] && [[ "$flash" != "8" ]] && [[ "$flash" != "16" ]] && [[ "$flash" != "20" ]] && [[ "$flash" != "24" ]] && [[ "$flash" != "32" ]] && [[ "$flash" != "48" ]] && [[ "$flash" != "80" ]] && [[ "$flash" != "88" ]] || [[ "$iso" -ge "800" ]]; then
 
467
          convert "$i" -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -crop ""$wid"x"$hei"+0+0" +repage -filter box -scale "$abin"% -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
 
468
        else
 
469
          convert "$i" -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
 
470
        fi
 
471
      elif [[ "$iso" -le "800" ]] && [[ "$flash" != "0" ]] && [[ "$flash" != "8" ]] && [[ "$flash" != "16" ]] && [[ "$flash" != "20" ]] && [[ "$flash" != "24" ]] && [[ "$flash" != "32" ]] && [[ "$flash" != "48" ]] && [[ "$flash" != "80" ]] && [[ "$flash" != "88" ]]; then
493
472
        #Flash without Binning
494
 
        if [[ "$4" -eq "0" ]]; then
495
 
          convert "$i" -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality 90 "$outp"
496
 
        else
497
 
          convert "$i" -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 3:1:0 -quality 75 "$outp"
498
 
        fi
499
 
        if [[ "$3" -eq "0" ]]; then
500
 
          echo "${i##*/} $rea"
501
 
        else
502
 
          zenity --notification --window-icon="/usr/share/easyphoto/epicon.png" --text="${i##*/} $rea" --timeout=1
503
 
        fi
504
 
        continue
505
 
      else
506
 
        #No Flash 
507
 
        local abin="$(binning "$wid" "$hei" "0")"
 
473
        convert "$i" -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
 
474
      elif [[ "$iso" -ge "800" ]]; then
 
475
        #No Flash + Binning
 
476
        local abin=$(binning "$wid" "$hei" "0")
508
477
        if [[ "${abin%.*}" -lt "100" ]]; then
509
 
          if [[ "$4" -eq "0" ]]; then
510
 
            convert "$i" -gamma 0.85,1.0,1.0 -contrast-stretch 1% -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -gamma 0.80,0.80,1.0 -crop ""$wid"x"$hei"+0+0" +repage -filter box -scale "$abin"% -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality 90 "$outp"
511
 
          else
512
 
            convert "$i" -gamma 0.85,1.0,1.0 -contrast-stretch 1% -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -gamma 0.80,0.80,1.0 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 3:1:0 -quality 75 "$outp"
513
 
          fi
514
 
        else
515
 
          if [[ "$4" -eq "0" ]]; then
516
 
            convert "$i" -gamma 0.85,1.0,1.0 -contrast-stretch 1% -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -gamma 0.80,0.80,1.0 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality 90 "$outp"
517
 
          else
518
 
            convert "$i" -gamma 0.85,1.0,1.0 -contrast-stretch 1% -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -gamma 0.80,0.80,1.0 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 3:1:0 -quality 75 "$outp"
519
 
          fi
520
 
        fi
521
 
        if [[ "$3" -eq "0" ]]; then
522
 
          echo "${i##*/} $rea"
523
 
        else
524
 
          zenity --notification --window-icon="/usr/share/easyphoto/epicon.png" --text="${i##*/} $rea" --timeout=1
525
 
        fi
526
 
        continue
527
 
      fi
 
478
          convert "$i" -contrast-stretch 1% -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -gamma 0.85,1.0,1.0 -crop ""$wid"x"$hei"+0+0" +repage -filter box -scale "$abin"% -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
 
479
        else
 
480
          convert "$i" -contrast-stretch 1% -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -gamma 0.85,1.0,1.0 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
 
481
        fi
 
482
      else
 
483
        #No Flash
 
484
        convert "$i" -contrast-stretch 1% -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -gamma 0.85,1.0,1.0 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
 
485
      fi
 
486
      #Notification
 
487
      if [[ "$3" -eq "0" ]]; then
 
488
        echo "${i##*/} $rea"
 
489
      else
 
490
        zenity --notification --window-icon="/usr/share/easyphoto/epicon.png" --text="${i##*/} $rea" --timeout=1
 
491
      fi
 
492
      continue
528
493
    fi
529
494
    #------------------------------------------------------------------------------------
530
495
    if [[ "${mean%.*}" -lt "20000" ]]; then
531
496
      #Twilight/Dark Room
532
 
      if [[ "$iso" -gt "600" ]] && [[ "$flash" != "0" ]] && [[ "$flash" != "8" ]] && [[ "$flash" != "16" ]] && [[ "$flash" != "20" ]] && [[ "$flash" != "24" ]] && [[ "$flash" != "32" ]] && [[ "$flash" != "48" ]] && [[ "$flash" != "80" ]] && [[ "$flash" != "88" ]] || [[ "$iso" -ge "800" ]]; then
533
 
        #Flash
534
 
        local abin="$(binning "$wid" "$hei" "0")"
 
497
      if [[ "$iso" -ge "800" ]] && [[ "$flash" != "0" ]] && [[ "$flash" != "8" ]] && [[ "$flash" != "16" ]] && [[ "$flash" != "20" ]] && [[ "$flash" != "24" ]] && [[ "$flash" != "32" ]] && [[ "$flash" != "48" ]] && [[ "$flash" != "80" ]] && [[ "$flash" != "88" ]]; then
 
498
        #Flash + Binning
 
499
        local abin=$(binning "$wid" "$hei" "0")
535
500
        if [[ "${abin%.*}" -lt "100" ]]; then
536
 
          if [[ "$4" -eq "0" ]]; then
537
 
            convert "$i" -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -crop ""$wid"x"$hei"+0+0" +repage -filter box -scale "$abin"% -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality 90 "$outp"
538
 
          else
539
 
            convert "$i" -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 3:1:0 -quality 75 "$outp"
540
 
          fi
 
501
          convert "$i" -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -crop ""$wid"x"$hei"+0+0" +repage -filter box -scale "$abin"% -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
541
502
        else
542
 
          if [[ "$4" -eq "0" ]]; then
543
 
            convert "$i" -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality 90 "$outp"
544
 
          else
545
 
            convert "$i" -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 3:1:0 -quality 75 "$outp"
546
 
          fi
 
503
          convert "$i" -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
547
504
        fi
548
505
        if [[ "$3" -eq "0" ]]; then
549
506
          echo "${i##*/} $rea"
551
508
          zenity --notification --window-icon="/usr/share/easyphoto/epicon.png" --text="${i##*/} $rea" --timeout=1
552
509
        fi
553
510
        continue
554
 
      elif [[ "$iso" -le "600" ]] && [[ "$flash" != "0" ]] && [[ "$flash" != "8" ]] && [[ "$flash" != "16" ]] && [[ "$flash" != "20" ]] && [[ "$flash" != "24" ]] && [[ "$flash" != "32" ]] && [[ "$flash" != "48" ]] && [[ "$flash" != "80" ]] && [[ "$flash" != "88" ]] || [[ "$iso" -ge "800" ]]; then
 
511
      elif [[ "$iso" -le "800" ]] && [[ "$flash" != "0" ]] && [[ "$flash" != "8" ]] && [[ "$flash" != "16" ]] && [[ "$flash" != "20" ]] && [[ "$flash" != "24" ]] && [[ "$flash" != "32" ]] && [[ "$flash" != "48" ]] && [[ "$flash" != "80" ]] && [[ "$flash" != "88" ]]; then
555
512
        #Flash without Binning
556
 
        if [[ "$4" -eq "0" ]]; then
557
 
          convert "$i" -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality 90 "$outp"
558
 
        else
559
 
          convert "$i" -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 3:1:0 -quality 75 "$outp"
560
 
        fi
 
513
        convert "$i" -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
561
514
        if [[ "$3" -eq "0" ]]; then
562
515
          echo "${i##*/} $rea"
563
516
        else
564
517
          zenity --notification --window-icon="/usr/share/easyphoto/epicon.png" --text="${i##*/} $rea" --timeout=1
565
518
        fi
566
519
        continue
 
520
      elif [[ "$iso" -ge "800" ]]; then
 
521
        #No Flash + Binning
 
522
        local color=$(identify -ping -format %k "$i")
 
523
        local abin=$(binning "$wid" "$hei" "0")
 
524
        if [[ "$color" -gt "60000" ]]; then
 
525
          if [[ "${abin%.*}" -lt "100" ]]; then
 
526
            convert "$i" -contrast-stretch 1% -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -crop ""$wid"x"$hei"+0+0" +repage -filter box -scale "$abin"% -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
 
527
          else
 
528
            convert "$i" -contrast-stretch 1% -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
 
529
          fi
 
530
        elif [[ "$color" -gt "40000" ]]; then
 
531
          if [[ "${abin%.*}" -lt "100" ]]; then
 
532
            convert "$i" -contrast-stretch 0.1% -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -crop ""$wid"x"$hei"+0+0" +repage -filter box -scale "$abin"% -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
 
533
          else
 
534
            convert "$i" -contrast-stretch 0.1% -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
 
535
          fi
 
536
        else
 
537
          if [[ "${abin%.*}" -lt "100" ]]; then
 
538
            convert "$i" -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -crop ""$wid"x"$hei"+0+0" +repage -filter box -scale "$abin"% -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
 
539
          else
 
540
            convert "$i" -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
 
541
          fi
 
542
        fi
567
543
      else
568
544
        #No Flash
569
 
        local abin="$(binning "$wid" "$hei" "0")"
570
 
        if [[ "${abin%.*}" -lt "100" ]]; then
571
 
          local color=$(identify -ping -format %k "$i")
572
 
          if [[ "$color" -gt "60000" ]]; then
573
 
            if [[ "$4" -eq "0" ]]; then
574
 
              convert "$i" -contrast-stretch 1% -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -crop ""$wid"x"$hei"+0+0" +repage -filter box -scale "$abin"% -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality 90 "$outp"
575
 
            else
576
 
              convert "$i" -contrast-stretch 1% -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 3:1:0 -quality 75 "$outp"
577
 
            fi
578
 
          elif [[ "$color" -gt "40000" ]]; then
579
 
            if [[ "$4" -eq "0" ]]; then
580
 
              convert "$i" -contrast-stretch 0.1% -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -crop ""$wid"x"$hei"+0+0" +repage -filter box -scale "$abin"% -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality 90 "$outp"
581
 
            else
582
 
              convert "$i" -contrast-stretch 0.1% -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 3:1:0 -quality 75 "$outp"
583
 
            fi
584
 
          else
585
 
            if [[ "$4" -eq "0" ]]; then
586
 
              convert "$i" -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -crop ""$wid"x"$hei"+0+0" +repage -filter box -scale "$abin"% -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality 90 "$outp"
587
 
            else
588
 
              convert "$i" -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 3:1:0 -quality 75 "$outp"
589
 
            fi
590
 
          fi
591
 
          if [[ "$3" -eq "0" ]]; then
592
 
            echo "${i##*/} $rea"
593
 
          else
594
 
            zenity --notification --window-icon="/usr/share/easyphoto/epicon.png" --text="${i##*/} $rea" --timeout=1
595
 
          fi
596
 
          continue
 
545
        local color=$(identify -ping -format %k "$i")
 
546
        if [[ "$color" -gt "60000" ]]; then
 
547
          convert "$i" -contrast-stretch 1% -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
 
548
        elif [[ "$color" -gt "40000" ]]; then
 
549
          convert "$i" -contrast-stretch 0.1% -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
597
550
        else
598
 
          if [[ "$4" -eq "0" ]]; then
599
 
            convert "$i" -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -gamma 1.10,1.05,1.0 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality 90 "$outp"
600
 
          else
601
 
            convert "$i" -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -gamma 1.10,1.05,1.0 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 3:1:0 -quality 75 "$outp"
602
 
          fi
603
 
          if [[ "$3" -eq "0" ]]; then
604
 
            echo "${i##*/} $rea"
605
 
          else
606
 
            zenity --notification --window-icon="/usr/share/easyphoto/epicon.png" --text="${i##*/} $rea" --timeout=1
607
 
          fi
608
 
          continue
 
551
          convert "$i" -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
609
552
        fi
610
553
      fi
 
554
      #Notification
 
555
      if [[ "$3" -eq "0" ]]; then
 
556
        echo "${i##*/} $rea"
 
557
      else
 
558
        zenity --notification --window-icon="/usr/share/easyphoto/epicon.png" --text="${i##*/} $rea" --timeout=1
 
559
      fi
 
560
      continue
611
561
    fi
612
562
    #------------------------------------------------------------------------------------
613
563
    if [[ "${mean%.*}" -lt "26000" ]]; then
614
564
      #Twilight/Bright Room
615
 
      if [[ "$flash" != "0" ]] && [[ "$flash" != "8" ]] && [[ "$flash" != "16" ]] && [[ "$flash" != "20" ]] && [[ "$flash" != "24" ]] && [[ "$flash" != "32" ]] && [[ "$flash" != "48" ]] && [[ "$flash" != "80" ]] && [[ "$flash" != "88" ]] || [[ "$iso" -ge "800" ]]; then
616
 
        #Flash
617
 
        if [[ "$iso" -ge "800" ]]; then
618
 
          local abin="$(binning "$wid" "$hei" "0")"
619
 
          if [[ "${abin%.*}" -lt "100" ]]; then
620
 
            if [[ "$4" -eq "0" ]]; then
621
 
              convert "$i" -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -crop ""$wid"x"$hei"+0+0" +repage -filter box -scale "$abin"% -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality 90 "$outp"
622
 
            else
623
 
              convert "$i" -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 3:1:0 -quality 75 "$outp"
624
 
            fi
625
 
          else
626
 
            if [[ "$4" -eq "0" ]]; then
627
 
              convert "$i" -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality 90 "$outp"
628
 
            else
629
 
              convert "$i" -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 3:1:0 -quality 75 "$outp"
630
 
            fi
631
 
          fi
632
 
        else
633
 
          if [[ "$4" -eq "0" ]]; then
634
 
            convert "$i" -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality 90 "$outp"
635
 
          else
636
 
            convert "$i" -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 3:1:0 -quality 75 "$outp"
637
 
          fi
 
565
      if [[ "$iso" -ge "800" ]] && [[ "$flash" != "0" ]] && [[ "$flash" != "8" ]] && [[ "$flash" != "16" ]] && [[ "$flash" != "20" ]] && [[ "$flash" != "24" ]] && [[ "$flash" != "32" ]] && [[ "$flash" != "48" ]] && [[ "$flash" != "80" ]] && [[ "$flash" != "88" ]]; then
 
566
        #Flash + Binning
 
567
        local abin=$(binning "$wid" "$hei" "0")
 
568
        if [[ "${abin%.*}" -lt "100" ]]; then
 
569
          convert "$i" -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -crop ""$wid"x"$hei"+0+0" +repage -filter box -scale "$abin"% -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
 
570
        else
 
571
          convert "$i" -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
 
572
        fi
 
573
      elif [[ "$iso" -lt "800" ]] && [[ "$flash" != "0" ]] && [[ "$flash" != "8" ]] && [[ "$flash" != "16" ]] && [[ "$flash" != "20" ]] && [[ "$flash" != "24" ]] && [[ "$flash" != "32" ]] && [[ "$flash" != "48" ]] && [[ "$flash" != "80" ]] && [[ "$flash" != "88" ]]; then
 
574
        #Flash without Binning
 
575
        convert "$i" -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
 
576
      elif [[ "$iso" -ge "800" ]]; then
 
577
        #No Flash + Binning
 
578
        local abin=$(binning "$wid" "$hei" "0")
 
579
        if [[ "${abin%.*}" -lt "100" ]]; then
 
580
          convert "$i" -contrast-stretch 1% -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -crop ""$wid"x"$hei"+0+0" +repage -filter box -scale "$abin"% -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
 
581
        else
 
582
          convert "$i" -contrast-stretch 1% -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
638
583
        fi
639
584
      else
640
585
        #No Flash
641
 
        if [[ "$4" -eq "0" ]]; then
642
 
          convert "$i" -contrast-stretch 1% -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality 90 "$outp"
643
 
        else
644
 
          convert "$i" -contrast-stretch 1% -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 3:1:0 -quality 75 "$outp"
645
 
        fi
 
586
        convert "$i" -contrast-stretch 1% -sigmoidal-contrast 0.5,0% -level 0%,100%,0.875 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
646
587
      fi
 
588
      #Notification
647
589
      if [[ "$3" -eq "0" ]]; then
648
590
        echo "${i##*/} $rea"
649
591
      else
652
594
      continue
653
595
    fi
654
596
    #------------------------------------------------------------------------------------
655
 
    if [[ "${mean%.*}" -le "32000" ]]; then
 
597
    if [[ "${mean%.*}" -lt "32000" ]]; then
656
598
      #Day
657
 
      if [[ "$flash" != "0" ]] && [[ "$flash" != "8" ]] && [[ "$flash" != "16" ]] && [[ "$flash" != "20" ]] && [[ "$flash" != "24" ]] && [[ "$flash" != "32" ]] && [[ "$flash" != "48" ]] && [[ "$flash" != "80" ]] && [[ "$flash" != "88" ]] || [[ "$iso" -ge "800" ]]; then 
658
 
        #Flash
659
 
        if [[ "$iso" -ge "800" ]]; then
660
 
          local abin="$(binning "$wid" "$hei" "0")"
661
 
          if [[ "${abin%.*}" -lt "100" ]]; then
662
 
            if [[ "$4" -eq "0" ]]; then
663
 
              convert "$i" -sigmoidal-contrast 0.75,0% -level 0%,100%,0.875 -gamma 1.10,1.05,1.0 -crop ""$wid"x"$hei"+0+0" +repage -filter box -scale "$abin"% -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality 90 "$outp"
664
 
            else
665
 
              convert "$i" -sigmoidal-contrast 0.75,0% -level 0%,100%,0.875 -gamma 1.10,1.05,1.0 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 3:1:0 -quality 75 "$outp"
666
 
            fi
667
 
          else
668
 
            if [[ "$4" -eq "0" ]]; then
669
 
              convert "$i" -sigmoidal-contrast 0.75,0% -level 0%,100%,0.875 -gamma 1.10,1.05,1.0 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality 90 "$outp"
670
 
            else
671
 
              convert "$i" -sigmoidal-contrast 0.75,0% -level 0%,100%,0.875 -gamma 1.10,1.05,1.0 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 3:1:0 -quality 75 "$outp"
672
 
            fi
673
 
          fi
674
 
        else
675
 
          if [[ "$4" -eq "0" ]]; then
676
 
            convert "$i" -sigmoidal-contrast 0.75,0% -level 0%,100%,0.875 -gamma 1.10,1.05,1.0 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality 90 "$outp"
677
 
          else
678
 
            convert "$i" -sigmoidal-contrast 0.75,0% -level 0%,100%,0.875 -gamma 1.10,1.05,1.0 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 3:1:0 -quality 75 "$outp"
679
 
          fi
680
 
        fi
681
 
        if [[ "$3" -eq "0" ]]; then
682
 
          echo "${i##*/} $rea"
683
 
        else
684
 
          zenity --notification --window-icon="/usr/share/easyphoto/epicon.png" --text="${i##*/} $rea" --timeout=1
685
 
        fi
686
 
        continue
 
599
      if [[ "$iso" -ge "1600" ]] && [[ "$flash" != "0" ]] && [[ "$flash" != "8" ]] && [[ "$flash" != "16" ]] && [[ "$flash" != "20" ]] && [[ "$flash" != "24" ]] && [[ "$flash" != "32" ]] && [[ "$flash" != "48" ]] && [[ "$flash" != "80" ]] && [[ "$flash" != "88" ]]; then 
 
600
        #Flash + Binning
 
601
        local abin=$(binning "$wid" "$hei" "0")
 
602
        if [[ "${abin%.*}" -lt "100" ]]; then
 
603
          convert "$i" -sigmoidal-contrast 0.75,0% -level 0%,100%,0.875 -gamma 1.10,1.05,1.0 -crop ""$wid"x"$hei"+0+0" +repage -filter box -scale "$abin"% -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
 
604
        else
 
605
          convert "$i" -sigmoidal-contrast 0.75,0% -level 0%,100%,0.875 -gamma 1.10,1.05,1.0 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
 
606
        fi
 
607
      elif [[ "$iso" -lt "1600" ]] && [[ "$flash" != "0" ]] && [[ "$flash" != "8" ]] && [[ "$flash" != "16" ]] && [[ "$flash" != "20" ]] && [[ "$flash" != "24" ]] && [[ "$flash" != "32" ]] && [[ "$flash" != "48" ]] && [[ "$flash" != "80" ]] && [[ "$flash" != "88" ]]; then 
 
608
        #Flash without Binning
 
609
        convert "$i" -sigmoidal-contrast 0.75,0% -level 0%,100%,0.875 -gamma 1.10,1.05,1.0 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
 
610
      elif [[ "$iso" -ge "1600" ]]; then
 
611
        #No Flash + Binning
 
612
        local abin=$(binning "$wid" "$hei" "0")
 
613
        local color=$(identify -ping -format %k "$i")
 
614
        if [[ "${abin%.*}" -lt "100" ]]; then
 
615
          if [[ "$color" -gt "60000" ]]; then
 
616
            convert "$i" -channel 'RGBA' -contrast-stretch 0.25% -sigmoidal-contrast 0.75,0% -level 0%,100%,0.875 -gamma 1.10,1.05,1.0 -crop ""$wid"x"$hei"+0+0" +repage -filter box -scale "$abin"% -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
 
617
          elif [[ "$color" -gt "45000" ]]; then
 
618
            convert "$i" -channel 'RGBA' -contrast-stretch 0.05% -sigmoidal-contrast 0.75,0% -level 0%,100%,0.875 -gamma 1.10,1.05,1.0 -crop ""$wid"x"$hei"+0+0" +repage -filter box -scale "$abin"% -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
 
619
          elif [[ "$color" -gt "40000" ]]; then
 
620
            convert "$i" -channel 'RGBA' -contrast-stretch 0.001% -sigmoidal-contrast 0.75,0% -level 0%,100%,0.875 -gamma 1.10,1.05,1.0 -crop ""$wid"x"$hei"+0+0" +repage -filter box -scale "$abin"% -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
 
621
          else
 
622
            convert "$i" -channel 'RGBA' -sigmoidal-contrast 0.75,0% -level 0%,100%,0.875 -gamma 1.10,1.05,1.0 -crop ""$wid"x"$hei"+0+0" +repage -filter box -scale "$abin"% -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
 
623
          fi
 
624
        else
 
625
          if [[ "$color" -gt "60000" ]]; then
 
626
            convert "$i" -channel 'RGBA' -contrast-stretch 0.25% -sigmoidal-contrast 0.75,0% -level 0%,100%,0.875 -gamma 1.10,1.05,1.0 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
 
627
          elif [[ "$color" -gt "45000" ]]; then
 
628
            convert "$i" -channel 'RGBA' -contrast-stretch 0.05% -sigmoidal-contrast 0.75,0% -level 0%,100%,0.875 -gamma 1.10,1.05,1.0 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
 
629
          elif [[ "$color" -gt "40000" ]]; then
 
630
            convert "$i" -channel 'RGBA' -contrast-stretch 0.001% -sigmoidal-contrast 0.75,0% -level 0%,100%,0.875 -gamma 1.10,1.05,1.0 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
 
631
          else
 
632
            convert "$i" -channel 'RGBA' -sigmoidal-contrast 0.75,0% -level 0%,100%,0.875 -gamma 1.10,1.05,1.0 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
 
633
          fi
 
634
        fi
687
635
      else
688
636
        #No Flash
689
637
        local color=$(identify -ping -format %k "$i")
690
638
        if [[ "$color" -gt "60000" ]]; then
691
 
          if [[ "$4" -eq "0" ]]; then
692
 
            convert "$i" -channel 'RGBA' -contrast-stretch 0.25% -sigmoidal-contrast 0.75,0% -level 0%,100%,0.875 -gamma 1.10,1.05,1.0 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality 90 "$outp"
693
 
          else
694
 
            convert "$i" -channel 'RGBA' -contrast-stretch 0.25% -sigmoidal-contrast 0.75,0% -level 0%,100%,0.875 -gamma 1.10,1.05,1.0 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 3:1:0 -quality 75 "$outp"
695
 
          fi
696
 
          if [[ "$3" -eq "0" ]]; then
697
 
            echo "${i##*/} $rea"
698
 
          else
699
 
            zenity --notification --window-icon="/usr/share/easyphoto/epicon.png" --text="${i##*/} $rea" --timeout=1
700
 
          fi
701
 
          continue
 
639
          convert "$i" -channel 'RGBA' -contrast-stretch 0.25% -sigmoidal-contrast 0.75,0% -level 0%,100%,0.875 -gamma 1.10,1.05,1.0 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
702
640
        elif [[ "$color" -gt "45000" ]]; then
703
 
          if [[ "$4" -eq "0" ]]; then
704
 
            convert "$i" -channel 'RGBA' -contrast-stretch 0.05% -sigmoidal-contrast 0.75,0% -level 0%,100%,0.875 -gamma 1.10,1.05,1.0 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality 90 "$outp"
705
 
          else
706
 
            convert "$i" -channel 'RGBA' -contrast-stretch 0.05% -sigmoidal-contrast 0.75,0% -level 0%,100%,0.875 -gamma 1.10,1.05,1.0 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 3:1:0 -quality 75 "$outp"
707
 
          fi
708
 
          if [[ "$3" -eq "0" ]]; then
709
 
            echo "${i##*/} $rea"
710
 
          else
711
 
            zenity --notification --window-icon="/usr/share/easyphoto/epicon.png" --text="${i##*/} $rea" --timeout=1
712
 
          fi
713
 
          continue
 
641
          convert "$i" -channel 'RGBA' -contrast-stretch 0.05% -sigmoidal-contrast 0.75,0% -level 0%,100%,0.875 -gamma 1.10,1.05,1.0 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
714
642
        elif [[ "$color" -gt "40000" ]]; then
715
 
          if [[ "$4" -eq "0" ]]; then
716
 
            convert "$i" -channel 'RGBA' -contrast-stretch 0.001% -sigmoidal-contrast 0.75,0% -level 0%,100%,0.875 -gamma 1.10,1.05,1.0 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality 90 "$outp"
717
 
          else
718
 
            convert "$i" -channel 'RGBA' -contrast-stretch 0.001% -sigmoidal-contrast 0.75,0% -level 0%,100%,0.875 -gamma 1.10,1.05,1.0 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 3:1:0 -quality 75 "$outp"
719
 
          fi
720
 
          if [[ "$3" -eq "0" ]]; then
721
 
            echo "${i##*/} $rea"
722
 
          else
723
 
            zenity --notification --window-icon="/usr/share/easyphoto/epicon.png" --text="${i##*/} $rea" --timeout=1
724
 
          fi
725
 
          continue
 
643
          convert "$i" -channel 'RGBA' -contrast-stretch 0.001% -sigmoidal-contrast 0.75,0% -level 0%,100%,0.875 -gamma 1.10,1.05,1.0 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
726
644
        else
727
 
          if [[ "$4" -eq "0" ]]; then
728
 
            convert "$i" -channel 'RGBA' -sigmoidal-contrast 0.75,0% -level 0%,100%,0.875 -gamma 1.10,1.05,1.0 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality 90 "$outp"
729
 
          else
730
 
            convert "$i" -channel 'RGBA' -sigmoidal-contrast 0.75,0% -level 0%,100%,0.875 -gamma 1.10,1.05,1.0 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 3:1:0 -quality 75 "$outp"
731
 
          fi
732
 
          if [[ "$3" -eq "0" ]]; then
733
 
            echo "${i##*/} $rea"
734
 
          else
735
 
            zenity --notification --window-icon="/usr/share/easyphoto/epicon.png" --text="${i##*/} $rea" --timeout=1
736
 
          fi
737
 
          continue
 
645
          convert "$i" -channel 'RGBA' -sigmoidal-contrast 0.75,0% -level 0%,100%,0.875 -gamma 1.10,1.05,1.0 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
738
646
        fi
739
647
      fi
 
648
      #Notification
 
649
      if [[ "$3" -eq "0" ]]; then
 
650
        echo "${i##*/} $rea"
 
651
      else
 
652
        zenity --notification --window-icon="/usr/share/easyphoto/epicon.png" --text="${i##*/} $rea" --timeout=1
 
653
      fi
 
654
      continue
740
655
    fi
741
656
    #------------------------------------------------------------------------------------
742
 
    if [[ "${mean%.*}" -gt "32000" ]]; then
 
657
    if [[ "${mean%.*}" -le "34000" ]]; then
743
658
      #Day (bright)
744
659
      local color=$(identify -ping -format %k "$i")
745
660
      if [[ "$color" -gt "60000" ]]; then
746
 
        if [[ "${mean%.*}" -le "34000" ]]; then
747
 
          if [[ "$4" -eq "0" ]]; then
748
 
            convert "$i" -channel 'RGBA' -contrast-stretch 0.25% -sigmoidal-contrast 0.75,0% -level 0%,100%,0.85 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality 90 "$outp"
749
 
          else
750
 
            convert "$i" -channel 'RGBA' -contrast-stretch 0.25% -sigmoidal-contrast 0.75,0% -level 0%,100%,0.85 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 3:1:0 -quality 75 "$outp"
751
 
          fi
752
 
        else
753
 
          if [[ "$4" -eq "0" ]]; then
754
 
            convert "$i" -channel 'RGBA' -contrast-stretch 0.001% -sigmoidal-contrast 0.75,0% -level 0%,100%,0.85 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality 90 "$outp"
755
 
          else
756
 
            convert "$i" -channel 'RGBA' -contrast-stretch 0.001% -sigmoidal-contrast 0.75,0% -level 0%,100%,0.85 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 3:1:0 -quality 75 "$outp"
757
 
          fi
758
 
        fi
759
 
        if [[ "$3" -eq "0" ]]; then
760
 
          echo "${i##*/} $rea"
761
 
        else
762
 
          zenity --notification --window-icon="/usr/share/easyphoto/epicon.png" --text="${i##*/} $rea" --timeout=1
763
 
        fi
764
 
        continue
 
661
        convert "$i" -channel 'RGBA' -contrast-stretch 0.25% -sigmoidal-contrast 0.75,0% -level 0%,100%,0.85 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
765
662
      elif [[ "$color" -gt "45000" ]]; then
766
 
        if [[ "${mean%.*}" -le "34000" ]]; then
767
 
          if [[ "$4" -eq "0" ]]; then
768
 
            convert "$i" -channel 'RGBA' -contrast-stretch 0.05% -sigmoidal-contrast 0.75,0% -level 0%,100%,0.85 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality 90 "$outp"
769
 
          else
770
 
            convert "$i" -channel 'RGBA' -contrast-stretch 0.05% -sigmoidal-contrast 0.75,0% -level 0%,100%,0.85 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 3:1:0 -quality 75 "$outp"
771
 
          fi
772
 
        else
773
 
          if [[ "$4" -eq "0" ]]; then
774
 
            convert "$i" -channel 'RGBA' -sigmoidal-contrast 0.75,0% -level 0%,100%,0.85 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality 90 "$outp"
775
 
          else
776
 
            convert "$i" -channel 'RGBA' -sigmoidal-contrast 0.75,0% -level 0%,100%,0.85 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 3:1:0 -quality 75 "$outp"
777
 
          fi
778
 
        fi
779
 
        if [[ "$3" -eq "0" ]]; then
780
 
          echo "${i##*/} $rea"
781
 
        else
782
 
          zenity --notification --window-icon="/usr/share/easyphoto/epicon.png" --text="${i##*/} $rea" --timeout=1
783
 
        fi
784
 
        continue
 
663
        convert "$i" -channel 'RGBA' -contrast-stretch 0.05% -sigmoidal-contrast 0.75,0% -level 0%,100%,0.85 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
785
664
      elif [[ "$color" -gt "40000" ]]; then
786
 
        if [[ "${mean%.*}" -le "34000" ]]; then
787
 
          if [[ "$4" -eq "0" ]]; then
788
 
            convert "$i" -channel 'RGBA' -contrast-stretch 0.001% -sigmoidal-contrast 0.75,0% -level 0%,100%,0.85 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality 90 "$outp"
789
 
          else
790
 
            convert "$i" -channel 'RGBA' -contrast-stretch 0.001% -sigmoidal-contrast 0.75,0% -level 0%,100%,0.85 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 3:1:0 -quality 75 "$outp"
791
 
          fi
792
 
        else
793
 
          if [[ "$4" -eq "0" ]]; then
794
 
            convert "$i" -channel 'RGBA' -sigmoidal-contrast 0.75,0% -level 0%,100%,0.85 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality 90 "$outp"
795
 
          else
796
 
            convert "$i" -channel 'RGBA' -sigmoidal-contrast 0.75,0% -level 0%,100%,0.85 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 3:1:0 -quality 75 "$outp"
797
 
          fi
798
 
        fi
799
 
        if [[ "$3" -eq "0" ]]; then
800
 
          echo "${i##*/} $rea"
801
 
        else
802
 
          zenity --notification --window-icon="/usr/share/easyphoto/epicon.png" --text="${i##*/} $rea" --timeout=1
803
 
        fi
804
 
        continue
805
 
      else
806
 
        if [[ "$4" -eq "0" ]]; then
807
 
          convert "$i" -channel 'RGBA' -sigmoidal-contrast 0.75,0% -level 0%,100%,0.85 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality 90 "$outp"
808
 
        else
809
 
          convert "$i" -channel 'RGBA' -sigmoidal-contrast 0.75,0% -level 0%,100%,0.85 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 3:1:0 -quality 75 "$outp"
810
 
        fi
811
 
        if [[ "$3" -eq "0" ]]; then
812
 
          echo "${i##*/} $rea"
813
 
        else
814
 
          zenity --notification --window-icon="/usr/share/easyphoto/epicon.png" --text="${i##*/} $rea" --timeout=1
815
 
        fi
816
 
        continue
817
 
      fi
 
665
        convert "$i" -channel 'RGBA' -contrast-stretch 0.001% -sigmoidal-contrast 0.75,0% -level 0%,100%,0.85 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
 
666
      else
 
667
        convert "$i" -channel 'RGBA' -sigmoidal-contrast 0.75,0% -level 0%,100%,0.85 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
 
668
      fi
 
669
      #Notification
 
670
      if [[ "$3" -eq "0" ]]; then
 
671
        echo "${i##*/} $rea"
 
672
      else
 
673
        zenity --notification --window-icon="/usr/share/easyphoto/epicon.png" --text="${i##*/} $rea" --timeout=1
 
674
      fi
 
675
      continue
 
676
    fi
 
677
    #------------------------------------------------------------------------------------
 
678
    if [[ "${mean%.*}" -gt "34000" ]]; then
 
679
      #Day (brightest)
 
680
      local color=$(identify -ping -format %k "$i")
 
681
      if [[ "$color" -gt "60000" ]]; then
 
682
        convert "$i" -channel 'RGBA' -contrast-stretch 0.001% -sigmoidal-contrast 0.75,0% -level 0%,100%,0.85 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
 
683
      else
 
684
        convert "$i" -channel 'RGBA' -sigmoidal-contrast 0.75,0% -level 0%,100%,0.85 -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
 
685
      fi
 
686
      #Notification
 
687
      if [[ "$3" -eq "0" ]]; then
 
688
        echo "${i##*/} $rea"
 
689
      else
 
690
        zenity --notification --window-icon="/usr/share/easyphoto/epicon.png" --text="${i##*/} $rea" --timeout=1
 
691
      fi
 
692
      continue
818
693
    fi
819
694
    #------------------------------------------------------------------------------------
820
695
    )&
832
707
}
833
708
 
834
709
#
835
 
#     +---------------+
836
 
#-----| easyantnoise  |----------------------------------------------------------------------------
837
 
#     +---------------+
 
710
#     +--------------+
 
711
#-----| easydenoise  |-----------------------------------------------------------------------------
 
712
#     +--------------+
838
713
#
839
714
 
840
715
function noise(){
841
716
  raw "$1"
 
717
  #Preload standard output text----------------------------------------------------------
 
718
  rea="$(awk 'NR==16 {print;exit}' "/usr/share/easyphoto/lang/"$lang"/"$lang"_easyphoto.txt")"
 
719
  #--------------------------------------------------------------------------------------
842
720
  for i in "$1"/*.[jJ][pP][gG]; do
843
721
    if [[ "$i" == "$1/*.[jJ][pP][gG]" ]]; then
844
722
      break
873
751
    local abin="$(binning "$wid" "$hei" "1")"
874
752
    #------------------------------------------------------------------------------------
875
753
    if [[ "${abin%.*}" -lt "100" ]]; then
876
 
      convert "$i" -crop ""$wid"x"$hei"+0+0" +repage -filter box -scale "$abin"% -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality 90 "$outp"
 
754
      convert "$i" -crop ""$wid"x"$hei"+0+0" +repage -filter box -scale "$abin"% -set comment "easyphoto" -define jpeg:optimize-coding=false -sampling-factor 4:4:4 -quality "$quality" "$outp"
877
755
    fi
 
756
    echo "${i##*/} $rea"
878
757
    ) &
879
758
    
880
759
    #Parallel Processing-----------------------------------------------------------------
923
802
  else
924
803
    if [[ ! -f /tmp/epcloud.lock ]]; then
925
804
      if [[ ! -d "$2" ]]; then
926
 
        awk 'NR==22 {print;exit}' "/usr/share/easyphoto/lang/"$lang"/"$lang"_easyphoto.txt"
 
805
        awk 'NR==21 {print;exit}' "/usr/share/easyphoto/lang/"$lang"/"$lang"_easyphoto.txt"
927
806
      else
928
807
        awk 'NR==4 {print;exit}' "/usr/share/easyphoto/lang/"$lang"/"$lang"_easyphoto.txt"
929
808
        cloud "$2" &
1003
882
#     +---------------------+
1004
883
#
1005
884
 
1006
 
TEMP=`getopt -o gs::r::d::c::f::a::lvhm --long gui,start::,raw::,dupes::,cloud::,fast::,anoise::,debug,version,help,man -n 'easyphoto' -- "$@"`
 
885
TEMP=`getopt -o gs::r::d::c:n::lvhm --long gui,start::,raw::,dupes::,cloud::,denoise::,debug,version,help,man -n 'easyphoto' -- "$@"`
1007
886
if [[ $? != 0 ]]; then
1008
887
  exit 1
1009
888
fi
1013
892
                -g|--gui) gui; shift ;;
1014
893
                -s|--start)
1015
894
                  case "$2" in
1016
 
                    "") checkdir "$4" "0" "0" "0" "0" "0"; shift 2 ;;
1017
 
                    o|over)  checkdir "$4" "1" "0" "0" "0" "0"; shift 2 ;;
 
895
                       #checkdir "PATH" "OVERWIRTE" "CONSOLE/ZENITY" "RAW" "CONSOLE/NOISE"
 
896
                    "") checkdir "$4" "0" "0" "0" "0"; shift 2 ;;
 
897
                    o|over)  checkdir "$4" "1" "0" "0" "0"; shift 2 ;;
1018
898
                    *)  awk 'NR==1 {print;exit}' "/usr/share/easyphoto/lang/"$lang"/"$lang"_easyphoto_help.txt"; shift 2 ;;
1019
899
            esac ;;
1020
900
          -r|--raw)
1021
901
                  case "$2" in
1022
 
                    "") checkdir "$4" "0" "0" "0" "0" "1"; shift 2 ;;
1023
 
                    o|over)  checkdir "$4" "1" "0" "0" "0" "1"; shift 2 ;;
1024
 
                    *)  awk 'NR==1 {print;exit}' "/usr/share/easyphoto/lang/"$lang"/"$lang"_easyphoto_help.txt"; shift 2 ;;
1025
 
            esac ;;
1026
 
        -f|--fast)
1027
 
                  case "$2" in
1028
 
                    "") checkdir "$4" "0" "0" "1" "0" "0"; shift 2 ;;
1029
 
                    o|over)  checkdir "$4" "1" "0" "1" "0" "0"; shift 2 ;;
 
902
                    "") checkdir "$4" "0" "0" "1" "0"; shift 2 ;;
 
903
                    o|over)  checkdir "$4" "1" "0" "1" "0"; shift 2 ;;
1030
904
                    *)  awk 'NR==1 {print;exit}' "/usr/share/easyphoto/lang/"$lang"/"$lang"_easyphoto_help.txt"; shift 2 ;;
1031
905
            esac ;;
1032
906
                -d|--dupes)
1033
907
                  case "$2" in
1034
 
                    "") dupes "$4" "0"; console "$4" "0" "0" "0" "0" "0"; shift 2 ;;
1035
 
                    o|over)  dupes "$4" "0"; console "$4" "1" "0" "0" "0" "0"; shift 2 ;;
 
908
                    "") dupes "$4" "0"; console "$4" "0" "0" "0" "0"; shift 2 ;;
 
909
                    o|over)  dupes "$4" "0"; console "$4" "1" "0" "0" "0"; shift 2 ;;
1036
910
                    *)  awk 'NR==1 {print;exit}' "/usr/share/easyphoto/lang/"$lang"/"$lang"_easyphoto_help.txt"; shift 2 ;;
1037
911
            esac ;;
1038
912
                -c|--cloud)
1041
915
                    s|stop) cloudrun "0"; shift 2 ;;
1042
916
                    *)  awk 'NR==1 {print;exit}' "/usr/share/easyphoto/lang/"$lang"/"$lang"_easyphoto_help.txt"; shift 2 ;;
1043
917
            esac ;;
1044
 
          -a|--anoise) 
 
918
          -n|--denoise)
1045
919
            case "$2" in
1046
920
              "") checkdir "$4" "0" "0" "0" "1"; shift 2 ;;
1047
921
              o|over) checkdir "$4" "1" "0" "0" "1"; shift 2 ;;