Accueil Technologies Neural Style Transfer : comment récupérer le code source et l’utiliser ?
Neural Style Transfer comment récupérer le code source et l'utiliser

Neural Style Transfer : comment récupérer le code source et l’utiliser ?

par Jérémy PASTOURET
Publié : Mis à jour le

Dans mes précédents articles, je vous ai présenté le principe du Neural Style Transfer (transférer le style d’une œuvre sur une photo) pour vous expliquer comment l’algorithme fonctionne. Ce nouvel article conclut notre dossier consacré au Neural Style Transfer. Je vais à présent vous montrer comment récupérer le code source final, et surtout comment le modifier pour le tester avec vos propres photos et œuvres.

Comment récupérer le code source du Neural Style Transfer ?

bannière modernes

Les équipes de TensorFlow et de Google ont créé de nombreux guides sur l’intelligence artificielle. Leur but : transmettre leur savoir et agrandir la communauté de personnes utilisant leurs librairies. Ainsi, l’un de leurs tutoriels contient le code source du Neural Style Transfer.

Il existe différents moyens de récupérer le code source :

Pour éviter de se prendre la tête sur la partie installation (Python, Librairie…), je vous recommande la solution Google Collab. Ce service gratuit de Google permet de bénéficier de leurs serveurs pour faire tourner des scripts Python. Il y a bien entendu une limite de ressource, mais vous avez de la marge. Cette plateforme a pour vocation de mener des recherches en ligne. Cependant, je ne vous garantis rien sur la propriété du code écrit sur une telle plateforme.

Comment adapter le code pour tester le Neural Style Transfer sur mes photos ?

bannière ecolo et techno

Rendez-vous sur Google Collab, puis dans la section Import and configure modules > Download images and choose a style image and a content image

Intégration d'images TensorFlow Natural Style Transfer

C’est dans cette partie que l’algorithme récupère la photo et l’œuvre. La variable content_path contient la photographie à transformer en œuvre. Quant à la variable style_path, celle-ci contient l’œuvre dont il faut récupérer le style.

Sur chacune des lignes, vous avez un lien hypertexte Web. Pour appliquer l’algorithme sur vos images, il suffit de remplacer ces URL.

Comment créer une URL pour une image afin d’alimenter l’algorithme

Définition du contenu et du style - Neural Style Transfer

En hébergeant ses images sur un serveur tiers

Si vous n’avez pas de serveur personnel, vous pouvez utiliser un service tiers comme imgur ou imgbb. Dans le cas d’Imgur, vous obtenez un lien après avoir importé votre image.

Par exemple avec l’URL : https://imgur.com/a/ZeGhgNF.

Vous devez simplement rajouter la bonne extension à la fin de l’URL, et vous aurez votre image. Le résultat obtenu est https://imgur.com/a/ZeGhgNF.png

Pour Imgbb, vous pouvez choisir au bout de combien de temps la photo est supprimée. C’est plutôt utile pour éviter qu’une image reste trop longtemps sur le web. Ensuite, vous devez choisir sous quel format récupérer votre photo.

Récupération lien ImgBB

Dans la liste Codes d’intégration, choisissez la valeur Lien complet HTML. Dans le champ de texte en dessous, vous devez copier le lien généré (comme indiqué sur l’image ci-dessus).

En utilisant un serveur personnel

Si vous avez un site web comme nous, vous pouvez mettre directement vos images dans un répertoire caché. Ce qui vous permet ensuite d’accéder à votre image en tapant la bonne URL. Par exemple : les-enovateurs.com/natural_style_transfer/oeuvre.jpg et les-enovateurs.com/natural_style_transfer/photo.jpg

Utiliser des photos existantes sur le Web

Vous pouvez aussi dénicher votre œuvre ou photo sur le Web et récupérer le lien. Pour cela, effectuez un clic droit sur l’image et sélectionnez l’option copier l’adresse de l’image.

Modification du code source du Neural Style Transfer

Intégration d'images TensorFlow Natural Style Transfer

Revenez sur le code source de l’algorithme, dans Google Collab. Après avoir importé et généré les liens pour une photo et une œuvre, vous devez remplacer les images de base du code source. Pour cela, placez votre curseur UNIQUEMENT sur les URLS et remplacez-les par vos liens. Voici une possibilité d’URL :

Lien mis à jour - Google Collab Natural Style Transfer

Lancement du code source du Neural Style Transfer

Bannière composants

Pour que la magie opère, vous avez deux possibilités : soit vous exécutez le programme, morceau de code par morceau de code. Ou alors, vous lancez tout d’un seul coup.

Exécuter du code bloc par bloc

Lecteur Google Collab - bloc par bloc

Lorsque vous passez la souris sur les bloc de code (entre les accolades), un petit logo de lecture (player) s’affiche. Il suffit de cliquer dessus pour que la machine exécute le code.

Lancement complet

Lancement complet - Google Collab - Natural Style Transfer

Dans le menu de Google Collab se trouve un onglet Runtime, cliquez dessus. Dans le sous-menu se trouve l’élément Run all. Celui-ci permet de lancer l’intégralité du script.

Télécharger le rendu final

Resultat final Natural Style Transfer

A la fin du processus, votre navigateur vous propose de télécharger l’œuvre créée par la machine. Après l’avoir enregistrée, il vous suffit d’ouvrir le fichier pour voir le résultat final.

Petites astuces pour affiner le Neural Style Transfer

Pré-traitement rapide du Neural Style Transfer

Augmenter la qualité d’image

Vous avez dû vous rendre compte que l’image téléchargé est en basse définition. La raison est simple : plus vous augmentez la qualité d’image (et donc le nombre de pixels présents sur une photo), plus le traitement sera long. Pour éviter de laisser tourner l’IA plusieurs nuits, il est fortement recommandé de diminuer la résolution de l’image.

Grâce à cette technique, vous pouvez ajuster les paramètres et effectuer divers tests. Quand vous êtes suffisamment satisfait, vous pouvez tenter d’augmenter la qualité d’image. Pour cela, rendez-vous dans la section Visualize the input et augmenter la valeur 512 (pixels).

Augmenter qualité - Natural Style Transfer

Vous devez ensuite relancer tout le script pour prendre en compte la nouvelle valeur.

Amélioration du système de transfert de style

Si vous avez bien suivi mon précédent article qui explique le fonctionnement de l’algorithme, vous savez qu’il y a une étape cruciale. Cette étape permet de vérifier que l’IA arrive à interpréter le contenu de votre photo. Il faut ensuite lui spécifier quelles sont les couches (layers) les plus importantes. Les paramètres de base sont adaptés à la photo du labrador.

Pour faire en sorte que le processus fonctionne mieux sur votre photo, vous devez potentiellement indiquer d’autres couches. Pour cela, rendez-vous dans la section Define content and style representations > Choose intermediate layers from the network to represent the style and content of the image:

Et modifiez les valeurs en vous basant sur les couches identifiées dans le bloc de code précédent :

Changement de layer - Natural Transfer Style

Conclusion

classiques

C’est la fin de notre dossier sur le Natural Transfer Style, j’espère que cette thématique vous a plu… et que vous nous enverrez vos plus belles créations ! Si connaissez d’autres applications d’IA sympa à manipuler, indiquez-les en commentaire.

En attendant je vous invite à lire une autre série d’articles consacrés à la reconnaissance faciale.

Vous pourriez aussi aimer

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.