Repair, retone, and reshape raster images.
Raster repairs that stay honest about what they are: persistent clone/heal tools with explicit sources, a linear-light dodge and burn brush, an exact two-band tone/texture split, and a brush-driven deformation stored as editable state rather than baked pixels.
Clone, Heal, Spot Heal, and Patch
Every repair writes real document pixels on the layer you name, so strokes survive redraw, undo/redo, save/reopen, and export. Clone Stamp samples a frozen source anchor (aligned or unaligned), Healing Brush takes texture from the source and colour from the destination, Spot Heal picks a bounded nearby patch deterministically, and Patch copies a frozen source rectangle with a feathered edge.
- Strokes clip to the active selection — including Spot Heal and Patch — and alpha lock keeps repairs from spreading onto transparent pixels.
- Sampling scope is explicit: the layer, the layers below, or all visible raster layers. Deposits always land on the destination layer alone.
- Pen pressure modulates flow for clone and heal strokes; the mouse deposit is unchanged.
- Dodge and Burn apply exposure in stops in linear light under the brush, with a shadows/midtones/highlights focus — the same mathematics as the global Exposure control, applied locally. They adjust existing pixels only and never invent coverage.
- Zero-strength strokes, cancels, and repairs with no effect leave no history step behind.
Paintovers stay in the same illustration
Retouch brushes keep their source scope separate from the selected raster destination. For linework and flat colour, the same document can also hold editable ink and a separate Flats layer; the Visible artwork Magic Wand samples the rendered lines while the fill stays on that destination. Open-contour repair and fully merged effect-stack sampling are not implied by these controls. See the illustration workflow.
Frequency Separation
Split a raster layer into a tone/colour layer and a texture layer, retouch each independently, and let Varve recombine them. The split is exact by construction for flat content and within one 8-bit step per channel elsewhere — the dialog shows the measured reconstruction error before you commit.
- Radius is Gaussian sigma in layer pixels: zoom, preview scale, and export scale never change it.
- Tone and texture are ordinary layers, so clone, heal, paint, masks, and layer effects all work on either band.
- Change the radius later and Varve re-splits the current retouched state — your edits are not discarded.
- Flatten bakes the recombined result into one layer whenever you want to move on.
Liquify
Push, expand, contract, twirl, restore, and smooth raster content with a brush. The deformation is stored as a bounded displacement field on the layer, so every stroke stays re-editable, reversible, and exportable without accumulating resampling blur.
- Freeze and thaw protection is available on raster targets; shared separation deformation keeps its unsupported group-level freeze state explicit.
- Pressure controls size and strength; push follows the pointer without drifting when you hold still.
- Deform one component of a frequency separation, or the recombined composite so tone and texture stay aligned.
- Reset, undo, and re-entry recover committed deformation instead of restarting from a flattened screenshot.
Built for real texture, not just portraits
The same tools clean product shots, even out fabric and material texture, rescue scanned artwork and paint surfaces, and correct local tone. There is no face detection, no automatic smoothing, and no universal "correct" radius: you judge the texture scale on your own content.
No hidden AI, no hidden cost
These workflows run entirely on your machine with no model download, cloud inference, or network access. Clone and heal are exact copies and mean-shift adaptations of pixels that already exist — Spot Heal says so in the interface instead of borrowing a "content-aware" label — and dodge and burn work in Varve's 8-bit working representation. The precision contract is stated in the app rather than implied. Freeze protection on a shared separation deformation is not available in this version, and geometry-level vector liquify is a separate future capability — the interface says so rather than silently rasterizing your vectors or text.