Join the discussion

Write your take first — we'll ask for email only when you're ready to publish.

  • Hacker News
  • Unrelated but when I read inpainting and Moebius I was scared it was related and using the art of the great Jean Giraud [0] a.k.a. Moebius

    https://characterdesignreferences.com/artist-of-the-week-3/m...

    [0] https://en.wikipedia.org/wiki/Jean_Giraud

  • Scared why?
  • This is the useful AI stuf. There’s so many usecases this makes possible.
  • how many times have you edited a photo you took on your phone in the last 7 days?
  • Right, and that's what I find frustrating. There are so many use cases where a local, purpose-built model that's dependably good at one thing would really make a difference. But no one is going to throw a billion dollars to give us amazing dust removal, flawless scene segmentation, etc.

    Instead, you're supposed to upload it to the cloud and ask a big, multimodal frontier model to maybe please do the thing you want and nothing else.

  • I don't understand. Is it available somewhere to try or is it just an ad?
  • Yeah it's great but how do I use it?

    Edit: I think I found it https://huggingface.co/hustvl/Moebius

  • I want a version of this for manga (for translation). Right now I think the go-to lightweight inpainting model for anime and manga is LaMa which is several years old now and it feels like there is room for improvement.
  • I've been working on trying to outpaint an animated program for my son (Leapfrog Letter Factory if you're curious) and then upscale it. Doing so locally has been actually fairly difficult. I wonder if you could retrain or fine tune this model. They mention building an expert, I wonder if that expert could understand more about translating various characters.
  • What is inpainting? Everyone in the comments seems to be familiar with the term, and I don’t see it described in the linked page.
  • Click on the visualizations to see it in action. The purple areas are areas a user highlighted to tell the system to inpaint, and when you click on the image you see the results of the inpainting. Basically the model redraws sections of an image (the purple areas) using the context of what's in the non-purple areas to decide what might look best in the purple areas. Often used for removing objects but as you can see in the examples it can do other things too.
  • Here is a little app I made that allows you to experiment with all of the fine tuned models that runs entirely in your browser:

    https://inpaintlab.com/

  • There are some demo spaces using this. This one seems the best (paint your own mask) but it failed on all the images I tried: https://huggingface.co/spaces/multimodalart/Moebius
  • I've been playing around, got it to work, although quality was a bit crappy. Still playing around with the settings that get exposed, but you're welcome to look at : https://huggingface.co/spaces/jonatei/MoebiusDemo

    Note that I'm actively messing with it, so it may break for short periods of time :)

    It's also running on the free CPU, so it's like 80 seconds per image...

  • What is the current SOTA for impainting?

    I have a potential project for my e-commerce where I want to allow users to upload images of their house exteriors and impaint awnings.

  • flux klein with LoRa. GPT image and nano often produce high frequency artifacts when editing.
  • Awnings, if I understand correctly (I just learned this word right now), are purely additive attachments to structure exteriors - so perhaps they wouldn't necessarily need a full inpainting model? Wouldn't it be enough to estimate an affine transform for a quad and blend the image of awning directly (and the same with shadow map to fake shade)? Is classical photogrammetry up to such task these days?
  • Proprietary? Either gpt-image-2 or NB2.

    I have an example of interior decorating inpainting where I replaced a large floor-to-ceiling window with a mirror, and the result was pretty impressive using NB Pro from nearly a year ago.

    https://imgpb.com/ZXkiXV

    Locally hostable? For my money I'd argue Flux.2 Klein but Qwen-Edit still puts in the work.

  • Nitpick: in the showcase on that page, under Comparison of Natural Scenes, Moebius should definitely get a "structural confusion" tag for the back of the surfboard. If other models get deducted for truncating the surfboard, then surely the elongation that Moebius does should count too.

    Also, what's going on behind the in-painted corner of the house? We'd need to see higher resolution pictures, but I'm not convinced that it too shouldn't get a flag. Likewise with the beach just behind the surfboard. Not terrible, but what gets flagged in the competitors is similar.

    by gspr
  • I did an inpainting project for a client a few years ago. They were trying to inpaint banner ads for concert promoters, and find a way to make it easy to produce a bunch of different sized ads for a variety of placements. I was tasked with inpainting Xmas themed ad for a few major singers.

    The weirdest thing was when the inpainting tool added strange people to an image. This singer was all decked out in tinsel and red, and the inpainting model added a grumpy old man in a top hat. I don't recall clicking the "Add creepy old man" button.

    At the time this was Stable Diffusion on the backend, run by a variety of model hosting services, Amazon being one. They all had different requirements for the input image and that made things really complex. For some the aspect ratio was impossible to meet, and it would fail if the banner was 200x60. For others, you had to resize it before input, which meant you were adding an image with poor resolution to start. Garbage in, garbage out.

    All of this to say, there is a lot of preproduction that went into it, and the client never ended up using my attempts.

    by xrd
  • > At the time this was Stable Diffusion on the backend

    The community made models (merges, fine tunes, etc) of that era are all completely overtrained and optimized for portraits and frontal shots. They would try to make a person out of anything. Inpainting faces is already a chore, even with a lot of tooling around that, but inpainting anything else is almost impossible. These models are also especially bad to fit objects naturally into scenes. You can make a crappy necklace or belt work, but introducing a new object into a scene just fails with infinite variety.

    They are also much better using 512x512 as resolution, any larger deviation introduces more problems.

    Considering you wanted to inpaint banner ads, they would probably get distorted heavily. Those models can't deal with fonts and are bad at a pixel perfect transfers. The only viable way to do this, at that time, would be to manually insert the banner ads and fix the seams with AI. Requires some artistic skill of course.

    Your attempt was bold, but with the expectation of just supplying two images and let the models do it, it was impossible.

  • > For others, you had to resize it before input, which meant you were adding an image with poor resolution to start.

    Thats because small models like SD (Stable Diffusion) are trained on very specific resolutions, its the fancier models that are trained on higher quality, or more diverse sets of resolutions, and if you use a higher quality model to generate lower resolution images, what's actually happening is you're trimming a much bigger image and getting a chunk of it output, at least that's how it feels based on my many hours of experimenting. If I use major models and try to center a thing, I never see it in the center. :) My GPU can only handle so much.

  • This singer was all decked out in tinsel and red, and the inpainting model added a grumpy old man in a top hat. I don't recall clicking the "Add creepy old man" button.

    Obvious reference to the Dickens story A Christmas Carol. In the UK there's a bylaw that requires Christmassy events to hire a Scrooge-like figure to lurk in the background so people keep their enthusiasm in check.

  • Tried a bit, and while it is very impressive for 0.2B model it would be very hard to convince me that this matches with 10B models. It did work reasonably well with natural images but inpainted regions were visibly smoother than surroundings, and performed very badly on novel objects. It is also limited to 512x512 output, which limits its practical usefulness.
  • Do you think the provided examples are representative of its performance, or do you think they were cherry picked?
  • I got this working with ONNX (thanks, Claude Opus 4.8) and now I have an interactive demo of the model running entirely in the browser here (~1.3GB download): https://simonw.github.io/moebius-web/ - code here: https://github.com/simonw/moebius-web

    (Claude Code transcript: https://gisthost.github.io/?58039ba5c1ca3ed177e8659168996ee4)

    Wrote this up in more detail on my blog: https://simonwillison.net/2026/Jun/22/porting-moebius/

  • well done!

    unet weights are in fp32. did you by any chance try something lower, fp16?

  • Awesome, I wanted to do the exact same thing (used gpt 5.5 + code) but it didn't get the model to work in onnx...
    by K0IN