J’ai enfin mon process complet, pour compter les cyclistes et flouter les visages dans la vidéo :
Etape 1 : Faire la vidéo avec la GoPRO.
- Le résultat est un MP4.
- La taille : 91 Mo
Metadata: major_brand : mp42 minor_version : 0 compatible_brands: mp42isomavc1 creation_time : 2020-10-04T13:52:54.000000Z encoder : HandBrake 0.9.8 2012071800 Duration: 00:01:51.44, start: 0.000000, bitrate: 6813 kb/s Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709), 1280x720 [SAR 1:1 DAR 16:9], 6810 kb/s, 23.98 fps, 23.98 tbr, 90k tbn, 180k tbc (default) Metadata: creation_time : 2020-10-04T13:52:54.000000Z encoder : JVT/AVC Coding
Etape 2 : Passer Jupyter Notebook, Python3, Tensorflow, OpenCV.
- Le résultat est un AVI.
- La commande : tracking-yolo-model.ipynb
- La taille : 400 Mo
Metadata: encoder : Lavf58.58.100 Duration: 00:01:29.07, start: 0.000000, bitrate: 37644 kb/s Stream #0:0: Video: mjpeg (MJPG / 0x47504A4D), yuvj420p(pc, bt470bg/unknown/unknown), 1280x720, 37651 kb/s, 30 fps, 30 tbr, 30 tbn, 30 tbc
Etape 3 : Convertir le AVI en MP4.
- Le résultat est un MP4.
- La commande : ffmpeg -i output-bicyle.avi output-bicyle.mp4
- La taille : 60 Mo
Metadata: major_brand : isom minor_version : 512 compatible_brands: isomiso2avc1mp41 encoder : Lavf57.83.100 Duration: 00:01:29.07, start: 0.000000, bitrate: 5605 kb/s Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuvj420p(pc), 1280x720, 5602 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default) Metadata: handler_name : VideoHandler
Etape 4 : Flouter les visages via https://github.com/ORB-HD/deface
- Le résultat est un MP4.
- La commande : deface output-bicyle.mp4
- La taille : 35 Mo.
Metadata: major_brand : isom minor_version : 512 compatible_brands: isomiso2avc1mp41 encoder : Lavf58.29.100 Duration: 00:01:29.07, start: 0.000000, bitrate: 3241 kb/s Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1280x720, 3238 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default) Metadata: handler_name : VideoHandler
Etape 5 : Compresser la video pour le Web.
- Le résultat est un MP4.
- La commande : ffmpeg -i output-bicyle_anonymized.mp4 -c:v libx264 -b:v 1.5M -c:a aac -b:a 128k -filter:v scale=540×480 output-bicyle_anonymized_compress.mp4
- La taille : 16 Mo.
Metadata: major_brand : isom minor_version : 512 compatible_brands: isomiso2avc1mp41 encoder : Lavf57.83.100 Duration: 00:01:29.07, start: 0.000000, bitrate: 1477 kb/s Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 540x480, 1474 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default) Metadata: handler_name : VideoHandler
Le résultat final :