TrimImage ← Back to the app

Credits & Licenses

TrimImage runs in your browser. The one exception is background removal, which offers an optional server mode — see Privacy below. The tools are built with open-source software, and this page credits every third-party component, its authors and its license.

What each tool uses

✂️ Trim image

No third-party code. Plain HTML canvas pixel analysis written for this app.

⛶ Crop

No third-party code. Canvas selection, rotation and flipping written for this app.

✨ Enhance

No third-party code. Lookup-table tone curves, grey-world auto levels and unsharp masking written for this app.

🔍 Upscale

Uses the AI super-resolution stack credited below — the model runs locally on your device.

🧽 Erase color

No third-party code. Color-distance matching, flood fill and brush compositing written for this app.

🔄 Convert

No third-party code. Canvas re-encoding between PNG, JPG and WEBP.

🗜️ Compress

No third-party code. Canvas re-encoding with a quality search to hit a target file size.

🪄 Remove background

Uses the AI segmentation stack credited below — the model runs locally on your device.

Open-source components

Used by the two AI tools — Remove background and Upscale. Every other tool is dependency-free.

ComponentAuthorPurposeLicense
@imgly/background-removal v1.7.0 IMG.LY GmbH Runs the segmentation model in the browser AGPL-3.0
IS-Net (DIS) segmentation model Xuebin Qin, Hang Dai, Xiaobin Hu, Deng-Ping Fan, Ling Shao, Luc Van Gool Neural network that separates subject from background MIT (upstream code Apache-2.0)
ONNX Runtime Web v1.21.0 Microsoft Executes the model on WebGPU / WebAssembly MIT
UpscalerJS v1.0.0 · Upscale Kevin Scott Runs the super-resolution model patch by patch MIT
ESRGAN “medium” model @upscalerjs/esrgan-medium v1.0.0 Kevin Scott · UpscalerJS RDN neural network that enlarges images 2×/3×/4× MIT
TensorFlow.js v4.11 · Upscale Google & contributors Executes the upscaling model on WebGL Apache-2.0
ndarray Mikola Lysenko Tensor views over pixel buffers MIT
lodash-es OpenJS Foundation & contributors Utility helpers MIT
zod Colin McDonnell Configuration validation MIT

License texts: AGPL-3.0 · MIT · Apache-2.0

Model & asset delivery

The background-removal library is loaded from jsDelivr, and the neural-network weights plus the WebAssembly runtime are downloaded from IMG.LY's asset CDN (staticimgly.com) the first time you use that tool. The Upscale tool likewise fetches TensorFlow.js and a ~3 MB ESRGAN model from jsDelivr on first use. They are then cached by your browser. Your photo is never part of that traffic — only the model travels, and it travels to you.

Research citation

The segmentation model comes from this paper. If you use it in academic work, please cite:

@InProceedings{qin2022,
      author={Xuebin Qin and Hang Dai and Xiaobin Hu and Deng-Ping Fan and Ling Shao and Luc Van Gool},
      title={Highly Accurate Dichotomous Image Segmentation},
      booktitle={ECCV},
      year={2022}
}

Source code

The Remove background tool builds on @imgly/background-removal, which is licensed under the AGPL-3.0. That license asks anyone running the software over a network to offer its users the complete corresponding source. TrimImage's source is available here:

Get the source code on GitHub

IMG.LY also offers commercial licensing for projects that cannot publish their source — [email protected]. This page is attribution, not legal advice.

Privacy

Trim, Crop, Enhance, Upscale, Erase color, Convert and Compress never upload anything. They process pixels locally with the HTML canvas API, and the Upscale model runs on your own device. Convert and Compress re-encode through the canvas, which also strips EXIF metadata — including GPS coordinates — from whatever you download.

Remove background gives you the choice, in the tool itself:

No accounts, no analytics, no tracking cookies, in either mode.