Il s'agit d'une implémentation de référence de l'effet 3D Ken Burns à partir d'une seule image [1] en utilisant pytorch. Compte tenu d'une seule image d'entrée, il anime cette image toujours avec une analyse de caméra virtuelle et un zoom soumis à la parallaxe de mouvement. Si vous utilisez notre travail, veuillez citer notre papier [1].
Plusieurs fonctions sont implémentées dans CUDA en utilisant Cupy, c'est pourquoi Cupy est une dépendance requise. Il peut être installé à l'aide pip install cupy ou alternativement à l'aide de l'un des packages binaires fournis comme indiqué dans le référentiel Cupy. Veuillez également vous assurer d'avoir la variable d'environnement CUDA_HOME configurée.
Afin de générer les résultats de la vidéo, veuillez également vous assurer d' pip install moviepy installé.
Pour l'exécuter sur une image et générer l'effet 3D Ken Burns entièrement automatiquement, utilisez la commande suivante.
python autozoom.py --in ./images/doublestrike.jpg --out ./autozoom.mp4
Pour démarrer l'interface qui vous permet d'ajuster manuellement le chemin de la caméra, utilisez la commande suivante. Vous pouvez ensuite naviguer vers http://localhost:8080/ et charger une image à l'aide du bouton dans le coin inférieur droit. Veuillez être patient lors du chargement d'une image et de l'enregistrement du résultat, il y a un peu de traitement en arrière-plan.
python interface.py
Pour exécuter l'estimation de la profondeur pour obtenir l'estimation de la profondeur brute, utilisez la commande suivante. Veuillez noter que ce script n'effectue pas le réglage de la profondeur, voir # 22 pour plus d'informations sur la façon de l'ajouter.
python depthestim.py --in ./images/doublestrike.jpg --out ./depthestim.npy
Pour comparer l'estimation de la profondeur, exécutez python benchmark-ibims.py ou python benchmark-nyu.py . Vous pouvez l'utiliser pour vérifier facilement que l'implémentation fournie fonctionne comme prévu.
Si vous n'avez pas un environnement approprié pour gérer ces projets, vous pouvez essayer Colab. Il vous permet d'exécuter gratuitement le projet dans le cloud. Il y a plusieurs personnes qui fournissent des cahiers Colab qui devraient vous aider à démarrer. Quelques-uns dont je connais incluent un d'Arnaldo Gabriel, un de Vlad Alex, et un d'Ahmed Harouche.
Cet ensemble de données est concédé sous licence en vertu de la licence publique internationale d'attribution des communes Creative Commons (CC BY-SA 4.0) et ne peut être utilisé qu'à des fins non commerciales. Veuillez consulter le fichier de licence pour plus d'informations.
| scène | mode | couleur | profondeur | normale |
|---|---|---|---|---|
| ASDF | vol | 3,7 Go | 1,0 Go | 2,9 Go |
| ASDF | marche | 3,6 Go | 0,9 Go | 2,7 Go |
| vide | vol | 3,2 Go | 1,0 Go | 2,8 Go |
| vide | marche | 3,0 Go | 0,9 Go | 2,7 Go |
| froideur | vol | 5,4 Go | 1,1 Go | 10,8 Go |
| froideur | marche | 5,2 Go | 1,0 Go | 10,5 Go |
| ville | vol | 0,8 Go | 0,2 Go | 0,9 Go |
| ville | marche | 0,7 Go | 0,2 Go | 0,8 Go |
| environnement | vol | 1,9 Go | 0,5 Go | 3,5 Go |
| environnement | marche | 1,8 Go | 0,5 Go | 3,3 Go |
| fort | vol | 5,0 Go | 1,1 Go | 9.2 Go |
| fort | marche | 4,9 Go | 1,1 Go | 9.3 Go |
| herbe | vol | 1,1 Go | 0,2 Go | 1,9 Go |
| herbe | marche | 1,1 Go | 0,2 Go | 1,6 Go |
| glace | vol | 1,2 Go | 0,2 Go | 2,1 Go |
| glace | marche | 1,2 Go | 0,2 Go | 2,0 Go |
| chevaliers | vol | 0,8 Go | 0,2 Go | 1,0 Go |
| chevaliers | marche | 0,8 Go | 0,2 Go | 0,9 Go |
| avant-poste | vol | 4,8 Go | 1,1 Go | 7,9 Go |
| avant-poste | marche | 4,6 Go | 1,0 Go | 7,4 Go |
| pirates | vol | 0,8 Go | 0,2 Go | 0,8 Go |
| pirates | marche | 0,7 Go | 0,2 Go | 0,8 Go |
| tireur | vol | 0,9 Go | 0,2 Go | 1,1 Go |
| tireur | marche | 0,9 Go | 0,2 Go | 1,0 Go |
| boutiques | vol | 0,2 Go | 0,1 Go | 0,2 Go |
| boutiques | marche | 0,2 Go | 0,1 Go | 0,2 Go |
| bidonvilles | vol | 0,5 Go | 0,1 Go | 0,8 Go |
| bidonvilles | marche | 0,5 Go | 0,1 Go | 0,7 Go |
| métro | vol | 0,5 Go | 0,1 Go | 0,9 Go |
| métro | marche | 0,5 Go | 0,1 Go | 0,9 Go |
| temple | vol | 1,7 Go | 0,4 Go | 3,1 Go |
| temple | marche | 1,7 Go | 0,3 Go | 2,8 Go |
| Titan | vol | 6,2 Go | 1,1 Go | 11,5 Go |
| Titan | marche | 6,0 Go | 1,1 Go | 11.3 Go |
| ville | vol | 1,7 Go | 0,3 Go | 3,0 Go |
| ville | marche | 1,8 Go | 0,3 Go | 3,0 Go |
| underland | vol | 5,4 Go | 1,2 Go | 12.1 Go |
| underland | marche | 5,1 Go | 1,2 Go | 11.4 Go |
| victorien | vol | 0,5 Go | 0,1 Go | 0,8 Go |
| victorien | marche | 0,4 Go | 0,1 Go | 0,7 Go |
| village | vol | 1,6 Go | 0,3 Go | 2,8 Go |
| village | marche | 1,6 Go | 0,3 Go | 2,7 Go |
| entrepôt | vol | 0,9 Go | 0,2 Go | 1,5 Go |
| entrepôt | marche | 0,8 Go | 0,2 Go | 1,4 Go |
| occidental | vol | 0,8 Go | 0,2 Go | 0,9 Go |
| occidental | marche | 0,7 Go | 0,2 Go | 0,8 Go |
Veuillez noter qu'il s'agit d'une version mise à jour de l'ensemble de données que nous avons utilisé dans notre article. Ainsi, bien qu'il ait moins de scènes au total, chaque capture d'échantillon a désormais une distance focale variable qui devrait aider à la généralisation. De plus, certains exemples sont trop ou sous-exposés et ce serait une bonne idée de supprimer ces valeurs aberrantes. Veuillez consulter # 37, # 39 et # 40 pour des discussions supplémentaires.
Ceci est un projet d'Adobe Research. Il est licencié en vertu de la licence publique internationale d'attribution de Creative Commons-Noncommercial-Sharealike 4.0 (CC BY-NC-SA 4.0) et ne peut être utilisé qu'à des fins non commerciales. Veuillez consulter le fichier de licence pour plus d'informations.
[1] @article{Niklaus_TOG_2019,
author = {Simon Niklaus and Long Mai and Jimei Yang and Feng Liu},
title = {3D Ken Burns Effect from a Single Image},
journal = {ACM Transactions on Graphics},
volume = {38},
number = {6},
pages = {184:1--184:15},
year = {2019}
}
La vidéo ci-dessus utilise des matériaux sous une licence commune créative ou avec la permission du propriétaire, comme détaillé à la fin.