О LeanImg
LeanImg — это набор инструментов для работы с изображениями, которые работают внутри вкладки вашего браузера. Ничего не загружается. Декодирование, кодирование и модели машинного обучения выполняются на вашем оборудовании. Не доверяйте этому на слово.
Конфиденциальность
Откройте вкладку сети вашего браузера и перетащите фото в компрессор. Вы увидите страницу, фрагменты кодека WebAssembly и три сторонних скрипта, которые упоминает наша политика конфиденциальности: загрузчик Google AdSense на страницах на языках, которые мы индексируем, плюс Vercel Analytics и Vercel Speed Insights, ни один из которых не устанавливает куки. Ваше изображение не входит в этот список. Эта кодовая база не имеет API-маршрутов и серверных действий. За пределами этих трех сторонних скриптов каждый запрос, который делает наш код, является одноименным: фрагменты кодека jSquash под /_next/static/ плюс модели увеличения и удаления фона под /ml-assets/.
Код, который вы можете прочитать
Сетевая вкладка только доказывает сессию, которую вы наблюдаете. Для остального читайте код. Каждый движок, который касается ваших пикселей, опубликован под AGPL-3.0 на github.com/low-battery-std/leanimg: сжатие, конверсия, изменение размера, обрезка, генерация значков, удаление фона и увеличение. Откройте src/lib/compression/engine.ts, и вы найдете файл, который поступает, Blob, который выходит, и никаких запросов между ними. AGPL-3.0 обязывает любого, кто запускает его как сетевую службу, публиковать свою версию.
Как это работает
Каждый инструмент — это тонкая оболочка вокруг скомпилированной библиотеки, а кодеки изображений достигают вашего браузера через jSquash. Вот что происходит, когда вы перетаскиваете файл.
- MozJPEG кодирует JPEG, которые записывает компрессор и конвертер. Компрессор читает таблицы квантизации файла, чтобы оценить качество, с которым он был сохранен, а затем масштабирует ваши настройки относительно этого: источник на 60 с ползунком на 80 выходит на 48.
- OxiPNG делает второй проход на уровне оптимизации 3 по PNG, которые записывает компрессор и конвертер. Этот проход не затрагивает пиксель.
- imagequant является маршрутом по умолчанию для ввода PNG в компрессоре. Это квантайзер палитры, поэтому цвета отбрасываются, чтобы уменьшить размер файла. В выпадающем списке есть безубыточный вариант.
- WebP охватывает большую часть фоторабот, а умный режим кодирует его с фиксированным качеством 80. Ничто не масштабирует это относительно источника так, как это делает путь JPEG.
- AVIF работает через @jsquash/avif на скорости кодирования 6 и 8 бит на канал, а умный режим нацелен на качество 63.
- ONNX Runtime Web запускает увеличитель на realesr-general-x4v3, модели Real-ESRGAN, в плитках по 256 пикселей с перекрытием 16. Он производит только 4x, поэтому опция 2x уменьшает масштаб при выходе.
- @imgly/background-removal запускает удаление фона на модели isnet, деля одну сборку ONNX Runtime с увеличителем. Выход всегда в формате PNG.
- jsPDF записывает PDF-конверсии. Изображение внутри страницы — это JPEG с качеством 92, поэтому PNG, конвертированный в PDF, получает артефакты JPEG, которых у него не было раньше.
- Canvas fallback ловит кодировщик WebAssembly, который не загружается в компрессоре или конвертере, а затем сообщает, какой формат вышел. AVIF не получает такого.
Где это останавливается
Ваше устройство выполняет работу, поэтому его предел — это наш предел. Вы увидите это в первую очередь в увеличителе. С WebGPU на настольном ПК он принимает 32 мегапикселя входных данных на 4x, передавая результат на диск по полосам. Без него предел падает до 1.1 мегапикселя на однопоточном WebAssembly. Это меньше, чем у большинства телефонных фотографий.
Компрессор, изменитель размера, конвертер и удаление фона принимают по 10 файлов и 50 МБ на партию. Генератор значков не примет более одного файла размером 10 МБ.
Почему это бесплатно
Обработка на стороне сервера стоит денег за изображение. Эта стоимость — то, для чего существуют кредиты, водяные знаки и уровни разрешения. Хостинг страницы и файлов кодека — это вся сумма здесь, и она не увеличивается с вашей четвертой фотографией. Реклама оплачивает это. Вот такая модель.
Компромисс ложится на ваше оборудование. Ваш ЦП или ГП выполняет кодирование, поэтому старый ноутбук справляется с партией, которую серверная ферма не заметит. Закройте другие вкладки перед запуском 4x.
Результаты на данный момент
LeanImg работает с февраля 2026 года. Что можно посчитать:
- Девять инструментов: сжатие, изменение размера, обрезка, конвертация, генератор иконок, удаление фона, увеличение, изображение в текст и PDF в текст.
- 24 пары конверсий по 11 форматам, JPG в WebP через HEIC в JPG.
- 25 языков интерфейса.
- Ноль полученных изображений. Сайт хранит то, что указано в политике конфиденциальности, а потоковое увеличение оставляет свой результат как один файл в приватном хранилище вашего браузера, которое очищается при следующем запуске, если ему больше 24 часов.
Кто управляет LeanImg
LeanImg разработан и управляется Low Battery Studios (KVK 42081370), независимой студией в Нидерландах. Юридические вопросы направляйте на ask@lowbatterystudios.net. Вопросы поддержки направляйте на info@leanimg.com.
Контакт
Сообщения об ошибках и вопросы по лицензированию отправляйте на info@leanimg.com. Технические проблемы также можно указать в трекере проблем. Он публичный.