J’ai peaufiné le script d’extraction d’images géoréférencée depuis les vidéos de ma dashcam.
- meilleure extraction des textes incrustés pour récupération par OCR du timestampet et de la position
- traitement des images en demie seconde (et interpolation de la position)
- suppression des images successives à la même position
- recadrage pour éliminer le bas de l’image (là où on a le timestamp et la position incrustée, mais aussi le tableau ou le capot du véhicule)
- renommage selon le timestamp
- ajout de metadonnées sur l’appareil (make, model, focallength)
- mise à jour de la date de modification du fichier pour reprendre celle de la prise de vue
reste à faire:
- le calcul de direction de prise de vue (ImgDirection)
C’est un script bash qui utilise:
- ffmpeg (conversion vidéo en série d’images)
- imagemagick (calcul de la prévisualisation + extraction du texte incrusté)
- tesseract (conversion en texte)
- exiftool (mise à jour données EXIF)
- jpegtran (recadrage)
- bc (calculs numériques)
On peut lancer le script avec GNU parallel, pour traiter plusieurs vidéos en même temps, ce qui peut donner ça:
Le script est ici pour le moment: This script converts dashcam videos into geotagged still images · GitHub
Les images en sorties ressemblent à ça:
Et voici les données EXIF:
ExifToolVersion : 12.40
FileName : 2023-03-06T14:13:35.000.jpg
Directory : /ssd-zfs/panoramax/photos/2023/dashcam/front_emr_20230306_141235M
FileSize : 1775 KiB
FileModifyDate : 2023:03:06 14:13:35+01:00
FileAccessDate : 2023:03:13 11:03:02+01:00
FileInodeChangeDate : 2023:03:13 10:58:35+01:00
FilePermissions : -rw-rw-r--
FileType : JPEG
FileTypeExtension : jpg
MIMEType : image/jpeg
ExifByteOrder : Big-endian (Motorola, MM)
Make : ThiEYE
XResolution : 72
YResolution : 72
ResolutionUnit : inches
YCbCrPositioning : Centered
ExifVersion : 0232
DateTimeOriginal : 2023:03:06 14:13:35
ComponentsConfiguration : Y, Cb, Cr, -
SubSecTimeOriginal : 000
FlashpixVersion : 0100
ColorSpace : Uncalibrated
GPSVersionID : 2.3.0.0
GPSLatitude : 0 deg 0' 0.00"
GPSLongitude : 0 deg 0' 0.00"
Compression : JPEG (old-style)
ThumbnailOffset : 416
ThumbnailLength : 17800
Comment : Lavc58.134.100
ImageWidth : 3840
ImageHeight : 2040
EncodingProcess : Progressive DCT, Huffman coding
BitsPerSample : 8
ColorComponents : 3
YCbCrSubSampling : YCbCr4:2:0 (2 2)
ImageSize : 3840x2040
Megapixels : 7.8
SubSecDateTimeOriginal : 2023:03:06 14:13:35.000
ThumbnailImage : (Binary data 17800 bytes, use -b option to extract)
GPSPosition : 0 deg 0' 0.00", 0 deg 0' 0.00"