Détection de cartes Pokémon, capture d’écran de la démo

Application web de ML · 2023 · Flask + TensorFlow

Détection de cartes Pokémon

Une application web de vision par ordinateur qui identifie les cartes Pokémon du Set de Base à partir d’une photo et en extrait les métadonnées.

← Tous les projets

Une application web qui prend la photo d’une carte Pokémon du Set de Base et vous dit exactement de laquelle il s’agit, en renvoyant en temps réel le nom, le numéro, l’extension et l’année. Conçue de bout en bout : un classifieur CNN sous TensorFlow derrière une application web Flask + Jinja2, avec une interface HTML / CSS / JS épurée.

Le modèle a d’abord été entraîné sur le Set de Base 2 français (les cartes de mon enfance), mais il généralise bien à tout le Set de Base, y compris l’édition anglaise. Les cas difficiles (éclairage, reflets, cadrage partiel) sont gérés par l’augmentation de données utilisée pendant l’entraînement.

Le projet est né d’un besoin personnel : les collectionneurs comme moi doivent souvent vérifier sur le moment l’édition ou la valeur d’une carte. Pointer l’appareil photo du téléphone vers la carte et l’identifier instantanément : c’était l’expérience utilisateur qu’il fallait.

CNN

Modèle de vision
TensorFlow

Flask

Application web
Python + Jinja2

FR / EN

Set de Base
d’une langue à l’autre

2023

Projet personnel
open source

Ce que fait l’application

  1. Détection de la carte. Envoyez une photo : le modèle reconnaît la carte parmi celles du Set de Base Pokémon.
  2. Extraction des métadonnées. Renvoie le nom, le numéro, l’extension et l’année de sortie de la carte, prêts à être affichés ou envoyés vers une base de données de collection.
  3. D’une langue à l’autre. Entraîné sur le Set de Base 2 français, le modèle classe aussi correctement les cartes anglaises du Set de Base. Le signal visuel suffit.
  4. Une pile logicielle légère. Une seule application Flask, un CNN TensorFlow, un gabarit Jinja2 et Git LFS pour les poids du modèle. Aucun framework lourd : l’application se déploie partout où Python tourne.

Technologies

TensorFlow Flask Python 3.7+ Jinja2 HTML · CSS · JS Git LFS

Dépôt

Le code, le modèle, les données d’entraînement et un README complet, sur GitHub.

Dépôt GitHub → README

Crédits

Conception et réalisation
Ammar Kheder
Technologies
TensorFlow · Flask · Jinja2 · HTML / CSS / JS · Git LFS
Données d’entraînement
Set de Base 2 Pokémon (édition française), avec généralisation au Set de Base anglais
Statut
Open source, sur GitHub