AnyAngle : LoRA Qwen-Image 2.1 pour des angles de caméra arbitraires
AnyAngle déplace une photo de Qwen-Image 2.1 vers n'importe quel angle : rendez la scène depuis un splat ou un modèle 3D, puis laissez le modèle d'édition reporter ce point de vue.
Les changements d'angle uniquement pilotés par prompt dans les modèles d'édition ont tendance à se limiter à une poignée d'azimuts et d'élévations fixes, et pousser plus loin fait dériver l'image vers un rendu différent. AnyAngle répartit la tâche : la géométrie décide du nouveau point de vue, et le modèle d'édition décide de l'aspect que doit avoir l'image d'origine depuis cet angle.
Un changement d'angle de caméra réalisé avec le LoRA, issu de la carte du modèle.
Le pipeline
La carte du modèle présente la méthode comme une chaîne d'outils existants plutôt que comme un modèle unique :
- Reconstruire la scène. L'image source devient un Gaussian splat (l'auteur utilise Tripo Splat, mais précise que n'importe quel générateur de splats fonctionne) ou un modèle 3D via Trellis2 ou Pixal3D.
- Déplacer la caméra dans Blender. Importez la reconstruction, ajoutez une caméra, réglez-la sur l'angle souhaité, puis rendez une image grossière de ce point de vue.
- Transférer l'angle avec Qwen-Image 2.1. Envoyez le rendu grossier et l'image d'origine dans le modèle d'édition avec le LoRA AnyAngle et le prompt ci-dessous. La sortie conserve le style et les matières de l'image d'origine tout en adoptant le nouveau point de vue.
Change the camera angle from <image2> to <image1>.
Le pipeline en trois étapes tel qu'illustré sur la carte du modèle : image source, rendu grossier depuis le nouvel angle, et édition terminée.
Comment les éléments se connectent dans le graphique de la carte du modèle : l'image d'origine et le rendu grossier entrent tous deux dans le pipeline d'édition Qwen-Image 2.1 avec le LoRA appliqué.
Paramètres
La carte précise dans quelles conditions le LoRA aime tourner :
- Force du LoRA : 1.0.
- CFG 3.0 et 20 étapes ou plus pour de meilleurs résultats.
- Un LoRA turbo peut être empilé pour réduire la latence lors du storyboard et de la planification de plans, au prix d'une légère perte de qualité.
Le poids lui-même est un adaptateur de rang 24, d'environ 120 Mo en bf16, et ses clés sont nommées diffusion_model.*, ce qui correspond à la nomenclature attendue par le chargeur de LoRA de ComfyUI. Il se charge donc sans étape de conversion.
Entraînement
Le jeu de données mélange des rendus Blender réels, choisis pour leur variété stylistique, avec des paires synthétiques : l'image d'origine plus une frame correspondante sous un angle de caméra différent. Comme l'ancre et la cible sont des rendus de la même scène, les paires sont géométriquement cohérentes plutôt qu'hallucinées, ce qui permet de garder les styles alignés lors de grands changements d'angle. Pour couvrir les styles illustration et croquis, l'auteur a utilisé des rendus orbitaux image-to-video de MiniMax H3, où tout ce qui est dans le cadre reste immobile pendant que la caméra bouge, avant d'entraîner sur quelques milliers d'étapes.
Où ça échoue
Le résultat ne vaut que ce que vaut la reconstruction. Si le splat ou le modèle 3D est spatialement erroné ou trop grossier, des objets peuvent se retrouver mal placés ou des visages déformés sur les images basse résolution. Les exemples de la carte montrent une table et une queue-de-cheval qui atterrissent dans une disposition incorrecte, exactement pour cette raison, et les correctifs suggérés sont de corriger le placement dans la reconstruction ou de partir d'un meilleur splat, en comptant sur le fait que les nouveaux générateurs 3D et de mondes continueront d'améliorer cette étape.
Disponibilité
- Poids du LoRA, méthode et exemples : lilylilith/QI_2.1_AnyAngle
- Modèle de base : Qwen/Qwen-Image-2.1, chargé via le flux de travail d'édition officiel Qwen Image 2.1 dans ComfyUI
Commentaires
Connectez-vous avec GitHub pour rejoindre la discussion.