Openstreetcam fisheye removal

I record a lot of my cycling routes using a GoPro Hero 5 black mounted to my bike.
After recording I upload the images (1 images/sec) to openstreetcam.
But the face and car sign detection cannot cope with the fisheye in the GoPro images so I had to remove them before upload.

This is the script I use:


MOGRIFY=`which mogrify`
if [ $? -eq 1 ]; then
  echo "you need to install imagemagick"
  exit 1

if [ "$#" -ne 1 ]; then
  echo "Add folder to process as argument."
  exit 1

path=`realpath $1`
dest_folder=`dirname $path`/z_fisheye/`basename $1`
source_count=`find $source_folder -name \*JPG | wc -l`
echo "number of files to process: ${source_count}"

if [ -f "${source_folder}/000_fisheye.done" ]; then
  echo "${source_folder} already processed!"

mkdir -p $dest_folder
  cd $source_folder
  for photo in *.JPG; do
    if [ -f "${dest_folder}/${photo}" ]; then
      echo -n "."
      $MOGRIFY -path ${dest_folder} -distort barrel "0 0 -0.2" ${photo}
      echo -n "."
  done | pv -pte -i0.1 -s${source_count} > /dev/null

# check if all images from source folder are in dest_folder
dest_count=`find $dest_folder -name \*JPG | wc -l`
if [[ $source_count == $dest_count ]]; then
  touch ${source_folder}/000_fisheye.done
After all files in a folder are processed a file named 000_fisheye.done will be created in the source folder.
This helps finding the folders I can upload to openstreetcam.