Cette API prendra comme paramètre un dossier où des photos seront disponibles.
Le répertoire de stockage des images sera configuré dans applications.properties. C'est ce répertoire qui sera monté comme volume externe depuis le container. Je propose que ce soit un répertoire à la racine du projet pour commencer , comme par exemple input
Format de l'image
Voir le format d'input idéal: jpegvs. pnget surtout que ce dernier est bien supporté par JDL. Si les deux formats sont supporttés, alors laisser le format open.
Endpoint
Afin de permettre à plus de monde d'utiliser l'api avec souplesse et économiser les ressources, il sera possible d'interroger l'API sur une photo donnée.
Par exemple sur agence-centrale.jpg magenta.jpg riviere-salee.jpeg, ou encore salle-reunin-flamboyant.jpeg
Le service sera donc extrêmement flexible: ce sera une de ses forces majeures.
Pour cela, développer les endpoints suivants:
[x] /photos/{photo-filename]/detect : répond en json un tableau d'objets détectés, avec la classe, la positions, le taux de confiance, bref tout ce qu'on peut choper, on le renvoie sans filtrer: ce sera au client de faire le choix, pas à l'API
[x] /photos/{photo-filename]/visualize : renvoie via le mime-type adapté l'image avec les encadrés des objets (permet de comprendre comment cela a été interprété)
[x] /photos/{photo-filename]/metadata :renvoie toutes les métadatas de l'image, par exemple passer par Apache Tika et renvoyer les données EXIF en json. On purrait par exemple du coup récupérer des donées utiles de descriptio sur la photo comme l'heure locale, ou les coordonnées gps: c'est pas compliqué mais très intéressant
[x] /photos/{photo-filename]/analysis : répond le moteur de ML utilisé, le temps de réponse et toute autre data lié au run du modèle
[x] /photos/list : renvoie via un tableau json toutes les photos actuellement disponibles sur le répertoire. Avec cet endpoint, on peut faire des requêtes REST sans même avoir accès au répretoire, très utile pour avoir u nBACK qui pourra être exploité pa run front autonome
Développer l'endpoint principal
Cette API prendra comme paramètre un dossier où des photos seront disponibles.
Le répertoire de stockage des images sera configuré dans applications.properties. C'est ce répertoire qui sera monté comme volume externe depuis le container. Je propose que ce soit un répertoire à la racine du projet pour commencer , comme par exemple
input
Format de l'image
Voir le format d'input idéal:
jpeg
vs.png
et surtout que ce dernier est bien supporté par JDL. Si les deux formats sont supporttés, alors laisser le format open.Endpoint
Afin de permettre à plus de monde d'utiliser l'api avec souplesse et économiser les ressources, il sera possible d'interroger l'API sur une photo donnée.
Par exemple sur agence-centrale.jpg magenta.jpg riviere-salee.jpeg, ou encore salle-reunin-flamboyant.jpeg
Le service sera donc extrêmement flexible: ce sera une de ses forces majeures.
Pour cela, développer les endpoints suivants:
/photos/{photo-filename]/detect
: répond en json un tableau d'objets détectés, avec la classe, la positions, le taux de confiance, bref tout ce qu'on peut choper, on le renvoie sans filtrer: ce sera au client de faire le choix, pas à l'API/photos/{photo-filename]/visualize
: renvoie via le mime-type adapté l'image avec les encadrés des objets (permet de comprendre comment cela a été interprété)/photos/{photo-filename]/metadata
:renvoie toutes les métadatas de l'image, par exemple passer par Apache Tika et renvoyer les données EXIF en json. On purrait par exemple du coup récupérer des donées utiles de descriptio sur la photo comme l'heure locale, ou les coordonnées gps: c'est pas compliqué mais très intéressant/photos/{photo-filename]/analysis
: répond le moteur de ML utilisé, le temps de réponse et toute autre data lié au run du modèle/photos/list
: renvoie via un tableau json toutes les photos actuellement disponibles sur le répertoire. Avec cet endpoint, on peut faire des requêtes REST sans même avoir accès au répretoire, très utile pour avoir u nBACK qui pourra être exploité pa run front autonome