Lokaal Intelligent Q&A-systeem

Dit artikel zal dieper ingaan op het gebied van beeldgeneratie, met focus op diffusiemodellen. Door de werkingsprincipes van geavanceerde technologieën zoals DALL·E en Stable Diffusion te integreren, streven we ernaar hun praktische toepassingen en ontwikkelingspotentieel te begrijpen.

Inleiding tot Diffusiemodellen in Beeldgeneratie

diffusion model

Afbeeldingsbron: https://chrislee0728.medium.com/%E5%BE%9E%E9%A0%AD%E9%96%8B%E5%A7%8B%E5%AD%B8%E7%BF%92stable-diffusion-%E4%B8%80%E5%80%8B%E5%88%9D%E5%AD%B8%E8%80%85%E6%8C%87%E5%8D%97-ec34d7726a6c

Diffusiemodellen zijn een type generatief model dat nieuwe afbeeldingen creëert via een omgekeerd diffusieproces. Beginnend bij Gaussiaanse ruis leiden diffusiemodellen geleidelijk de oorspronkelijke afbeelding af. Dit proces kan worden gezien als een simulatie van een geleidelijke "ruisverwijdering"-procedure voor beeldgeneratie. Het is een zeer krachtige en efficiënte generatiemethode die de afgelopen jaren brede aandacht heeft gekregen.

Het Mechanisme van Stable Diffusion

Het werkingsprincipe van Stable Diffusion is gebaseerd op het omgekeerde proces van diffusiemodellen. Het fundamentele idee van diffusiemodellen is om te beginnen met een volledig willekeurige ruisafbeelding en geleidelijk een heldere afbeelding af te leiden. Dit proces is verdeeld in twee fasen:

  1. Voorwaarts Diffusieproces Tijdens het voorwaartse diffusieproces wordt, gegeven een echte afbeelding, geleidelijk ruis toegevoegd totdat deze een volledig willekeurige ruisafbeelding wordt. Dit proces kan worden begrepen als de "destructieve" stap van de afbeelding. Ruis wordt doorgaans incrementeel toegevoegd via een Gaussiaanse verdeling, waarbij elke stap de afbeelding waziger en ruisriger maakt.

  2. Omgekeerd Diffusieproces Het omgekeerde diffusieproces is het kernfunctionerende deel van Stable Diffusion. Gegeven een volledig willekeurige ruisafbeelding leert het model hoe het deze geleidelijk kan ontruisen om de oorspronkelijke afbeelding te herstellen. Het omgekeerde proces is het tegenovergestelde van het voorwaartse proces; het gebruikt een voorgetraind neuraal netwerkmodel om bij elke stap een helderdere afbeelding af te leiden. Elke stap van het omgekeerde proces houdt in dat het model de grootte van de huidige ruis voorspelt en deze van de huidige afbeelding aftrekt om een minder ruisende afbeelding te verkrijgen. Uiteindelijk kan het model na meerdere omgekeerde stappen een heldere en hoge-resolutie afbeelding genereren uit pure ruis.

diffusion model

Afbeeldingsbron: https://sushant-kumar.com/blog/ddpm-denoising-diffusion-probabilistic-models

Het SD-model Implementeren op Jetson-apparaten

We kunnen Stable Diffusion WebUI snel implementeren op Jetson-apparaten met behulp van de jetson-examples-tool. Dit project stelt gebruikers in staat om het Stable Diffusion-model te laden en workflows te configureren via een grafische interface.

Stap 1. Installeer jetson-examples op je Jetson-apparaat. Open een terminal op je Jetson-apparaat en voer in:

bash
pip3 install jetson-examples

Stap 2. Gebruik de jetson-examples-tool om het stable-diffusion-webui-project met één commando te installeren:

bash
reComputer run stable-diffusion-webui

Stap 3. Open je browser en ga naar http://<ip-jetson>:7860, en je kunt beginnen met het genereren van afbeeldingen met Stable Diffusion.

test

Meer Referentie-inhoud