160 comments

[ 0.26 ms ] story [ 70.2 ms ] thread
The capabilities of local LLM text-to-image is honestly pretty damn impressive. IMO, I think local image generation is currently ahead of local code generation. I can get an image in seconds locally with the quality being way higher than what I'd expect from a local model. However with coding it's much slower and much less impressive. I'm sure there's a reason for this and I'm not an AI expert so I'll let the smarter folks tell me why, but that's just been my observation thus far.
I've played with diffusion models on and off since the first release of Stable Diffusion - just for amusement, without a particular goal.

Recently, I've been helping a friend's wife with some basic vector images for her sewing hobby (she has what is essentially a CNC sewing machine) and have been super-impressed with FLUX.1-Kontext, which I've been running on my Macbook Pro with mflux. Its ability to (for example) take a photo of a human or an animal and return a line drawing which is recognisably them (rather than just a generic similarish image as I've experienced with other models) is excellent.

It's an older model now, but (AIUI) has the text-handling features baked in, and in my various testing is very reliable at giving me the outputs that I want, without the randomness I've experienced previously. It's big and relatively slow (~3 mins per 512x512 image edit on my M1 Max Mac) but excellent to work with. It's also very straightforward to set up, without the harness complexity of e.g. comfyui.

is the cnc sewing machine an off the shelf model or something DIY? I'd love to hear more
Off the shelf - it’s a Brother. It prints via a proprietary file format (.PES) but there’s an extension for Inkscape that supports creation and export.
How are you converting the bitmaps into vector images?
This is currently the weakest part of the workflow. I'm tracing the output images with VTracer [0] and then finishing them manually.

Through a combination of careful initial prompting (e.g. requesting line drawings, requesting limited colours ["posterization" works] if you need colour at all, requesting background removal) and then using the settings in VTracer to limit the colours used for the resulting SVG to the minimum needed, you can end up with an SVG that doesn't take too long to clean up in Inkscape. It usually takes a few minutes of deletions and path unions to produce something usable.

Diffusion models outputting SVGs would obviously be very interesting for this, but this is probably a small niche compared to everything that diffusion models can do with raster images, and I've not found anything usable online so far. LLMs (understandably, given their core technology) are still pretty bad at creating SVG art.

[0] https://github.com/visioncortex/vtracer

Claude and I have spent most of the summer on exactly this problem for Skechworks (skechworks.com), a free little Mac design app I made to help my own workflow that is very similar to yours. I use it for my custom coin shop The Achieve Mint (theachievemint.com).

It runs VTracer under the hood too. Most of the cleanup you're doing in Inkscape could possibly be pushed to before and after the trace?

Skechworks picks the palette before the trace and forces it again after. I quantize to 8 colors with pngquant, trace, then snap every fill back to the nearest palette color. VTracer fills each region with its own average color, otherwise you get hundreds of nearly identical grays. One design went from 279 fill colors to 3.

I upscale 2x before I quantize. The anti-aliasing is what tells the tracer where an edge really sits. Quantize at 1x and you throw that away, and small text comes out lumpy. Related gotcha: filter_speckle is an area, so don't double it when you double the image.

I also flatten transparency onto white first. VTracer counts every alpha value as a different color. I had a 5 color picture that it saw as 688 colors, and the trace took 6 GB of memory. Flattened, the same picture took 300 MB.

For the background I sample the whole edge of the picture. If 85% of it is one color, I delete every path in that color that touches the edge. White inside the drawing never touches the edge, so it stays.

For black and white I threshold with Otsu, then trace in color mode with hierarchical stacked instead of bw mode. bw mode hands you one giant black path full of holes. Stacked gives you every region as its own shape, which is much easier to edit. You have to pad the image with the background color first, or VTracer decides your subject is the canvas.

Your FLUX step is the same trick I use for photos and messy art. I have an image model redraw the picture as flat art, then trace the redraw. That came out about a quarter the file size of the best direct trace I could get. The catch is that the model moves and resizes the subject a little every run. I measure the box around the ink in both pictures and fit the trace back onto the original.

What I haven't solved is curve fitting. vectorizer.ai gives you real arcs and straight lines. VTracer gives you splines, so circles are never quite circles.

Remember that quality output is a necessary but insufficient property of a generative model.

Prompt-adherence is really hit-or-miss—especially if one lacks the visual vocabulary. Likewise with coding, I find junior devs don't think to prompt re: respecting this-or-that interface, or refactoring to point-free style, etc.

So, as others have said, the artist knows better.

I think there was a lot more brainpower invested in the media generation side of things. The noise-based diffusion technique is further developed. It had a discovery of applying a physics-based understanding of Brownian motion to guide it. Image generation has comparatively simple training process - this is an image with dog, and without dog (contrastive learning).

Might be worth to watch the diffusion based LLMs.

Image gen you eyeball one frame and stop, code needs hundreds of tokens all correct in sequence, one bad line and the whole thing fails.
Interesting in the example of assembling the Cheers team how the otherwise great result genericizes Shelley Long.
The result seems a pretty good representation given the source image wasn't that great. I think that Woody Harrelson comes across much worse.
Very impressive, and kind of worrying a 7B model can have such capabilities. The implications are huge. And Qwen does no watermarking (yet) yeah?
They always had a fourier space mark in their models even without the VAEs are usually pretty easy to detect.
God I love the Qwen team. Easily the most diverse set of models from all the Chinese labs. Only Gemini/DeepMind comes close.
How do you use this model locally, similarly to using `llama-server -m <model>`?
Probably ComfyUI is one of the easiest way to get started with local image/video models. Or perhaps vLLM, if they have support for it already, would be something like `vllm serve <model> --omni --port 9080`
on the linked GitHub page they list support Diffusers, ComfyUI, vLLM-Omni, SGLang, and LightX2V with links to each
> Diffusers, ComfyUI, vLLM-Omni, SGLang, and LightX2V

I think that's all Python (not a direct executable).

You could just do (see the "Quick Start") four `pip install` and have a dozen lines script to generate the image. But `llama.cpp` and similar do not require e.g. installing Torch (or PyTorch) - you can use `llama.cpp` on a non-specialized machine.

"just"

I don't think I have ever once run "pip install transformers" and had it work without three rounds of fiddling

Or trying to install the whole of CUDA on machines that do not even have a GPU (not Nvidia, not anything past the embedded)...

Yep, that's (also) what I meant ;)

Lean, efficient... Also sensible and trouble-less.

The 'not nvidia' is no longer a deal breaker by itself.
There is difussion.cpp which is intended for those types of models. I set up krea-2-turbo with the help of ChatGPT 2 months ago, if you have a capable computer that's what I would suggest once it becomes supported.
Additional question is what kind of local hardware would be required for this? 7B parameters sounds very light weight, but I'm not sure.
It's about 16 GiB at Q8 quants.

I think it will run on anything that has enough memory. I just tested it on a standard laptop (dual-channel DDR5), and it takes about 3 minutes for a 512x512. If you want to run it at interactive speeds, you would want a GPU (one which fits this in VRAM).

> You mean besides stable-diffusion.cpp ?

Yes, thanks, I didn't know about that. Will try it.

(comment deleted)
I've just set it up on my local machine just now, as my first local image diffuser. I can confirm it's very easy.

I tried stable-diffusion.cpp, following its compile guide here[0], and its Qwen Image-2.1 specific instructions here[1]. It works out of the box. I made a test pelican[2]. It took 3 minutes on a CPU.

[0] https://github.com/leejet/stable-diffusion.cpp/blob/master/d...

[1] https://github.com/leejet/stable-diffusion.cpp/blob/master/d...

[2] https://i.ibb.co/yMknC2K/output.png

Thank you! Can you please check how much RAM does it consume (and require)?
This is what the runtime reports (with Q8 quants),

    total params memory size = 15645.19MB (VRAM 15645.19MB, RAM 0.00MB):
    text_encoders 7669.77MB(VRAM),
    diffusion_model 7331.05MB(VRAM),
    vae 644.38MB(VRAM),
    controlnet 0.00MB(N/A),
    extensions 0.00MB(N/A)
That suggests that 16GB RAM will not be enough.

In fact, like it appears in the reports above, it is "7b" as in

> 7B parameters in its visual generation component

Unsloth Desktop is the easiest way imo. There are already gguf quants of this model, or simply wait until the official one comes out.
I use opencode + <a decent saas llm> to set up all this new ai generation stuff. GLM-5.3 is my current gun. Safely inside podman containers too because I dont trust this fast moving python eco system at all. Never do I want this running on my main OS.

I have FLUX.2 klein and dev, Ideogram, LaDA-Image and SenseNova locally. Works great. Ive never touched a file.

The days of making container yamls myself is over. I read them but I dont edit anymore.

I am on AI max 395, comfyUI+qwen models is all you technically need. With today's release, I just built a quicker html that allow simpler prompt use and edits.. its not bad for a day's work, but a little too unpolished to publish. I would say, try comfyUI first ( complex, but it worked OOTB ).
Boy do I love waking up to find a new awesome toy from the Qwen team waiting for me to play with! Pulling it now
A 7B diffusion model can now render CJK text better than Microsoft Windows.
I am really grateful to the Chinese Labs for open sourcing their best models. If it was left to the Americans, we would be forced to pay obscene API fees to use them.
Note that the license on this has this in it:

> You shall not use the Materials for any commercial purpose without obtaining a separate commercial license from us.

It probably will be much cheaper to use than other image models, but it seems that will be up to the whims of Qwen/Alibaba rather than just being the cost of putting it in a cloud provider.

https://github.com/QwenLM/Qwen-Image-2.1/blob/main/LICENSE

Honestly, that's fine. The commercial license isn't that bad, and cloud providers selling API access to this can afford it.

I am just happy I can run these models on my own hardware. Hopefully in 10 years, self-hosted models far exceeding what's currently available will run comfortable on commodity hardware.

Which lab is open sourcing their model?
A lot of the previous Qwen models seem to have used Apache licenses, among others:

https://en.wikipedia.org/wiki/Qwen#List_of_models

Unfortunately, it looks like this model is using a much more restrictive license:

https://github.com/QwenLM/Qwen-Image-2.1/blob/main/LICENSE

I'm willing to bet a nonzero amount of its training material is GPL, so I'll treat it as GPL licensed instead and use it however the fuck I want.

If AI labs get to ignore licenses, so do we.

It's not going to matter unless you plan to commercially deploy the model, as far as I see.

If you were to generate outputs for commercial use, I think it would still violate this research license, but it's not like they are going to know, are they?

That said, I am disappointed that the model is not actually open-weights as I expected based on the headline.

That seems quite important. Definitely requires any grown up company to have to do a bunch of legal paperwork to use it.
It's not going to matter unless you plan to commercially deploy the model, as far as I see.

It's not going to matter then, either. What are they going to do, sue me for copyright infringement?

[delayed]
You really think Alibaba is going to go around and sue in US courts for something like this?

It’s more of something to scare companies with legal teams. If you’re an individual or hobbyist doing a side project the risk is essentially zero.

> I'm willing to bet a nonzero amount of its training material is GPL

Image data?

> GPL licensed instead and use it however the fuck I want

GPL is jot a "use it however the fuck I want" license. Maybe you're thinking of the WTFPL?

> GPL is not a "use it however the fuck I want" license. Maybe you're thinking of the WTFPL?

No. GPL is a "use it however the fuck you want" license. The GPL has no restrictions on *use*, only on redistribution.

What are the top image models that still use a less restrictive license today?
Boogu-Image has the Apache 2.0 License [1] (good coherence, but outputs can look synthetic).

And Krea 2 has a community license [2] that is fairly permissive - I think commercial usage is allowed under $1 million.

Boogu-Image scored 6/15 and Krea 2 scored 7/15 on my GenAI Showdown benchmark [3] - only Ideogram4 eclipses them in terms of local models, but its got a far more restrictive license and the JSON structured inputs can be a pain to work with.

[1] - https://github.com/Boogu-Project/Boogu-Image

[2] - https://www.krea.ai/krea-2-licensing

[3] - https://genai-showdown.specr.net/?models=fd,hd,kd,qi,f2d,zt,...

Calling open-weights as open-source in marketing materials is the usual misrepresentation. But now with the restriction on commercial use (which is against opensource definition) it is not even open-weights, technically it would be more accurate to call it weights-available.
And the only reason source available had any significance is that you could look at something and understand it. Weights are much much more opaque.

It's just freeware.

Though weights can be finetuned and quantized.
Tune the weights a bit and call them derivative work.
I have seen comments on X that they will consider a revenue cap for the non-commercial restriction.

A researcher commented among the lines that they have no interest in restricting creators from using it for monetized YT content.

The way he put it, it suggested they are at this time looking to understand use cases rather than necessarily limit or charge for commercial use, and he recommended reaching out to the commercial team.

So it sounds like one could likely receive a free commercial license if needed.

(comment deleted)
They finally fixed their VAE. It really held back their models over the last 2 years.
> finally fixed their VAE

Can you share the sources?

It's right there in the hugging face link?

latents go from 16ch @ 8x compression to 64ch @ 16x, so roughly the same total latent budget but much more channel heavy. It’s also deeper/wider, and the old 2x2 transformer patching is gone.

On some images it still produces artifacts but can't say if it's the transformer or the VAE yet.

> In midvalues you will see a slight dot pattern.

Is this not simply some sort of watermark instead of an artifact?

No, it's probably their rope implementation. They had a similar problem with the old qwen image but to sure needs some digging.
They tried hard, but still couldn't remove the piss filter from the stolen dataset.
Its happy to see a new open image model from qwen. But the license is a let down. And it dosent even beat their closed qwen3 image wich is already a bit old.
While I'm impressed with the Bluey example, the lack of Muffin disappoints me.
My first impression is that it's not so good at following prompt directions. I asked it to place a 3D text made of glass in a particular city. It instead gave me a broken 3D text on a white background. Maybe with different seeds it gets better, but it's more of a trial and error process than reliable results.
Try translating your prompt to Chinese first, it seems a lot better at understanding and following Chinese prompts even with the translation hop.
You could try attaching other images as references (I think you can attach a maximum of 10 images). If the attachments can be blurred or sketchy or generic enough, they could be used for generalization.
Qwen and Alibaba are the biggest competitor for basically every model out there. They're beating the benchmarks like top-frontier models, focused on open-source and much cheaper than the competitors.

Excited to see what the future holds for them!

I run a prompt-to-ui design site that uses image models for the design process[1]. The text rendering especially makes this model deeply interesting to me, despite the license. Here are some tests using my harness comparing the outputs of gpt-image-2 and qwen 2.1:

https://html.non.io/qwen-comparison/

The text rendering definitely is much, much better than anything else on the open weights market right now. Small text fidelity is quite good. It seems like the text encoder however gets a little bit overloaded with larger prompts - note the presence of hex codes in the design output, those were inputs from the expanded prompt.

I'll be trying a post-training run on this for web design, it has some serious potential.

[1] diffui.ai

> The text rendering definitely is much, much better than anything else on the open weights market right now

Really? Because basically everything in those screenshots is completely garbled. I didn't follow it super closely but I thought Ideogram or whatever was really good for this particular use, with actual clear text.

Those simple prompts produce nearly the exact same layout in the 2 different models?
Equally confused with this. They must be using a lot more guidance than just the provided prompt.
Qwen is trained off of gpt’s outputs. This is both a positive and negative
Totally normal for modern models due to dataset contamination and mode collapse, especially for simple prompts that don't have enough semantic capacity. -isms are often very similar even without distillation, and tend to come and go in waves along with model generations.
Qwen's latest image models have a ton of distillation from gpt-image, same with Grok Imagine.

Even the artifacts are getting picked up.

Agreed. There's also a lot of bad tinging/yellow saturation that very much reminds me of early gpt-image outputs on a lot of the non-cherry picked stuff I've been seeing on Twitter/Reddit.

A lot of people were putting ZiT as a refiner downstream in early Qwen-Image 1.0 workflows, so I'm wondering if we're going to see something similar with 2.1.

My harness expands the prompt into a json representation that specifies layout much more rigorously, which is why you see such that amount of alignment between the two.

That internal json backing helps significantly when you want to maintain consistent design system components/patterns across multiple pages. The aligned layout is it working as intended.

Private harness?
It is, yes. This is for diffui.ai, which for now is closed source.
-> "Amimal Navigation" [first ui]

Somehow the prompt instruction leaked to the output and got garbled. I assume this is because of "ultra-minimal developer product UI". See also leaked stuff on the drop zone.

The 'uptime' and 'protein' uis also really look like they first use gpt themselves or theirs is distilled from gpt. I mean what are the probabilities for identical arc of color, identical wording, and in protein one it is basically using features from the gpt output. I also just did a image search for "duckweed powder" and the only images that look like those plastic dishes are all on alibaba pages. Very interesting.

While the license of this model is a shame it is still unenforceable.

I know a few friends of mine who are running models and are ignoring the licence.

Whether it is AGPL 3.0, or a completely restrictive license, it is going to get broken anyway and be used for commercial purposes.

I don't know anyone who looks at the licenses of the OSS software they are using.

In today’s world OSS is synonymous with "Free" and the AI model providers are proof of that with their training of code, datasets, etc.

So it begs the question, why should we abide by their licenses of their models?

And they shouldn’t be enforceable considering how the training data was slurped up without concern for licensing.
Native RGBA transparency is exciting. Last big blocker to having a clean sprite pipeline.
So thoughts

Positives

• It's a heck of a lot smaller than Qwen-Image 1 (20b parameters) at only 7b, making it one of the smaller open-weight models available (Z-Image Turbo is one of the few that is smaller at 6b) when compared to Ideogram, Krea2, Flux2, etc.

• It supports native transparency (Qwen's team, as far as I know, is the only one attempting to tackle this). Even though it's relatively trivial to set up background removal postprocessors, it's also neat to see it natively supported.

• It's fast using QwenImage2.1 convrot, a 1MP image took around ~5 seconds on an RTX4090.

Negatives

• The license (assuming you respect it) is far more restrictive. The original Qwen Image 1 was released under the standard Apache license; this one explicitly forbids commercial usage without obtaining a separate license. On the other hand, a lot of us didn't expect the Qwen team to ever release "weights-available" ever again.

Qwen-Image 1.0, released about a year ago, only scored 4/15 on my GenAI Showdown Benchmarks. Since that time, they've been upstaged by Krea 2 (6/15) and Ideogram4 (8/15). I'll post the new results once I have some more time to run them.

https://genai-showdown.specr.net

They're trying to cash in but this is just sad
Could you add new OAI 2.5 image models?
Can do! GPT-Image-2 already scored unsurprisingly very high: 12 out of 15 on text-to-image, and 10 out of 12 on image-to-image.

The three benchmarks it failed on (D20, Flat Earth, and Banded Snake) are pretty difficult, so I'd be surprised if 2.5 manages to pass them, but I’ll add it for completeness’ sake later this week.

That benchmark might have some issues. You prompted the models to generate an image of striking a ring against a crucible. Then you (presumably, manually?) scored the images that depicted an anvil higher than the ones striking something resembling a crucible.
That’s a good catch. Yes, all scoring is done through manual review since relying on a VL model for these kinds of meta-metrics is a sort of loose equivalent of gödel's second incompleteness theorem.

I’ll have to think about this one. When I crafted the prompt, I wasn’t really thinking about the differences between a crucible and an anvil. It was more the visual of an archangel smelting halos for newly arrived heavenly beings.

I'm not sure why one would even strike metal against a crucible! It's a container for liquid metal. One of the outputs shows it being smashed by the manoeuvre, which is probably the most realistic outcome of all of them.

Sorry, I'm not trying to nitpick. I'm just joining in because I'm interested in how the models dealt with the request.

It would make more sense to compare with Qwen Image 2, since that was the last open weights Qwen model.
Wait... is that true? I don't think the original Queen Image 2.0 was ever released beyond an API. At least, I don't remember a public weights release.
I promise I searched on my phone before posting that, but it looks like I misinterpreted an hf search result that was actually Qwen-Image-2512 but the url was truncated to Qwen-Image-2 due to my screen width (ugh). For some reason I was thinking Qwen Image 2.1 was the one that had been available for a while but not released, but you're right that was 2.0.
Native transparency isn’t so hard to do by the way, I made an image AE (I don’t say VAE deliberately as none of these are VAEs, I don’t know why they keep being called that since the variational part is completely absent) that supported this about two years ago as a hobby project. I haven’t really been following the space recently, I’m surprised it’s taken so long for this to come out if it’s a first.
It’s not hard architecturally, but it is hard to find or create good datasets of images on the magnitude you want. I suspect the qwen team heavily used synthetic data for this.
Not very, I had a tiny dataset compared to a production run, I used a bunch of 3D renderings to augment the images with transparency. It worked pretty well given the scale.
Well, the results are in, at least for text-to-image (the editing bench will come later).

Qwen-Image 2.1 is definitely a pretty big leap over the last open-weight version, Qwen-Image 1.0, released back in August of last year and managed to score 7 out of 15 as opposed to its predecessor which scored 4 out of 15.

Even though it's significantly smaller, 7b vs 20b, it's multimodal (so you don't need a separate image-to-image model like you did with Qwen-Edit), more coherent, and significantly faster even when outputting at higher 2K resolutions. However, in my testing, I found that I had to play with dialing up the CFG depending on the complexity of the prompt.

I've also added a progress dropdown under Model Performance so you can see how cloud vs. local models have been trending since 2024. Spoiler: June of this year released some of the biggest bangers (Krea 2, Ideogram 4, and the kind of slept-on Boogu-Image 0.1).

Downsides:

- It was clearly trained on at least some level of synthetic training data, and it shows in some of the subpar outputs in terms of fidelity. Some of this you might be able to iron out with a refiner model downstream or a custom LoRA but time will tell.

- They've moved away from the permissive Apache license. Commercial usage is only allowed by request.

Comparisons:

https://genai-showdown.specr.net

If you just want to compare local models only:

http://genai-showdown.specr.net/?models=local

> and the kind of slept-on Boogu-Image 0.1

Not slept on at all. It was absolute trash, and I’m super curious why people pretend otherwise. There isn’t a single thing that model did better than any temporal peer.

What's to stop somebody using the output at scale on local hardware to distill their own model and then making that available open weights?
This is the fundamental problem with where the AI race is heading, IMHO. Broadly, there are two possible legal interpretations (to my layman's mind):

* A model is derived work of its training data. This seems sane to me. Open, but copyrighted, works (like FOSS) remain protected from abuse. There's some legal moat around AI models. But on the other hand it seems unlikely that there's enough liberally licensed (or public domain) training data to go around. The little guy's status quo remains, the frontier labs' work slows down massively.

* A model is not derived work of its training data. This seems to me insane, but a lot of the world seems to hold this view (including the frontier labs). Stuff like FOSS or indie art is under huge threat of copyrightwashing. But on the other hand, there's also zero legal moat around the models. The little guy is eviscerated, but so are the frontier labs.

Neither interpretation seems, to me, to be capable of sustaining the last couple of years' developments. But what do I know.

If a model is derived work of its training data, surely all the existing frontier models that have been training on copyrighted work have a big legal issue, and therefore so does anything produced with them?
Yes. Of course. They'd have to be rebuilt with acceptably licensed training data. And since there might not be a enough of it, the model owners are screwed.

My point is that they're also screwed in the opposite scenario, because they rely on the same legal protection (against deriving works) as the works they trained on.

That's why I don't understand how any of this can be sustained.

> A model is not derived work of its training data. This seems to me insane, but a lot of the world seems to hold this view

Why insane? Models don't take the content as-is, they take measurements. I don't owe you royalties just because I used your photo to get the proportions and coloring of a duck right. Go watch artist streams, you'll often see people to go Google Images for references. I've never seen that result in credit or payments.

The alternative is that we hand out lots of money to a few large companies specializing in content archives, and there's really no benefit to anyone else anyway. On the long term I would expect a few fat cats to get fatter, the small guy to get nothing, and AI still work but get there slowly. I don't see the point or the benefit.

> Models don't take the content as-is, they take measurements.

At some point, enough measurements constitute a copy. If I redistribute the average value of all the pixels in your photo, I'm obviously not in violation of your copyright. If I measure and redistribute 90% of its DCT coefficients (i.e. make a slightly compressed JPEG), I am.

The interesting stuff happens between those extremes. We cannot just take as a given that all LLMs always are on the safe side. It is not at all obvious.

Yeah but here is the thing. Say you train a Lora for a model. You then merge those weights into the open weight model.

Now prompt it for an original image, it will pretty much be able to reproduce that exact image.

You can say it is just measurements but at some point, it can just reproduce with high enough accuracy to just be seen as a copy

Given that corporations buy up any valuable IP, I personally think the answer is to abolish copyright because right now it is really only protecting the rich and corporations . Individuals have the illusion of protection but if Disney steals your shit, good luck with the pain and suffering you experience trying to win a court case against them

Abolishing copyright would make it much harder for smaller players to protect their interests. Their original work would be gobbled up by the big players, and made easily available under the umbrella of a large corporations pre-existing market share. Not a fun situation at all to be in. Especially for the little guys.
> I don't owe you royalties just because I used your photo to get the proportions and coloring of a duck right.

No but a tribute or citation would be nice, especially if the (software) license requires it.

Such things are beyond what copyright protects. This line of reasoning would only work if there were a radical reimagining of copyright itself.
I don't want only cherry picked examples. Show me failure modes too.
That "10 Input Images" demo had the faces and clothing mixed up a bit. Woody Harrelson turned into a Kelsey Grammer/Harrelson hybrid.