Skip to content

Smart Scale

Smart Scale
Transform

Content-aware resize via seam carving that shrinks images while preserving important content.

Smart Scale seam-carves the width from 1024 to 560 while a naive resize simply squishes it. The surfer and wave keep their proportions because low-energy water is removed instead of the whole frame being compressed.
A three-panel comparison: the original wide surf photo, the same photo naively resized to 56% width (the surfer squished narrow), and Smart Scale's content-aware version at the same 56% width (the surfer keeps his proportions, the open water is narrowed instead).

Smart Scale uses seam carving: instead of scaling everything uniformly like Resize, it repeatedly removes the least noticeable path of pixels, so visually important regions stay intact. It only shrinks; use Resize to enlarge.

  • Forward Energy (the default) predicts how neighboring pixels will meet after each seam is removed, which gives better results, especially on images with straight lines.
  • Backward Energy is faster but leaves more artifacts.

Target width and height accept px or %. In % mode each frame scales to a percentage of its own size, so a batch of varying sizes carves proportionally instead of snapping to one fixed pixel count.

Smart Scale runs on the GPU where a supported one is available and falls back to the processor otherwise; the output is identical either way.

Pins

ImagePixels
InputRequired
ImagePixels
Output

Smart Scale

Target WidthInteger · px/%
Default: 0 Range: 0–16384 px / 1–100%

Target output width: px (0 = source) or % of the source width

Target HeightInteger · px/%
Default: 0 Range: 0–16384 px / 1–100%

Target output height: px (0 = source) or % of the source height

Energy ModeChoice
Default: Forward Energy

Seam-carving energy function

  • Forward EnergyHigher quality, predicting new pixel adjacencies after seam removal for better results on straight lines.
  • Backward EnergyFaster computation, removing seams based on current pixel energy without predicting new adjacencies.
Initial Source WInteger
Default: 0 Range: 0–16384

Snapshot of source width when the node was created, used as the neutral target when target_w is 0

Initial Source HInteger
Default: 0 Range: 0–16384

Snapshot of source height when the node was created

  • Seam computation is incremental, so small slider adjustments after the first run are fast.
  • Reducing both width and height carves both axes: width seams are removed first, then height seams on the narrower result.