Dessinez le reste d'un hibou sur la base de réseaux de neurones

L'idée de compléter un hibou de cercles a été réalisée à l'aide de réseaux de neurones.

image


Basé sur l'apprentissage automatique et un réseau de neurones, le développeur Christopher Hesse a créé un service en ligne qui peut "dessiner" des croquis de photographies en couleur.

Le site http://affinelayer.com/pixsrv/index.html Christopher Hesse présente un réseau neuronal qui peut finir les chats.

L'utilisateur est invité à dessiner un croquis du chat dans la fenêtre de gauche, à cliquer sur "processus" et à voir comment le réseau neuronal dessine l'illustration. La page montre un si bel exemple:

image


Apparemment, plus les lignes sont utilisées dans l'esquisse et plus l'esquisse ressemble à un chat d'un ensemble d'entraînement, mieux le réseau neuronal créera un dessin à part entière basé sur celui-ci.

Voici ce que l'auteur écrit lui-même:

Récemment, j'ai créé un port pix2pix Tensorflow sur Isola et al, discuté dans l'article Traduction d'image à image dans Tensorflow . J'ai pris quelques modèles créés précédemment et créé une page Web interactive pour les tests. Un navigateur Chrome est recommandé pour la visualisation.
Le modèle pix2pix fonctionne en s'entraînant sur des paires d'images, telles qu'une esquisse d'une façade de bâtiment et une image complète de façades de bâtiment, puis essaie de générer l'image de sortie appropriée pour toute image d'entrée transférée. Cette idée provient de l' article pix2pix , qui est recommandé pour la lecture.

Façades
Le modèle a été formé sur des échantillons de croquis de façades de bâtiments à des images à part entière de façades. Il est peu probable que ce modèle fonctionne sur des esquisses avec une grande zone vide, mais si vous dessinez un nombre suffisant de fenêtres dans l'esquisse, le modèle donne souvent de bons résultats. Dans l'image d'esquisse, les éléments de façade sont dessinés avec des rectangles colorés pour indiquer non seulement les bordures, mais aussi les éléments entiers.

Je n'avais pas le nom des différentes parties des façades du bâtiment, alors je les ai simplement désignées grossièrement.

bords2 chats
La formation s'est déroulée sur environ 2 000 photographies de chats et des croquis avec des bordures générées automatiquement pour ces photographies. Le modèle crée des images en couleur de chats à partir de croquis, mais certains rencontrent des résultats cauchemardesques. J'ai vu l'un d'entre eux ici .
Certaines images ont l'air particulièrement effrayantes, je pense, parce que les chats n'ont pas été dessinés correctement, surtout par derrière les yeux. La procédure de génération automatique des bordures n'était pas de très haute qualité et, dans de nombreux cas, n'a pas révélé les yeux d'un chat, ce qui affecte la qualité de la base de données d'images préparée pour la formation de modèles.

bords2chaussures
La formation a été menée sur la base d'environ 50 000 images de chaussures collectées auprès de Zappos , ainsi qu'avec des bordures de contour générées automatiquement pour ces images. Si vous dessinez vraiment bien les bordures des chaussures, vous pouvez essayer de créer un nouveau design. Gardez à l'esprit que le modèle a été formé sur des objets réels, donc si vous pouvez dessiner une meilleure esquisse 3D, le résultat sera meilleur.

bords2 sacs à main
Par analogie avec les précédentes, la formation a été menée sur la base d'environ 137 000 photographies de sacs collectés sur Amazon, avec des bordures de contour générées automatiquement pour ces photographies. Si vous dessinez une chaussure ici au lieu d'un sac à main, vous obtiendrez une texture de chaussure très étrange.

Implémentation
La formation et l'exportation des modèles ont été effectuées à l'aide du script pix2pix.py de pix2pix-tensorflow . Une démonstration interactive est réalisée sur la base de JavaScript à l'aide de l'API Canvas, qui interagit avec un serveur qui transmet des images Tensorflow. Le serveur peut démarrer Tensorflow lui-même ou transmettre des demandes aux services Google Tensorflow Cloud Cloud .
Les modèles formés sont disponibles dans la section Datasets de GitHub. Les modèles fournis avec l'implémentation pix2pix d'origine devraient également être disponibles. Les modèles peuvent être exportés à partir d'exemples formés à l'aide du script pix2pix.py et les liens vers les modèles exportés se trouvent dans le fichier README sur le serveur GitHub.
Les bordures des photos de chats ont été obtenues à l'aide de l'algorithme de détection des bords imbriqués de manière holistique et cette fonctionnalité a été ajoutée au script process.py et les dépendances correspondantes ont été ajoutées à l' image Docker .

Source: https://habr.com/ru/post/fr401835/


All Articles