|
|
--- |
|
|
pipeline_tag: unconditional-image-generation |
|
|
tags: |
|
|
- Child |
|
|
- Noir et blanc |
|
|
- dessins |
|
|
- enfants |
|
|
new_version: Clemylia/Forza-ia-large-1M |
|
|
--- |
|
|
|
|
|
# 🎨 Forza-ia : L'Intelligence Artificielle au Crayon (Style Esquisse) |
|
|
|
|
|
 |
|
|
|
|
|
## ✨ Bienvenue dans l'Univers de Forza-ia \! |
|
|
|
|
|
**Forza-ia** est un modèle d'Intelligence Artificielle unique, conçu pour générer des dessins qui ressemblent à de véritables **esquisses d'enfants** \! Notre modèle est entraîné à capturer la naïveté, la simplicité et le charme des premiers coups de crayon. |
|
|
|
|
|
Ce modèle utilise une technologie appelée **Auto-encodeur Variationnel (VAE)** pour créer de l'art à partir de pur bruit. Chaque image générée est **nouvelle, unique et imprévisible**. |
|
|
|
|
|
### Le Style Forza-ia : Esquisse Hachurée |
|
|
|
|
|
Les œuvres produites par Forza-ia se distinguent par un style très particulier : |
|
|
|
|
|
* **Monochrome :** Noir et blanc, simulant l'encre ou le crayon. |
|
|
* **Hachuré :** Les formes apparaissent souvent avec une texture granuleuse ou "hachurée", ajoutant un côté authentique d'esquisse. |
|
|
* **Résolution :** Les images sont générées en $64 \times 64$ pixels, parfaites pour des icônes ou des motifs minimalistes. |
|
|
|
|
|
----- |
|
|
|
|
|
## 🚀 Comment Utiliser Forza-ia (Mode Génération Aléatoire) |
|
|
|
|
|
Étant un modèle **inconditionnel**, Forza-ia ne prend pas d'instructions écrites (pas de "Text-to-Image"). Il fonctionne en mode **génération aléatoire**. |
|
|
|
|
|
Chaque fois que vous utilisez le modèle, il crée une œuvre unique, tirée au hasard de l'espace des "dessins d'enfants" qu'il a appris. |
|
|
|
|
|
### 💻 Utilisation pour les Développeurs (via PyTorch) |
|
|
|
|
|
Si vous êtes un développeur ou un scientifique des données, voici les étapes pour intégrer **Forza-ia** dans votre projet PyTorch : |
|
|
|
|
|
#### 1\. Configuration (Installation Requise) |
|
|
|
|
|
Vous aurez besoin de **PyTorch** et de la bibliothèque **`huggingface_hub`** pour télécharger les poids. |
|
|
|
|
|
#### 2\. Téléchargement et Chargement |
|
|
|
|
|
Utilisez l'ID du référentiel et le nom du fichier de poids pour télécharger le modèle : |
|
|
|
|
|
```python |
|
|
from huggingface_hub import hf_hub_download |
|
|
import torch |
|
|
|
|
|
# Le Référentiel où se trouve le modèle |
|
|
REPO_ID = "Clemylia/Forza-ia" |
|
|
FILE_NAME = "forza_ia_vae.pth" |
|
|
|
|
|
# Téléchargement des poids |
|
|
weights_path = hf_hub_download(repo_id=REPO_ID, filename=FILE_NAME) |
|
|
|
|
|
# L'architecture du modèle (Classe VAE) est requise pour charger les poids. |
|
|
# Vous devez la définir exactement comme elle a été entraînée (voir vae_model_architecture.py). |
|
|
# ... [Définition de la classe VAE] ... |
|
|
|
|
|
# Chargement des poids |
|
|
model = VAE(latent_dim=128) |
|
|
model.load_state_dict(torch.load(weights_path)) |
|
|
model.eval() |
|
|
``` |
|
|
|
|
|
#### 3\. Génération d'une Nouvelle Image |
|
|
|
|
|
Pour générer un lot d'images, il suffit d'échantillonner du bruit dans l'espace latent (128 dimensions) et de le passer au décodeur : |
|
|
|
|
|
```python |
|
|
LATENT_DIM = 128 |
|
|
N_SAMPLES = 1 # Générer une seule image |
|
|
|
|
|
with torch.no_grad(): |
|
|
# Création du bruit aléatoire (z) |
|
|
random_noise = torch.randn(N_SAMPLES, LATENT_DIM) |
|
|
|
|
|
# Le modèle crée l'image à partir du bruit |
|
|
generated_image = model.decode(random_noise) |
|
|
|
|
|
# L'image est un tenseur PyTorch dans [-1, 1]. N'oubliez pas de le re-normaliser |
|
|
# en [0, 1] pour l'affichage ou la sauvegarde. |
|
|
final_image = (generated_image + 1) / 2 |
|
|
|
|
|
# Utilisez torchvision.utils.save_image ou Matplotlib pour visualiser |
|
|
``` |
|
|
|
|
|
----- |
|
|
|
|
|
## 🧠 Architecture en un Coup d'Œil |
|
|
|
|
|
| Caractéristique | Valeur | |
|
|
| :--- | :--- | |
|
|
| **Type de Modèle** | Auto-encodeur Variationnel (VAE) | |
|
|
| **Framework** | PyTorch | |
|
|
| **Dimension Latente** | 128 | |
|
|
| **Fonction de Perte** | MSE (Perte de Reconstruction) | |
|
|
|
|
|
Ce modèle a été entraîné sur un jeu de données synthétique de dessins d'enfants (bonhommes bâtons, formes, gribouillis, etc.) pour capturer la diversité du dessin naïf. |
|
|
|
|
|
## 🤝 Contribution et Support |
|
|
|
|
|
Si vous rencontrez un problème ou si vous avez des suggestions pour améliorer **Forza-ia** (par exemple, pour le rendre conditionnel \! 😉), veuillez ouvrir une *issue* sur notre page de référentiel. |
|
|
|
|
|
Nous espérons que **Forza-ia** ajoutera une touche de créativité et d'authenticité de dessin d'enfant à votre prochain projet \! Bon codage \! 💻 |
|
|
|
|
|
**🍪 Utiliser la version large🍪** |
|
|
|
|
|
Si vous souhaitez ou préférez utiliser une version large de Forza-ia, |
|
|
la version Forza-ia-large-1M est pour vous. |
|
|
La version Forza-ia-large-1M a ete entraîné sur exactement 1 millions d'images. |
|
|
et contrairement cette première version ici documenté, |
|
|
Forza-ia-large-1M produit des esquisses de dessins d'enfants coloré (avec la couleur) et de façon beaucoup plus nette. |
|
|
Découvrez la version Forza-ia-large-1M entraîné sur 1 millions d'images, |
|
|
aussi sur Hugging face, |
|
|
a ce lien de depots : |
|
|
https://huggingface.co/Clemylia/Forza-ia-large-1M |