Ce projet est une application web interactive combinant React (Frontend) et FastAPI (Backend) pour proposer des expériences de Vision par Ordinateur, notamment, il s'inscrit dans le cadre du Projet Recherche et Innovation qui se deroule au Semestre 9 à Polytech Tours:
- Dino Run Gesture Control : Contrôlez le jeu Dino avec des gestes de la main (Sauter = Changer de geste).
- Dobble Analysis : Détection et analyse de cartes Dobble.
Avant de commencer, assurez-vous d'avoir installé :
- Python 3.12+ (Requis pour TensorFlow/MediaPipe)
- Node.js 18+ et npm
Clonez le dépôt GitHub :
git clone https://github.com/Isopope/ComputerVisionPRI25-26.git
cd ComputerVisionPRI25-26Le backend gère l'IA, la détection de gestes (MediaPipe) et l'analyse d'images (YOLO).
- Ouvrez un terminal dans le dossier
backend. - (Optionnel mais recommandé) Créez un environnement virtuel :
python -m venv .venv # Windows .venv\Scripts\activate # Mac/Linux source .venv/bin/activate
- Installez les dépendances :
pip install -r requirements.txt
- Assurez-vous que les modèles IA sont présents :
backend/dobble.pt(Modèle YOLO)backend/model/keypoint_classifier/(Modèle TFLite Gestes)
- Lancez le serveur :
✅ Le backend sera accessible sur :
uvicorn main:app --reload --host 0.0.0.0 --port 8000
http://localhost:8000
Le frontend est une application React utilisant Vite et ShadCN UI.
- Ouvrez un nouveau terminal dans le dossier
frontend. - Installez les dépendances :
npm install
- Lancez le serveur de développement :
✅ Le frontend sera accessible sur :
npm run dev
http://localhost:8080(ou le port indiqué)
- Une fois les deux serveurs lancés, ouvrez votre navigateur sur
http://localhost:8080. - Accédez à un jeu .
- Activez votre caméra lorsque demandé.
- Mode IA pure : Accessible uniquement pour le jeu dobble, il permet de voir comment l'IA traite les informations qu'elle recoit .
- Mode IA vs Humain : le mode challenge ou tu defis l'ia dans le jeu dobble, pour determiner qui trouve le symbole commun le plus vite.
- Mode Explicatif : Cliquez sur le bouton "Mode Explicatif" pour comprendre comment l'IA traite les informations qu'elle recoit.