Project Concept
Afterglow is a physical term: the light that continues to emanate from an object even after the source has extinguished.
This is how the end of a night in a club feels. The music has stopped, the people have gone home, but the room still seems to remember them—in the smoke, in the glow of the string lights, on the confetti-strewn floor.
I trained the Stable Diffusion neural network on my photojournalism shots from parties. Each of these photos features people: dancing, blurred by motion, bathed in purple light. Then, I asked the model to render the same room, empty. The model cannot entirely «forget» what it was trained on, and in the vacant space, traces of them emerge: semi-transparent silhouettes, hands catching the light, shadows dissolved in the smoke.
This series of 10 frames is a chronicle of the final hours of the night, spanning from 3:40 AM to 6:10 AM. From one frame to the next, I decrease the strength of the trained style, and the network’s «memory» of the party gradually fades along with its light.
Source images for training

Examples of source photographs
Sources and Usage Rights: — 20 photographs from my personal archive: reportage from club parties, author—myself.
What unites the shots: — purple-pink light against a deep black background with cool blue accents; — motion blur: «smeared» hair, hands, silhouettes; — film grain and soft contrast; — low and angled perspectives, flash on the hair, string of point lights under the ceiling.
All photographs are presented in a 1:1 square format.

Resulting Image Series
10-frame sequence: from the last track to dawn. Next to each frame, the time and the strength of the learned style (ranging from 1.0 to 0.4) are indicated.03:40 — Last Track (Style 1.0). The dance floor is still full, but people are beginning to turn into translucent streaks of light. 04:00 — Hands Up (0.95). Only raised hands remain from the crowd, dissolving into purple smoke. 04:20 — Couple (0.9). Two silhouettes embrace and melt into the mist, as if their movement is imprinted on the air. 04:40 — Jacket (0.85). The last guest at the empty bar. The room is almost deserted. 05:00 — Smoke (0.8). An empty stage, a single spotlight beam, and a figure about to vanish. 05:15 — DJ Booth (0.75). The music has ended, but the DJ booth is still glowing. There are no people in the frame. 05:30 — Confetti (0.7). The floor is strewn with confetti; a final blurred silhouette walks into the darkness. 05:45 — Garland (0.65). A garland glows above the empty dance floor, the light blurring like a memory. 06:00 — Lights On (0.5). An empty hall. The purple fades, and the night ends. 06:10 — Door (0.4). An open door to the morning: a cold blue light in the doorway, and a last purple glow inside.




Code Functionality
I compared the same prompt («empty club, haze, string lights») without and with fine-tuning. Baseline SDXL renders a staged hall bathed in warm yellow light. The fine-tuned model adopts my style: a purple-pink palette with blue accents, grain, motion blur, and string lights. Furthermore, blurry dancing figures appeared in the «empty» hall—the model had only seen this lighting in conjunction with people and couldn’t separate the two elements. This observation forms the basis of the series concept.
Without training, the image is an advertisement: sharp figures, even lighting. At step 250 out of 500, the figure dissolves into blur and the background darkens. At step 500, I add details from my photoshoot: garlands, a flash on the hair, and grain.
The main parameter of the series is the strength of the trained style (LoRA weight), ranging from 1.0 down to 0.4. At high strength, the frame is dark and grainy; people turn into phantoms. At low strength, the image becomes a standard neural network output: even lighting, uniform, sharp figures. Within the series, this functions like time—the night becomes a more distant memory.
Shots 1–3: people are present, but they have become light trails. Shots 4–5: solitary figures at the bar and on the stage. Shots 6–8: people are gone, leaving only objects and light. Shots 9–10: empty spaces, culminating in a cold morning light. The color palette remains unified throughout the series. In the shot titled «Lights On, ” I requested bright white working light, but the venue remained purple—the memory of the party proved stronger than the request.Generation Details. Each shot was generated in 2–4 variations (seeds), with the best one chosen manually. For empty shots, people were excluded using a negative prompt; for shots featuring specters, they were described as „translucent silhouettes in motion blur.“ At a low style strength, the „Confetti“ and „Garland“ shots leaned toward a warm orange, characteristic of the base model. I added the color purple to the prompts and slightly increased the style strength. The BLIP captioning model sometimes made errors during night shooting (describing one photo as „two birds in the dark“), but this did not affect the style training: the style keyword is placed at the beginning of every caption.
Learning Process
20 photographs are uploaded to a laptop and cropped to a square format. The BLIP neural network automatically captions each photo, with the keyword «aftrglw» added to the caption. Then, Stable Diffusion XL is further trained using the DreamBooth + LoRA method: not the entire model is trained, but a small add-on to it.— Base model: Stable Diffusion XL 1.0 — Method: DreamBooth + LoRA (rank 16) — Dataset: 20 images, 512×512 resolution — Steps: 500, learning rate 1e-4 — Optimization: gradient checkpointing, 8-bit Adam, fp16 — Google Colab, T4 GPU, 43 minutes, final loss ≈ 0.04 — Generation: 1024×1024, 30 steps, guidance scale 7
Description of Generative Model Application
Stable Diffusion XL 1.0 — base generative model, fine-tuned on my photographs. https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0DreamBooth + LoRA (diffusers) — fine-tuning method. https://github.com/huggingface/diffusers/tree/main/examples/dreamboothBLIP — automatic captioning for training images. https://huggingface.co/Salesforce/blip-image-captioning-baseClaude (Anthropic) — concept development, adapting course notebook training code, and drafting explanatory texts. https://claude.ai



























