PictorIA - Roboflow - PPTM
PictorIA - Roboflow - PPTM
PictorIA - Roboflow - PPTM
Atelier PictorIA
BnF Datalab
26 juin 2024
Jean-Philippe Moreux
[email protected]
Plan de l’atelier
A. Créer un projet
B. Annoter
C. Créer un jeu de données
D. Entraîner un modèle
E. Déployer un modèle
F. Exporter au format IIIF
Roboflow est une plateforme agrégeant des outils d’annotation de jeu de
données et d’entraînement de modèles d’analyse d’images. La plateforme
est payante mais une période d’essai est offerte, et un compte “Recherche”
peut être négocié sous réserve que les données soient publiques.
Dans ce projet Roboflow, nous allons créer un modèle de détection d’objets
opérant sur des manuscrits enluminés de la base Mandragore. Le modèle va
cibler deux classes d’objet visuel, “humain” et “cheval”.
A. Créer un projet
Créer un projet Roboflow
• Donner un nom
• Choisir le mode “Object Detection”
• Choisir la visibilité
(publique, privée)
Charger les images
Charger les images
B. Annoter
Choisir le mode d’annotation
● Essayer plusieurs
prompts (en anglais).
● Jouer sur le seuil
de confiance.
● Si les résultats sont
satisfaisants, appliquer
sur tout le corpus.
● Sinon, passer en
mode manuel.
Choisir le mode d’annotation : manuel
● Correction de l’orientation
● Redimensionnement
● Correction du contraste
● Gestion des images sans annotation
● …
Créer un jeu de données : augmentation
Dans l’onglet Visualize, les images de test du jeu sont affichées avec le
résultat de leur traitement. Une image externe peut aussi être chargée.
E. Déployer un modèle
Déployer : localement
Ce script lance l’inférence sur une image et exporte un fichier JSON des annotations.
> python test_inference.py images/6000415-150.jpg "cheval-mandragore/3"
https://github.com/altomator/pictorIA/blob/main/python/test_inference.py https://gallica.bnf.fr/ark:/12148/btv1b6000415h/f150
F. Exporter au format IIIF
IIIF
Ce script convertit l’export JSON de Roboflow en annotations IIIF (API Presentation 2.0,
un fichier par canvas).
> python roboflow2iiif.py btv1b6000415h 150 2.438 images/6000415-150.json
https://github.com/altomator/pictorIA/blob/main/python/roboflow2iiif.py
IIIF
Ce fichier d’annotations IIIF peut ensuite être chargé dans un visualiseur IIIF.
…
https://manuscrits-france-angleterre.org/view3if/?target=https://gallica.bnf.fr/iiif/ark:/12148/btv1b6000415h/manifest.json&lang=fr&page=150