{"id":28328674,"url":"https://github.com/obj-wtf/gan-architecture","last_synced_at":"2026-05-18T02:33:01.851Z","repository":{"id":295040648,"uuid":"988900174","full_name":"OBJ-WTF/GAN-Architecture","owner":"OBJ-WTF","description":"APP For training GAN Models on Architecture Plan ","archived":false,"fork":false,"pushed_at":"2025-05-23T10:08:55.000Z","size":77,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-07-23T08:12:48.531Z","etag":null,"topics":["architecture","building","cuda","gan","pix2pix-tensorflow","plan"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/OBJ-WTF.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-05-23T08:45:28.000Z","updated_at":"2025-05-23T10:14:07.000Z","dependencies_parsed_at":"2025-05-23T11:05:05.429Z","dependency_job_id":"91a6472a-e4ee-4dcf-ac7c-71feafbf8337","html_url":"https://github.com/OBJ-WTF/GAN-Architecture","commit_stats":null,"previous_names":["obj-wtf/gan-architecture"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/OBJ-WTF/GAN-Architecture","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OBJ-WTF%2FGAN-Architecture","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OBJ-WTF%2FGAN-Architecture/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OBJ-WTF%2FGAN-Architecture/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OBJ-WTF%2FGAN-Architecture/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/OBJ-WTF","download_url":"https://codeload.github.com/OBJ-WTF/GAN-Architecture/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OBJ-WTF%2FGAN-Architecture/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":269693593,"owners_count":24460248,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-10T02:00:08.965Z","response_time":71,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["architecture","building","cuda","gan","pix2pix-tensorflow","plan"],"created_at":"2025-05-26T08:16:22.487Z","updated_at":"2026-05-18T02:33:01.816Z","avatar_url":"https://github.com/OBJ-WTF.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# AIp2p: Pix2Pix Floorplan Tool\n\nAIp2p est une interface graphique interactive pour dessiner des plans de bâtiments à l'aide de modèles Pix2Pix.\n\n![Capture d’écran 2025-05-23 113515](https://github.com/user-attachments/assets/c7e5a24d-5ee7-4ecc-b08f-26c991d6964f)\n\n##  Fonctionnalités principales\n\n- **🖼️ Canvas de dessin interactif** : Dessinez des rectangles en glissant-déposant pour créer vos plans\n- **🎨 Système de couleurs codées** : Plusieurs couleurs disponibles pour encoder différentes classes (murs, ouvertures, pièces, etc.)\n- **↕️ Import/Export d'images** : Importez une image PNG existante ou exportez vos créations\n- **🪄 Génération IA avancée** : Convertissez votre dessin en image réaliste via un modèle Pix2Pix (1 ou 2 passes)\n- **🔧 Entraînement intégré** : Entraînez vos propres modèles avec vos datasets personnalisés\n\n##  Prérequis\n\n- **Python 3.10+**\n- **CUDA 12** (recommandé pour l'accélération GPU)\n  \n##  Tableau des besoins mémoire\n\n|  **Taille image** |  **Inférence – RAM** |  **Inférence – VRAM** |  **Entraînement – RAM** |  **Entraînement – VRAM** |\n|----------------------|------------------------|---------------------------|-----------------------------|------------------------------|\n| **256×256**          | 0.5 – 1 Go             | 0.5 – 1 Go                | 8 – 12 Go                   | 4 – 6 Go                     |\n| **512×512**          | 1 – 2 Go               | 1 – 2 Go                  | 12 – 16 Go                  | 6 – 8 Go                     |\n| **768×768**          | 2 – 3.5 Go             | 3 – 5 Go                  | 16 – 24 Go                  | 8 – 12 Go                    |\n| **1024×1024**        | 4 – 6 Go               | 6 – 8 Go                  | 24 – 32 Go                  | 10 – 14 Go                   |\n\n\n##  Installation\n\n### 1. Cloner le dépôt\n```bash\ngit clone https://github.com/votreutilisateur/AIp2p.git\ncd AIp2p\n```\n\n### 2. Créer un environnement virtuel\n```bash\n# Créer l'environnement\npython -m venv venv\n\n# Activer l'environnement\n# Sur Windows :\nvenv\\Scripts\\activate\n# Sur Linux/macOS :\nsource venv/bin/activate\n```\n\n### 3. Installer les dépendances\n```bash\npip install -r requirements.txt\n```\n\n##  Utilisation\n\n### Lancement de l'application\n```bash\npython AIp2p.py\n```\n\n### Guide d'utilisation rapide\n\n#### **Dessin**\n1. **Créer des rectangles** : Cliquez et glissez sur le canvas pour dessiner\n2. **Supprimer des éléments** : Clic droit sur un rectangle pour le supprimer\n3. **Changer de couleur** : Sélectionnez une couleur dans la palette pour encoder différents types d'éléments\n\n#### **Génération IA**\n1. **Charger les modèles** : Utilisez les boutons dédiés pour charger vos fichiers `.h5`\n   - **1er modèle** : Conversion Masse → Couleur\n   - **2ème modèle** : Conversion Couleur → Dessin détaillé\n2. **Générer** : Lancez la génération pour obtenir votre plan réaliste\n\n#### **Entraînement de modèles**\n1. **Préparer les données** : Organisez vos images d'entraînement dans des dossiers séparés\n2. **Configuration** : Spécifiez le dossier d'entrée, le dossier cible et le nombre d'epochs\n3. **Lancer** : Le modèle sera automatiquement sauvegardé à la fin de l'entraînement\n\n##  Dataset recommandé\n\n### Pix2Pix Floorplans Dataset\n**Source** : [nate-peters/pix2pix-floorplans-dataset](https://github.com/nate-peters/pix2pix-floorplans-dataset)\n\nCe dataset contient des images de plans d'étage pour petites maisons de plain-pied, dérivées de HousePlans.com. Chaque image a été étiquetée manuellement avec Rhino et Grasshopper :\n\n- **Image A** : Forme de contour (région noire pleine)\n- **Image B** : Contour avec régions codées par couleur selon les types de pièces\n\n![Exemple du dataset](https://github.com/user-attachments/assets/3563eb47-cd95-471a-bd30-1d79dfcc322c)\n\n## 🧠 Recommandations d'entraînement Pix2Pix\n\nCe tableau vous aide à calibrer votre entraînement selon la taille de votre dataset et vos ressources disponibles.\n\n|  **Taille du dataset** |  **Epochs recommandées** |  **Durée estimée (CPU)** |  **Durée estimée (GPU)** |\n|--------------------------|-----------------------------|-----------------------------|-----------------------------|\n| ~100 paires              | 200 – 400                   | 4 – 8 h                     | 30 – 60 min                 |\n| 500 paires               | 150 – 300                   | 8 – 16 h                    | 1 – 2 h                     |\n| 1 000 paires             | 100 – 200                   | 12 – 24 h                   | 2 – 4 h                     |\n| 5 000+ paires            | 50 – 150                    | 24 – 48 h                   | 4 – 8 h                     |\n| 10 000+ paires           | 30 – 100                    | 48 h+                       | 6 – 12 h                    |\n\n---\n\n##  Conseils d'entraînement\n\n- **Surveillez la perte (`loss`)** mais jugez aussi **visuellement** la qualité des sorties.\n- Plus le **dataset est petit**, plus vous aurez besoin de **nombreux epochs**.\n- **Sauvegardez le modèle régulièrement** (`checkpoint`) pour éviter toute perte.\n- Commencez avec des images **256×256 px**, puis augmentez si votre GPU le permet.\n\n## 🔧 Dépendances techniques\n\n### Principales librairies\n- **TensorFlow 2.15** - Framework d'apprentissage automatique\n- **OpenCV** - Traitement d'images\n- **Pillow** - Manipulation d'images\n- **tkinter** - Interface graphique\n\n### Configuration GPU (optionnelle mais recommandée)\nPour une performance optimale, assurez-vous d'avoir :\n- **CUDA 12** installé\n- **GPU compatible CUDA** avec au moins 4 Go de VRAM\n\nConsultez `requirements.txt` pour la liste complète des dépendances.\n\n## 🏗️ Architecture du projet\n\n```\nAIp2p/\n├── AIp2p.py              # Script principal\n├── requirements.txt      # Dépendances Python\n├── models/              # Modèles entraînés \n├── datasets/            # Vos datasets d'entraînement\n└── exports/             # Images générées et exportées\n```\n\n##  Crédits\n\n**Développé par** : [OBJ.WTF](https://github.com/votreutilisateur) pour un projet de génération architecturale assistée par IA ( https://www.obj.wtf/ )\n\n**Basé sur** :\n- [Pix2Pix](https://github.com/tensorflow/examples/tree/master/tensorflow_examples/models/pix2pix) (TensorFlow Examples)\n- Les travaux de [Stanislas Chaillou](https://github.com/StanislasChaillou)\n\n## 📄 Licence\n\nCe projet est sous licence MIT. \n\n\n⭐ **N'hésitez pas à donner une étoile au projet si vous le trouvez utile !**\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fobj-wtf%2Fgan-architecture","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fobj-wtf%2Fgan-architecture","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fobj-wtf%2Fgan-architecture/lists"}