Identify photos containing QR codes

Started by richardl152, August 21, 2019, 11:15:59 AM

Previous topic - Next topic

richardl152

I have some photos from my GPS tracker software (gps4cam pro) which necessarily contain a QR code (80% of the shot) to sync the gps post-processing of my non-gps camera shots.    Finding these QR photos in the '000s of images shot is painful - visual inspection the only way to sort them.   Is there a way that exiftool can be configured to distinguish and then pull these photos into a separate directory?   Not to interpret the QR code,  just to identify that there is something in the shot that is most likely to be one.   (Maybe a lot of black and white contrasting squares within a color photo)

Phil Harvey

ExifTool deals with metadata only.  It doesn't do any image manipulations or analysis.

If there is something unique about the metadata in these shots then ExifTool could help, but I suspect you need to do some image analysis.

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

richardl152

I sorted it.   This is my solution for Mac  terminal bash shell.

Firstly invoke home-brew installation of the zbarimg command (bar code image analysis)

brew install zbar

then add this function to your bash aliases

_______

function qrcodetest (){
for file in *  ; do
$HOME/Scripts/qrcode_sort.sh "$file" ;
done

}
_________
and this as a script in ~/Scripts or your own choice of directory and adjusting your own paths to suit.

________

#!/bin/bash                                                                                                                                                                                                 
mkdir -p ../QRcodes;
mkdir -p ../noQRcodes;

if /usr/local/bin/zbarimg -q "$1" ;  then  mv "$1" ../QRcodes ; else mv "$1" ../noQRcodes;
fi
________

If you want just to add tags, this is the script
____
#!/bin/bash                                                                                                                                                                                                 

if /usr/local/bin/zbarimg -q "$1" ;  then  /opt/local/bin/tag "$1" --add QR_code  ; else /opt/local/bin/tag "$1" --add no_QR_code ;
fi
____

obviously you'll need to install tag   (sudo apt install tag or similar)

I hope this is helpful to others

Richard