Skip to content

Remove an object

Erase an unwanted distraction — a stray guest, a bin, an exit sign — by inpainting a masked region. The removal is a reversible record; your original is untouched and the fill is baked into pixels only on export.

Enable an inpaint backend

Object removal is off by default. Turn it on and pick a backend in config:

remove:
  enabled: true
  backend: lama    # or: migan
  • lama (default) — reference-quality eraser.
  • migan — a fast, tiny (28 MB) alternative.

On first use krites fetches and checksum-verifies the backend's pinned model — and the ONNX Runtime library itself — then runs it on-device. There's no runtime to install or path to set: it's bundled in the macOS app and fetched from the signed artefact channel elsewhere (see the config reference).

In the studio, open the frame in the loupe, pick the Remove object tool, brush or box the region, preview the inpaint, and Accept — or Redraw / Cancel. Accepted removals persist and show across reloads.

Remove from the CLI

Name the frame and the region as a normalised rectangle — x,y,w,h as fractions of the frame in [0,1], origin top-left:

krites remove IMG_2043.CR2 --region 0.30,0.25,0.20,0.40 \
  --shoot ~/Pictures/smith-wedding

Undo it (and any other edits on the frame):

krites reset frame IMG_2043.CR2 --shoot ~/Pictures/smith-wedding

Notes

  • Removals composite first in the export bake (removals → straighten → crop → look), so the fill is levelled, cropped and graded with everything else.
  • Removals can't be represented in Lightroom's XMP, so they live only in krites' own export.
  • The inpaint models are Places2-trained — fine for private use; see the licence note before commercial distribution.

Full detail: the remove command reference and spec the configuration reference.