Unshake предназначен для восстановления деталей в размытых фотографиях, когда обычное повышение резкости лишь подчёркивает контуры, но не делает полезную информацию заметнее. Программа особенно уместна для единичных кадров, которые нельзя переснять: снимков с умеренным смазом от движения камеры, мягким дефокусом, старых сканов, технических изображений и фотографий, где важна читаемость мелких структур. Она пытается оценить характер размытия и выполнить обратное преобразование, поэтому результат зависит не только от силы эффекта, но и от того, насколько правильно пользователь выбрал тип смаза, область анализа и режим детализации.
- Повышение резкости: Сила, Радиус, Порог
- Локальная резкость через Корректор
- Ретушь, цвет и удаление объектов
- Максимум 2048×2048 пикселей
- Только PNG, GIF и JPEG
- Некоммерческое использование
Что именно делает Unshake
Unshake относится к узкому классу программ автоматической деконволюции. В обычном редакторе фильтр Sharpen или Unsharp Mask чаще всего усиливает локальный контраст по границам: светлая сторона края становится светлее, тёмная — темнее, и изображение субъективно кажется резче. Unshake решает другую задачу. Он исходит из предположения, что исходная сцена была размыта некоторым процессом — дрожанием камеры, небольшим промахом фокусировки или иной сравнительно однородной причиной — и пытается оценить этот процесс по самому изображению. После оценки программа вычисляет обратное преобразование и строит новую версию кадра.
Такой подход важен, когда нужно не столько сделать фотографию «эффектнее», сколько вернуть различимость формы. Например, слабый контур буквы после обычного Sharpen может стать темнее, но всё равно остаться размазанным на несколько пикселей. Деконволюция пытается перераспределить сигнал обратно. Если модель размытия угадана хорошо, границы становятся уже и структурно правдоподобнее. Если модель выбрана неверно, появляются волны, двойные края, ореолы и ложная фактура. Поэтому Unshake нельзя воспринимать как кнопку автоматического улучшения: это инструмент, который требует диагностики исходника.
В этой статье речь идёт о классическом Unshake 1.5 М. D. Cahill для статических изображений. Его легко спутать с современным одноимённым приложением для стабилизации видео на macOS, но это совершенно другой продукт. У рассматриваемой программы характерный Java-интерфейс, выпадающие списки Normal blur и Estimate Quality, флажки Select blurred, Batch и Flat Window, ползунок Amplification, а также кнопки Estimate, Open, DeBlur, ReDraw, Save, Remove и Mail Cert.
Как устроена деконволюция в Unshake
Ключевое понятие здесь — ядро размытия, или PSF. Упрощённо его можно представить как рисунок, в который превратилась бы идеальная светлая точка после съёмки. Если камера немного дрогнула вправо, точка растянется в короткий след. Если объектив не попал в фокус, точка станет пятном. Реальная фотография состоит из множества деталей, и каждая из них подвергается похожему преобразованию. Если известна форма этого преобразования, математически можно попытаться приблизительно обратить его действие.
Проблема в том, что в обычной фотографии ядро заранее неизвестно. Пользователь не измерял траекторию камеры и не снимал тестовую точку одновременно с кадром. Поэтому Unshake работает как автоматический, или «слепой», деконволвер: он оценивает модель размытия по статистике самого изображения. Для этого ему нужно достаточно структурной информации и желательно однородное размытие в выбранной зоне. На гладком небе или ровной стене алгоритму просто не за что «зацепиться»; на повторяющейся решётке, наоборот, он может принять периодический рисунок сцены за след смаза.
Внутренние вычисления Unshake связаны с быстрым преобразованием Фурье. Отсюда следует несколько практических особенностей. Во-первых, размер изображения влияет на время и память не линейно. Во-вторых, размеры, близкие к степеням двойки, удобнее для FFT-обработки. В документации программы приводятся 64, 128, 256, 512, 1024 и 2048 как естественные границы рабочих массивов. Если одна сторона чуть превышает такую границу, например равна 1025 пикселям, расчёт может потребовать массив следующего порядка, что заметно увеличивает нагрузку.
Для версии 1.5 указывается предел изображения до 2048×2048 пикселей. Это серьёзное ограничение по современным меркам: даже телефонный кадр обычно значительно крупнее. Практический вывод простой — перед работой с Unshake часто приходится делать отдельную уменьшенную или кадрированную копию. При этом исходный файл нужно хранить отдельно: уменьшение применяется только как техническая подготовка к алгоритму, а не как необратимая замена оригинала.
Почему результат не всегда выглядит естественно
Деконволюция восстанавливает не «правду», а наиболее правдоподобную версию сигнала при выбранной модели. Если в исходнике есть шум матрицы, JPEG-блоки, ringing после предыдущей обработки, цифровая резкость камеры или сканерная сетка, всё это тоже попадает в спектр изображения. Сильное усиление способно сделать такие дефекты заметнее быстрее, чем полезную деталь. Поэтому хороший результат в Unshake — это не самый резкий кадр, а тот, где нужная структура становится различимее без систематических ложных узоров.
Особенно осторожно нужно относиться к тексту, номерным знакам и любым деталям, которые могут трактоваться как доказательные. Программа может сделать символ визуально более похожим на букву или цифру, но это не означает, что она достоверно восстановила исходное значение. Если штрих появляется только при одном экстремальном значении Amplification и исчезает при минимальном изменении параметра, его разумнее считать артефактом.
Интерфейс Unshake 1.5
Рабочая логика интерфейса непривычна для современных редакторов. Главное окно содержит настройки и список файлов, а исходное и обработанное изображения открываются в отдельных окнах. Это не просто наследие старого Java-интерфейса: размер и положение окна изображения связаны с режимом Select blurred. Пользователь фактически показывает программе, какая часть фотографии должна использоваться для оценки размытия.

В верхней строке расположены два главных выпадающих списка: размер размытия и предполагаемый тип детализации. Ниже находятся флажки выбора области, пакетной обработки и совместимого режима оконной функции. Ещё ниже — ползунок Amplification, кнопка оценки времени и множитель допустимой длительности расчёта. Центральная группа кнопок управляет импортом, вычислением, перерисовкой и сохранением. В нижней части отображаются размеры изображения, размер окна ядра, вычисленные параметры и список файлов.
Normal blur и Severe blur
Первый список задаёт масштаб предполагаемого размытия. Normal рассчитан на сравнительно небольшой blur spot, Severe — на более крупный. В описании алгоритма Normal соответствует пятну, которое в типовом случае укладывается примерно в радиус четыре пикселя, а Severe — около восьми пикселей. Это не универсальный предел для каждой фотографии, а ориентир, определяющий диапазон поиска ядра.
Главная ошибка — выбирать Severe только потому, что фотография «кажется очень размытой». Важно измерять не субъективную мягкость, а ширину смазанного края. Снимок может выглядеть плохо из-за низкого разрешения и JPEG-компрессии, хотя фактический след движения невелик. И наоборот, кадр с хорошим контрастом может содержать длинный направленный смаз. Для первого прогона разумно начинать с Normal, а Severe подключать, если характерные двойные или растянутые контуры явно выходят за диапазон обычного режима.
Если смаз настолько большой, что Severe не даёт устойчивого результата, историческая рекомендация для Unshake состоит в уменьшении изображения. При масштабировании длина смазанного следа в пикселях уменьшается, и задача может попасть в диапазон ядра, который программа умеет оценивать. Важно понимать компромисс: такой приём не возвращает исходное разрешение. Он лишь делает математическую модель более подходящей для инструмента.
Basic, Portrait, Estimate Quality и Scenic
Второй список сообщает алгоритму, сколько мелкой фактуры логично ожидать от сцены. Это важное различие: трава, листва и каменная кладка статистически богаче высокочастотными деталями, чем лицо или гладкий предмет. Если программа ожидает слишком много тонкой структуры там, где её в реальности нет, она склонна превращать шум и остаточные ошибки в псевдодеталь.
Estimate Quality — естественная отправная точка. Unshake пытается оценить ожидаемую детализацию автоматически по более крупным структурам изображения. Portrait полезен для сцен, где тонкой фактуры сравнительно мало и кожа, фон или крупные формы важнее микротекстуры. Scenic предполагает более богатую детализацию и подходит для пейзажей, архитектуры или сцен с множеством мелких элементов, но способен сильнее подчёркивать шум. Basic — более консервативная модель, уместная для бедных деталями кадров и некоторых проблемных исходников.
Выбор Quality не следует менять одновременно с Amplification и размером blur. Иначе невозможно понять, какая настройка улучшила или испортила результат. Практичный порядок — сначала подобрать Normal/Severe и область анализа, затем сравнить Estimate с одним альтернативным Quality, а после получения правдоподобного ядра регулировать только Amplification.
Select blurred
Флажок Select blurred — одна из наиболее важных функций Unshake. Когда он включён, для оценки размытия используется видимая часть окна исходного изображения. Поэтому пользователь может прокрутить и изменить размер окна так, чтобы оставить в нём область, где размытие однородно и похоже на то, которое нужно исправить. Когда флажок выключен, анализируется большее пространство кадра, а центральные области получают больший вес.
Это особенно важно для фотографий с разной глубиной резкости. Допустим, лицо в переднем плане смазано, а фон относительно резкий. Если анализировать весь кадр, резкий фон может убедить алгоритм, что blur слабее, чем на лице. Обратная ситуация — резкий объект на размытом фоне — тоже способна исказить оценку. В таких случаях Select blurred помогает явно указать репрезентативный участок.
Нежелательно выбирать слишком маленькое окно. Для оценки нужны границы, текстуры и переходы разной ориентации. Практический минимум порядка 200×200 пикселей полезен как ориентир: меньшая область нередко содержит недостаточно информации. Но и огромная зона не всегда лучше, если в ней смешаны разные типы смаза. Качество выбора важнее площади.
Batch
Batch запускает последовательную обработку нескольких файлов из списка. Это не современный пакетный модуль с независимым пресетом для каждого кадра. Одна конфигурация применяется к очереди, поэтому серия должна быть достаточно однородной по характеру размытия. Пакетный режим логичен для нескольких кадров, сделанных подряд с похожей выдержкой и тем же движением камеры, но плохо подходит для случайной папки, где есть и дефокус, и смаз, и уже резкие фотографии.
Перед запуском большой очереди полезно выбрать три-четыре репрезентативных файла: самый резкий, самый размытый, самый тёмный и кадр с наиболее сложной фактурой. Если всем подходят одинаковые Normal/Severe, Quality и Amplification, можно обрабатывать серию одной конфигурацией. Если хотя бы один требует иной модели, очередь лучше разделить.
Flat Window
Flat Window относится к поведению оконной функции при вычислении и сохраняет совместимость со старым вариантом алгоритма. Практический смысл для пользователя прост: этот режим не является переключателем «лучшего качества». Он может менять поведение низких пространственных частот и иногда усиливает ореолы около контрастных границ. Если обычный режим даёт стабильный результат, включать Flat Window без причины не нужно.
Если после деконволюции вокруг чёрного текста на белом фоне появляются широкие светлые или тёмные ореолы, сначала следует проверить область и Amplification. Только после этого имеет смысл сравнивать Flat Window. Иначе пользователь лечит следствие, не исправляя неверную модель blur.
Amplification
Amplification регулирует, насколько заметно будут усилены слабые восстановленные компоненты. На шкале 0–20 небольшие значения дают более мягкий результат, большие сильнее подчёркивают восстановленные детали, но одновременно поднимают шум и ошибки модели. Это не прямой аналог «силы резкости» в обычном редакторе: параметр действует уже на результат деконволюции.
У Amplification есть важное преимущество в рабочем процессе. После того как полный DeBlur вычислен и ядро найдено, можно изменить Amplification и нажать ReDraw. Программа перерисует текущий результат без повторного тяжёлого поиска ядра. Поэтому финальный баланс между мягкостью и артефактами лучше искать через ReDraw, а не каждый раз запускать DeBlur заново.
Estimate и множитель времени
Кнопка Estimate не выполняет окончательную обработку. Она оценивает базовое время расчёта для текущего изображения и настроек. Справа находится множитель допустимого времени — от короткого режима x1 до значительно более длинных вариантов, вплоть до x100. Это скорее верхний бюджет поиска, чем обещание, что процесс займёт ровно указанное число базовых интервалов.
Долгий расчёт имеет смысл только после того, как пользователь получил правдоподобный результат на коротком режиме. x100 не компенсирует неверно выбранную область или неподходящий Normal/Severe. Если модель ошибочна, дополнительное время может лишь тщательнее оптимизировать неправильную задачу. Практичный порядок — x1 для диагностики, затем умеренное увеличение бюджета, если результат уже выглядит структурно правильным, но детали недостаточно устойчивы.
Open, DeBlur, ReDraw, Save и Remove
Open вызывает файловый диалог и добавляет изображение в рабочий список. DeBlur запускает оценку ядра и основную деконволюцию. ReDraw повторно формирует изображение после изменения Amplification, не выполняя полный поиск ядра. Save сохраняет выбранный результат в нужное место. Remove убирает файл из списка очереди, но не должен восприниматься как команда удаления оригинала с диска.
Кнопка Mail Cert. связана с исторической инфраструктурой программы и не нужна для обычного восстановления фотографии. При работе сегодня важнее понимать основные пять действий: открыть, оценить, деконволюционировать, при необходимости перерисовать с другим Amplification и сохранить отдельную копию.
Установка и начало работы
Unshake 1.5 распространялся как небольшой ZIP-пакет с Java-приложением и вспомогательными файлами запуска. Традиционного инсталлятора с регистрацией компонентов в Windows у программы нет. Рабочий каталог следует распаковать целиком, не вытаскивая из него только JAR: рядом находятся скрипты, служебные папки и примеры, на которые рассчитан исходный workflow.
Историческая документация требует Java 2 или более новую совместимую среду. Это формулировка своей эпохи, а не обещание совместимости со всеми нынешними JRE. На современном компьютере разумнее сначала проверить, запускается ли Unshake в уже установленной поддерживаемой Java, чем специально устанавливать давно снятую с поддержки старую JVM. Безопасность среды выполнения важнее удобства запуска одной утилиты.
Windows
- Распакуйте архив в отдельную папку с коротким путём и обычными латинскими символами, если хотите минимизировать проблемы старых скриптов.
- Убедитесь, что Java доступна системе. Если файл запуска ничего не делает, сначала проверьте JVM, а не переносите JAR и DLL по системным каталогам.
- Запустите файл Launch из папки Unshake. В типичной комплектации он вызывает Java с нужным JAR.
- После появления панели откройте небольшой тестовый PNG или JPEG и нажмите Estimate.
- Не начинайте с крупного снимка: сначала убедитесь, что программа корректно создаёт результат на небольшом изображении.
Если Windows ассоциирует JAR с архиватором или неизвестной программой, это не означает, что Unshake повреждён. JAR — исполняемый Java-архив, и его следует запускать через JVM. Для диагностики полезнее проверить команду java -version в терминале, чем многократно открывать файл двойным щелчком.
Linux и другие Unix-подобные системы
В комплектации предусмотрен скрипт unlaunch.sh. Он рассчитан на доступную в PATH команду java. Историческая инструкция также показывает прямой запуск JAR с параметром памяти, например java -Xmx512m -jar Unshake.jar. Ключ -Xmx512m задаёт верхний предел heap JVM в 512 МБ. Это не обязательное число для каждого кадра, а пример того, что крупная деконволюция может потребовать больше памяти, чем стандартная конфигурация старой Java.
Если скрипт не исполняется, проверьте права на файл и окончания строк. После переноса архива между Windows и Linux старые shell-скрипты иногда получают CRLF, что приводит к ошибкам интерпретатора. Такой сбой не связан с алгоритмом Unshake и устраняется на уровне файла запуска.
Mac OS X
Для старых поколений macOS существовал собственный способ запуска через AppleScript и Unix-скрипт. В публикациях того периода отдельно советовали при проблемах открывать Unshake.jar напрямую. На нынешней macOS это историческая совместимость, а не гарантированный сценарий: политика Gatekeeper, архитектура процессора и доступность Java изменились. Если задача требует стабильного производственного процесса, лучше оценивать современный инструмент. Если же Unshake нужен для конкретного старого workflow, его стоит запускать в контролируемой совместимой среде.
Подготовка фотографии перед обработкой
От подготовки исходника в Unshake зависит больше, чем в обычном фильтре резкости. Алгоритм пытается вывести модель blur из структуры изображения, поэтому любые искусственные края и уже внесённые артефакты могут быть приняты за полезный сигнал. Работать лучше с максимально ранней копией файла, до усиления резкости, агрессивного шумоподавления, рамок, подписей и повторного JPEG-сжатия.
Формат файла
Подтверждены PNG, GIF и JPEG/JPG. Для промежуточной подготовки предпочтителен PNG, поскольку он не добавляет новых потерь при сохранении. GIF ограничен палитрой и подходит далеко не для любой фотографии, но не вносит классические JPEG-блоки. JPEG удобен, однако его компрессия удаляет часть тонкого сигнала и добавляет блочные и кольцевые артефакты, которые деконволюция способна усилить.
Если исходник существует только как JPEG, не нужно конвертировать его в PNG в надежде «вернуть качество»: потерянная информация не восстановится от смены контейнера. Смысл сохранения рабочей копии в PNG состоит в другом — дальнейшие тесты не будут добавлять ещё один цикл JPEG-потерь.
Кадрирование и размер
Уберите ненужную рамку скана, поля документа, резкий водяной знак, подпись или пустые области, если они не относятся к анализируемой сцене. Резкая чёрная рамка на фоне мягкой фотографии может существенно влиять на спектр и сбивать оценку. Если важен небольшой объект, кадрирование вокруг него одновременно уменьшает время вычисления и повышает долю полезной информации.
Следите за лимитом 2048×2048. Если кадр больше, сделайте отдельную уменьшенную копию. Для подбора настроек можно пойти дальше и подготовить тестовый фрагмент 512–1024 пикселя по длинной стороне. Найдя удачные Normal/Severe, Quality и область, затем повторите процесс на максимально крупной копии, которая помещается в ограничения программы.
Что не стоит делать заранее
- Не применяйте сильный Unsharp Mask: его ореолы будут восприниматься как часть структуры.
- Не включайте агрессивное локальное контрастирование и Clarity.
- Не увеличивайте изображение интерполяцией без необходимости.
- Не удаляйте шум настолько сильно, чтобы исчезли тонкие реальные детали.
- Не сохраняйте тестовые версии многократно в JPEG с низким качеством.
Лёгкая линейная коррекция яркости допустима, если изображение слишком тёмное для визуального контроля, но лучше не менять тональную структуру радикально. Задача подготовки — дать алгоритму максимально «честный» сигнал, а декоративную обработку оставить на этап после деконволюции.
Базовый рабочий сценарий
Самый надёжный способ освоить Unshake — разделить работу на диагностику и финальный расчёт. Не пытайтесь с первого запуска получить идеальный файл. Сначала нужно выяснить, способен ли алгоритм в принципе построить правдоподобное ядро для данного кадра.
- Сохраните оригинал. Работайте только с копией, желательно без новых потерь.
- Подготовьте размер. Уложите изображение в предел 2048×2048, а для быстрых тестов используйте ещё меньший вариант.
- Откройте файл кнопкой Open. Проверьте, что размеры в информационной области соответствуют ожидаемым.
- Начните с Normal blur. Severe оставьте для явно более длинного или широкого размытия.
- Оставьте Estimate Quality. Это нейтральная стартовая точка.
- Включите Select blurred. Подберите область с хорошо различимыми краями и равномерным характером blur.
- Поставьте умеренный Amplification. Цель первого запуска — увидеть структуру, а не максимальную резкость.
- Нажмите Estimate. Запишите ориентировочное время и оставьте x1 для диагностического прогона.
- Запустите DeBlur. Во время расчёта старый интерфейс может обновляться редко; не считайте отсутствие анимации автоматическим признаком зависания.
- Сравните результат с оригиналом. Ищите уменьшение ширины реальных контуров, а не просто усиление контраста.
- Измените Amplification и нажмите ReDraw. Если ядро удачное, подберите силу без нового тяжёлого расчёта.
- Если артефакты имеют направленный или повторяющийся характер, пересчитайте ядро. Измените область, Normal/Severe или Quality, а не только Amplification.
- Сохраните отдельную копию. Дайте файлу имя, из которого понятно, что это обработанный вариант, а исходник не перезаписывайте.

При оценке результата полезно смотреть и общий кадр, и масштаб 100%. На общем виде заметно, не стала ли фотография неестественно жёсткой. На 100% видны ringing, волны, ступенчатые контуры и усиленный шум. Хороший компромисс сохраняет полезную деталь на обоих масштабах.
Как правильно выбирать область Select blurred
Выбор области — один из главных источников как удачных, так и неудачных результатов. Unshake должен увидеть участок, где размытие отражает именно тот дефект, который вы хотите исправить. Если в окно попадает несколько разных причин нерезкости, алгоритм пытается объяснить их одной моделью и закономерно ошибается.
Подходящая область
Хорошая зона содержит края разных направлений: вертикали, горизонтали, диагонали, мелкие детали и умеренно гладкие участки. Например, фрагмент фасада с окнами, ветками и текстурой стены информативнее, чем только небо. Для портрета полезнее лицо с глазами, волосами и контуром одежды, чем однотонная щека. Для текста — несколько строк с разными буквами, а не одна толстая вертикальная черта.
Размытие внутри зоны должно быть примерно одинаковым. Если верх кадра резкий, а низ ушёл из глубины резкости, не включайте оба участка одновременно. Если движущийся автомобиль смазан относительно статичного фона, решите, какой объект вам важнее, и анализируйте его отдельно.
Плохая область
Опасны повторяющиеся структуры: решётки, жалюзи, частые перила, кирпичная кладка с одинаковым шагом, ряды окон, тонкие ветки на равном расстоянии. Алгоритм может интерпретировать периодичность как часть blur kernel. Это часто приводит к волнам и ложным двойным линиям. Если после DeBlur геометрия таких объектов становится менее правдоподобной, смените область на участок с более разнообразной структурой.
Неудачны также рамки, крупные подписи поверх фотографии, сильные блики и клиппинг. Яркая точка, полностью ушедшая в белое, не содержит тонкой информации о форме, а жёсткий край рамки может доминировать над более мягкими естественными деталями.
Как проверить, что выбор удачный
Сделайте два коротких x1-прогона с близкими областями. Если ядро устойчиво, общая форма восстановленных контуров будет похожей, а различия сведутся к небольшим деталям. Если результат радикально меняется от сдвига окна на десяток пикселей, сцена, вероятно, содержит неоднородное размытие или недостаточно информации. В таком случае лучше уменьшить область до действительно однородного участка или признать, что автоматическая деконволюция для кадра нестабильна.
Как выбирать между Normal и Severe
Выбор Normal или Severe лучше делать по геометрии размытия, а не по общей оценке «фото плохое». Найдите контрастный элемент: край окна, тонкую ветку на светлом фоне, букву, блик, границу крыши. Посмотрите, на сколько пикселей растянут переход. Если он мягкий, но компактный, Normal обычно логичнее. Если виден явный широкий след, раздвоение или длинная полоса, Severe даёт алгоритму больший диапазон поиска.
При дефокусе удобен яркий точечный источник. Идеальная точка превращается в пятно, и его диаметр примерно показывает масштаб размытия. Для движения камеры форма сложнее: след может быть линейным, ломаным или немного дугообразным. Unshake не просит вручную нарисовать траекторию, но всё равно выигрывает от корректной оценки масштаба.
Если Normal выдаёт слабое улучшение без серьёзных артефактов, не стоит сразу переходить в Severe. Сначала слегка увеличьте Amplification через ReDraw. Если же контур физически остаётся слишком широким и видно, что модель недооценивает blur, тогда имеет смысл пересчитать в Severe. Обратная ситуация тоже типична: Severe на умеренно размытом кадре может начать искать лишнюю структуру и порождать рябь.
Для объективного сравнения сохраните две версии с одинаковым Amplification, но разными Normal/Severe. Не меняйте одновременно Quality. Смотрите на одни и те же контрольные участки: глаза и волосы на портрете, тонкие линии архитектуры, края символов. Правильнее тот режим, который уменьшает ширину исходных границ без систематических повторов и ореолов.
Режимы Quality на практике
Quality в Unshake не является качеством JPEG и не задаёт разрешение результата. Это предположение алгоритма о статистике сцены. Поэтому выбор должен исходить из содержания кадра, а не из желания получить «максимум качества». Scenic не автоматически лучше Basic, так же как Severe не лучше Normal.
Estimate Quality как исходная точка
Estimate полезен, когда сцена смешанная и вы не уверены, сколько тонкой фактуры считать нормой. Он анализирует более крупные структуры и пытается вывести ожидаемый уровень деталей. Это уменьшает количество ручных решений, но не отменяет визуальную проверку. На шумном JPEG Estimate способен переоценить количество высоких частот, потому что компрессионные блоки и зерно выглядят как дополнительная структура.
После первого результата обратите внимание не на общий «вау-эффект», а на гладкие зоны. Если на коже, небе или стене появились регулярные червевидные элементы, вероятно, модель слишком охотно восстанавливает детали. В таком случае имеет смысл проверить Portrait или Basic, не меняя область и масштаб blur.
Portrait
Portrait полезен не только для лица. Он подходит для любых сцен с крупными плавными поверхностями, где истинной мелкой текстуры немного: предметная съёмка, игрушка на ровном фоне, простой интерьер, документы с крупным шрифтом. Режим снижает ожидание высокочастотной информации и тем самым может уменьшить псевдодеталь.
Но Portrait не является шумоподавлением. Если исходник сильно шумный, высокое Amplification всё равно сделает шум заметным. Кроме того, волосы, ткань и ресницы действительно содержат тонкую фактуру, поэтому слишком консервативная модель способна оставить их мягкими. Оценивать нужно конкретную цель кадра: читаемость лица, естественность кожи или сохранение волос.
Scenic
Scenic уместен для пейзажей, городской архитектуры, листвы и других сцен, где мелкая структура действительно присутствует по всему кадру. Он позволяет алгоритму предполагать, что слабые высокочастотные компоненты могут быть реальными деталями, а не только шумом. На хорошем малошумном исходнике это помогает вернуть ощущение фактуры.
На JPEG с сильной компрессией Scenic опасен: он может поднять сетку 8×8, ringing вокруг контрастных границ и шум в тенях. Если после обработки появляются «чешуйки» на небе и песочная фактура на гладкой стене, проблема может быть не в ядре, а в слишком богатой модели детализации.
Basic
Basic стоит рассматривать как консервативный вариант для бедных деталями и проблемных изображений. Он может помочь, когда Estimate стабильно создаёт лишнюю структуру, а Portrait всё ещё слишком агрессивен. Иногда Basic полезен для маленького скана или сильно сжатого файла, где большая часть высоких частот уже потеряна и попытка «восстановить» их лишь усиливает дефекты.
Слабость Basic очевидна: на хорошем исходнике он способен недовосстановить реально существующую фактуру. Поэтому его лучше использовать не как безопасный режим по умолчанию, а как диагностическую альтернативу.
Amplification: как найти рабочее значение
Amplification проще всего подбирать после удачного DeBlur. Предположим, ядро выглядит правдоподобно: линии стали уже, направление смаза уменьшилось, нет сильной ряби. Теперь можно менять только Amplification и каждый раз нажимать ReDraw. Такой цикл намного быстрее полного пересчёта и позволяет изолировать один параметр.
Начните с умеренного значения. Если результат почти не отличается от исходника, увеличивайте ползунок небольшими шагами. После каждого шага смотрите три типа области: важную деталь, гладкий фон и контрастный край. Правильный диапазон находится там, где важная деталь становится устойчивее, но фон ещё не покрывается регулярным шумом, а край не получает выраженный светлый или тёмный дубль.
Если артефакт сохраняет форму при любом Amplification, проблема обычно в ядре, а не в силе вывода. Например, двойная линия, повторяющая направление смаза, не исчезнет от небольшого уменьшения усиления. Тогда нужно вернуться к Select blurred, Normal/Severe или Quality и выполнить DeBlur заново.
Не выбирайте значение только по уменьшенной картинке в окне. Высокий Amplification часто выглядит эффектно при масштабе 25–50%, потому что мелкая рябь усредняется. На 100% становятся заметны ложные края. Для веб-публикации итог всё равно может быть приемлем после уменьшения, но важно понимать, что это компромисс отображения, а не точное восстановление.
Estimate и управление временем расчёта
Старый интерфейс Unshake необычен тем, что отдельно оценивает длительность. Это полезно, потому что слепая деконволюция может занимать намного больше времени, чем обычный фильтр. Estimate даёт ориентир для базового прогона, а множитель задаёт, сколько дополнительного времени алгоритму разрешено потратить на поиск.
Если оценка внезапно выросла в несколько раз после небольшого изменения размера картинки, вспомните про FFT и внутреннее дополнение массивов. Разница между 1024 и 1025 пикселями по одной стороне может быть гораздо существеннее, чем кажется по числу пикселей. В таком случае разумно слегка уменьшить рабочую копию до удобной границы, особенно если вы только подбираете параметры.
Увеличивать множитель стоит после того, как короткий расчёт уже дал логичное направление восстановления. Дополнительное время полезно, если результат стабилен, но ядро выглядит грубым. Если же короткий x1 даёт хаотичные волны, долгий прогон редко превращает их в корректную структуру. Сначала исправьте входные условия.
Во время обработки окно может выглядеть зависшим. Для старых Java-приложений отсутствие плавного прогресс-бара нормально. Ориентируйтесь на предварительную Estimate, загрузку процессора и разумный запас времени. Если процесс многократно превышает оценку и не использует CPU, это уже повод проверить память, JVM или зависание.
Производительность без выдуманных бенчмарков
Unshake создавался для компьютеров и типичных размеров фотографий начала 2000-х и 2010-х годов. Публикации того времени показывают большой разброс: небольшие изображения обрабатывались за секунды или десятки секунд, многомегапиксельные — за минуты. Эти старые цифры нельзя переносить на современный компьютер как актуальный тест, потому что отличаются процессоры, JVM и операционные системы. Но общий вывод сохраняется: время резко растёт вместе с размером изображения и сложностью поиска.
Главная оптимизация — уменьшить количество полных DeBlur. Подбор области и Quality проводите на тестовой копии. После удачного ядра используйте ReDraw для Amplification. Не меняйте несколько параметров одновременно, иначе каждый тяжёлый прогон не даёт диагностической информации.
Вторая оптимизация — кадрировать. Если задача состоит в восстановлении небольшой детали, нет смысла гонять через FFT огромные пустые поля или фон. Но кадрирование не должно оставлять слишком мало структуры. Баланс состоит в том, чтобы сохранить достаточную разнообразную область вокруг цели.
Третья оптимизация — следить за памятью JVM. Исторический пример запуска с -Xmx512m показывает, что разработчик учитывал heap как ограничение. На 32-битной Java практический потолок ниже, чем на современной 64-битной. Если программа завершается на крупном файле, увеличение памяти помогает только до тех пор, пока само приложение и модель изображения не упираются в свои ограничения.
Файлы, каталоги source и results
Unshake использует простую файловую организацию. Каталог source служит удобным местом для исходных изображений: файлы оттуда появляются в списке. Это не обязательный единственный способ импорта — кнопка Open позволяет выбирать изображения отдельно. Каталог results используется для вывода результатов в штатном workflow.
У программы нет современного проектного формата с историей операций, масками и недеструктивными слоями. Поэтому воспроизводимость обеспечивается вручную: храните оригинал, рабочую копию и финальный результат раздельно, а для важных кадров записывайте параметры. Имя вроде scan_normal_estimate_amp5_x1.png информативнее, чем final2.jpg.
Если после DeBlur файл появляется не там, где ожидалось, сначала проверьте права на запись в results и текущий рабочий каталог. Старые запускаторы могли предполагать запуск именно из папки программы. Запуск JAR из другого каталога иногда меняет относительные пути. Кнопка Save позволяет явно выбрать место и обойти подобную путаницу.
Пакетная обработка Batch
Batch удобен, когда характер дефекта повторяется. Типичный пример — серия фотографий, снятых с одной выдержкой и одним объективом в течение нескольких секунд, где дрожание камеры похоже. Другой пример — несколько сканов из одной сессии с одинаковой мягкостью оптики. В таких случаях один набор параметров экономит время.
Перед Batch нужно проверить однородность не только визуально, но и по причинам blur. Если в одном кадре сместилась камера, а в другом двигался человек, ядра будут разными, даже если степень нерезкости кажется одинаковой. Если часть серии сфокусирована ближе, а часть дальше, Quality и область тоже могут требовать разных условий.
Batch в Unshake не заменяет контроль качества. После обработки просмотрите каждый результат хотя бы на нескольких контрольных участках. Ошибочная модель может быть почти незаметна на одном кадре и разрушать повторяющуюся текстуру на другом. При обнаружении группы проблемных файлов вынесите их в отдельную очередь с другим набором параметров.
Практический сценарий: небольшой смаз от движения камеры
Это один из наиболее подходящих случаев для Unshake. Снимок слегка растянут в одном направлении, но крупные формы и значительная часть деталей сохранились. Подготовьте рабочую копию без дополнительной резкости, начните с Normal и Estimate Quality. В Select blurred выберите участок с диагональными и вертикальными краями, например лицо вместе с частью одежды или архитектурный фрагмент с окнами.
На x1 оцените, сужается ли направленный след. Если контуры становятся чётче, но появляются слабые волны, не пересчитывайте сразу: сначала уменьшите Amplification через ReDraw. Если волны остаются той же формы, смените область. Если Normal почти не влияет на длину смаза, попробуйте Severe с тем же Quality.
Для камеры, которая во время экспозиции двигалась сложной траекторией, результат хуже. Автоматическая модель может приблизить blur, но не обязана точно описывать ломаное движение. В таких кадрах более специализированный инструмент с ручной настройкой направления и расстояния может быть предсказуемее.
Практический сценарий: промах фокусировки
При небольшом дефокусе контуры мягкие во всех направлениях, а яркие точки превращаются в округлые пятна. Выберите область, находящуюся на той же глубине, что и важный объект. Если лицо слегка не в фокусе, не включайте в анализ резкий фон: программа получит противоречивые данные.
Quality здесь особенно важен. Для лица начните с Estimate и сравните Portrait. Scenic способен переусилить поры, JPEG-шум и волосы, создавая слишком жёсткий вид. Amplification увеличивайте постепенно, потому что дефокус часто ограничивает реальное количество сохранившейся информации сильнее, чем лёгкий motion blur.
Если разные части объекта находятся на разной глубине резкости, одного ядра на весь кадр недостаточно. Unshake не имеет современных масок и локальной деконволюции в одном проекте. Практический путь — обработать отдельный кадр, ориентируясь на главную область, а финальную локальную коррекцию выполнять в редакторе, который поддерживает маски.
Практический сценарий: старый скан
Скан старой фотографии может быть мягким из-за оригинальной оптики, бумаги, фокуса сканера или последующего масштабирования. Перед Unshake удалите внешнюю рамку скана и оставьте только фотографию. Если есть царапины и пыль, не обязательно ретушировать их до деконволюции: слишком резкие следы ретуши могут изменить структуру. Но крупные жёсткие дефекты по краям лучше исключить кадрированием.
Сохраните исходный скан без потерь. Для рабочей копии PNG удобнее JPEG. Если изображение малодетализированное, сравните Estimate и Portrait/Basic. Для группового портрета с одеждой и фоном может оказаться уместнее Estimate; для крупного лица — Portrait.
После деконволюции обычно требуется отдельная реставрация: пыль, царапины, тон, цвет и локальный контраст Unshake не исправляет. Не смешивайте задачи. Сначала решите, удалось ли улучшить геометрию размытия, и сохраните промежуточный файл. Затем переходите к ретуши в полноценном редакторе.
Практический сценарий: текст и техническая деталь
Для текста критерий успеха отличается от художественной фотографии. Лёгкая жёсткость допустима, если штрихи становятся устойчивее и читаемее. Но именно здесь особенно опасны ложные детали. Деконволюция может создать двойной край, который визуально превращает «3» в «8» или добавляет штрих к букве.
Работайте на копии, не масштабируйте результат перед проверкой и сохраняйте несколько близких Amplification. Реальная структура обычно сохраняется при небольшом изменении усиления; артефакт часто резко появляется и исчезает. Сравнивайте с соседними символами того же шрифта и с геометрией исходника.
Если изображение имеет юридическое или экспертное значение, Unshake следует рассматривать только как визуализационный инструмент. Не выдавайте обработанный вариант за исходник, фиксируйте параметры, храните оригинал с контрольной суммой и подтверждайте интерпретацию независимыми методами.
Практический сценарий: портрет
На портрете человеческое зрение очень чувствительно к неестественной микрофактуре. Поэтому максимальное Amplification редко даёт лучший субъективный результат. Начните с глаз, бровей и волос как контрольных областей, но одновременно следите за кожей. Если кожа покрывается регулярными точками или «червячками», сила слишком высока или Quality слишком богат деталями.
Не пытайтесь сделать одинаково резкими лицо и намеренно размытый фон. Если Select blurred включает фон, алгоритм может начать восстанавливать то, что фотограф специально оставил вне глубины резкости. Сосредоточьтесь на лице и соседних деталях той же глубины.
После Unshake можно аккуратно уменьшить шум и выполнить локальную ретушь в другом редакторе. Порядок важен: сильное шумоподавление до деконволюции может стереть полезный слабый сигнал, а после — помочь сгладить артефакты, которые алгоритм усилил вместе с деталями.
Практический сценарий: пейзаж и архитектура
Пейзаж содержит много мелкой фактуры и потому хорошо показывает как возможности, так и риски. Листва, трава, камень и черепица дают богатый материал для оценки, но их периодичность может создавать ложные закономерности. Scenic логичен как тест, но его нужно сравнивать с Estimate.
Для архитектуры особенно информативны диагональные и вертикальные линии. Удачная деконволюция делает края уже и лучше отделяет соседние элементы. Неудачная создаёт параллельные призрачные контуры. Проверяйте не только центр, но и края кадра: оптическое размытие может меняться по полю, а Unshake применяет одну модель к выбранной задаче.
Если размытие вызвано не движением, а сложной оптической аберрацией, однородная деконволюция может быть недостаточной. В таком случае лучше использовать редактор с профилем объектива и локальными инструментами, а Unshake оставить для собственно blur-компонента.
Практический сценарий: сильно сжатый JPEG
Сильная JPEG-компрессия — один из худших исходников для деконволюции. Картинка уже потеряла часть высокочастотных данных, а вместо них появились блочные границы и ringing. Unshake не знает, какие структуры возникли из-за камеры, а какие из-за кодека, поэтому может усилить оба типа.
Сделайте копию в PNG, чтобы не накапливать дополнительные потери, но не ожидайте, что конвертация улучшит исходное качество. Начните с более консервативного Quality и низкого Amplification. Если на гладком фоне быстро проявляется сетка блоков, дальнейшее усиление бессмысленно.
Иногда полезнее сначала найти менее сжатую копию фотографии, чем тратить время на настройку. Разница между исходным JPEG с камеры и пересланным через мессенджер файлом может быть решающей для деконволюции.
Типичные артефакты и что они означают
| Симптом | Вероятная причина | Что изменить |
|---|---|---|
| Волны вокруг контрастных краёв | Высокий Amplification или неверное ядро | Сначала ReDraw с меньшей силой; при сохранении волн пересчитать область |
| Двойные линии в одном направлении | Модель motion blur не совпала со снимком | Сменить Select blurred и сравнить Normal/Severe |
| Гладкий фон стал зернистым | Quality ожидает слишком много деталей | Сравнить Portrait или Basic, уменьшить Amplification |
| Перила или кирпич «плывут» | Повторяющийся рисунок принят за blur | Выбрать менее периодическую область |
| Результат почти как оригинал | Слишком слабое усиление или blur вне модели | Слегка поднять Amplification; затем проверить Severe |
| Края стали слишком жёсткими | Переусиление | Уменьшить Amplification через ReDraw |
| Кольца вокруг ярких точек | Ringing деконволюции | Сменить область/Quality, снизить силу |
| Разные части кадра исправились по-разному | Неоднородное размытие | Ограничить область или обрабатывать локально в другом редакторе |
Главный диагностический принцип: артефакт, который меняется только по силе, можно попытаться исправить Amplification. Артефакт, у которого сохраняется геометрия, указывает на ошибку модели и требует нового DeBlur.
Ограничения Unshake
Первое ограничение — максимальный размер до 2048×2048 пикселей. Для современных камер это означает обязательную подготовку копии. Уменьшение полезно для алгоритма, но уменьшает абсолютное количество доступной информации. Если критическая деталь занимает всего несколько пикселей, после масштабирования она может стать ещё менее информативной.
Второе ограничение — узкий набор подтверждённых форматов: PNG, GIF и JPEG. RAW, TIFF, PSD, HEIC, WebP и современные многослойные форматы не входят в подтверждённый workflow версии 1.5. Файл из камеры сначала придётся проявить или конвертировать в другом приложении.
Третье ограничение — одна модель размытия плохо описывает сцены с разной глубиной резкости, движущимися объектами и сложной траекторией камеры. Select blurred помогает выбрать область, но не превращает Unshake в локальный редактор с масками.
Четвёртое ограничение — старый Java-интерфейс и зависимость от совместимой среды. На современных системах запуск может требовать ручной диагностики JVM. Это не проблема алгоритма как такового, но она влияет на практическую пригодность программы.
Пятое ограничение — лицензия. Unshake 1.5 распространялся для некоммерческого использования, а код не является свободным. Это важно для редакций, компаний и коммерческих реставрационных проектов: факт бесплатной загрузки не равен разрешению на коммерческое применение.
Шестое ограничение — отсутствие современных удобств: проектов, истории, масок, GPU-ускорения, RAW-процесса и цветоуправления уровня актуальных редакторов. Программа сильна именно в своей узкой операции, а не как универсальная среда обработки.
Когда ReDraw экономит время, а когда нужен новый DeBlur
Разделение DeBlur и ReDraw — одна из самых полезных особенностей Unshake, хотя интерфейс почти не объясняет её. DeBlur решает тяжёлую часть: оценивает ядро и выполняет восстановление. ReDraw работает с уже найденным результатом и позволяет изменить видимую силу через Amplification. Если геометрия восстановленных деталей выглядит правдоподобно, но картинка слишком мягкая или слишком жёсткая, новый DeBlur не нужен.
Признаки удачного ядра: направление исходного смаза заметно ослабло; прямые линии остались прямыми; повторяющиеся объекты не получили новых копий; мелкая фактура появляется там, где она логична; светлые и тёмные ореолы невелики. В такой ситуации меняйте Amplification и нажимайте ReDraw. Это позволяет быстро сделать несколько вариантов и выбрать компромисс.
Новый DeBlur нужен, если ошибка имеет форму. Например, возле каждого фонаря появился одинаковый призрачный дубль вправо, вертикальные рейки стали волнистыми, а буквы получили повторяющийся боковой штрих. Такие дефекты не являются просто «слишком сильной резкостью». Они показывают, что оценённое ядро описывает сцену неверно. Уменьшение Amplification сделает артефакт слабее, но не исправит логику восстановления.
Практически удобно работать парами версий: сначала сделать один DeBlur, затем сохранить несколько ReDraw с близкими значениями усиления. Только если вся серия вариантов сохраняет один и тот же структурный дефект, возвращаться к области и типу blur. Такой порядок сокращает количество тяжёлых запусков и делает эксперимент контролируемым.
Как оценивать результат без самообмана
Деконволюция легко создаёт впечатление прогресса за счёт усиления контраста. Поэтому сравнение должно быть методичным. Откройте оригинал и результат в одинаковом масштабе, лучше 100%, и выберите заранее несколько контрольных зон. Для портрета это глаза, контур губ, волосы и гладкая кожа. Для архитектуры — надписи, края окон, тонкие провода и стены. Для документа — несколько разных символов и пустой фон.
Сначала сравнивайте ширину границ. Если размытый край занимал несколько пикселей, удачная деконволюция должна сделать переход компактнее. Затем проверяйте появление новых регулярных элементов. Любая повторяющаяся волна, одинаковый двойной контур или «эхо» на всех контрастных границах — признак артефакта.
Дальше полезно уменьшить оба файла до конечного размера публикации. Иногда слабый ringing, заметный на 100%, исчезает после уменьшения и не мешает реальному использованию. Это допустимый практический компромисс, если результат нужен для иллюстрации, а не анализа. Но в технической или доказательной задаче артефакт нельзя игнорировать только потому, что он малозаметен в веб-размере.
Наконец, проверьте устойчивость. Слегка измените Amplification и ReDraw. Настоящая восстановленная структура обычно остаётся на месте, меняясь главным образом по контрасту. Ложная деталь может резко появиться, раздвоиться или исчезнуть. Для спорных символов это особенно важная проверка.
Сравнение с аналогами
Unshake разумно сравнивать не с любым фоторедактором, а с программами, которые решают смежные задачи разными методами. ФотоМАСТЕР — универсальный редактор с инструментами повышения резкости и локальной коррекции. Focus Magic и SmartDeblur ближе к Unshake по идее восстановления размытия, но дают иной контроль над моделью и работают в более современном workflow.
| Программа | Что делает с нерезкостью | Контроль | Форматы и workflow | Главное ограничение |
|---|---|---|---|---|
| Unshake | Автоматически оценивает blur и выполняет деконволюцию | Normal/Severe, Quality, Select blurred, Amplification, время | PNG, GIF, JPEG; отдельные окна; Batch | До 2048×2048, старая Java-среда |
| ФотоМАСТЕР | Повышает резкость и позволяет локально воздействовать через Корректор | Сила, Радиус, Порог; локальная кисть | Полноценный редактор с цветом, ретушью и другими инструментами | Это не специализированная слепая деконволюция смаза |
| Focus Magic | Исправляет дефокус и motion blur специализированными алгоритмами | Auto-Focus, Blur Width, направление и расстояние движения | Windows standalone и плагин; JPG, BMP, PNG, TIFF в standalone | Коммерческая лицензия; часть возможностей зависит от платформы |
| SmartDeblur 1.27 | Деконволюция дефокуса, движения и Gaussian blur | Глубокая настройка ядра, методы Wiener/Tikhonov/TV | Qt-приложение, полноразмерный preview, открытый код GPLv3 | Требует больше понимания параметров ядра |
Unshake и ФотоМАСТЕР
ФотоМАСТЕР удобнее, когда нерезкость — только одна часть общей обработки. В нём можно одновременно исправлять экспозицию, цвет, геометрию, ретушировать и повышать резкость. Подтверждённый инструмент повышения резкости использует параметры Сила, Радиус и Порог; через Ретушь → Корректор резкость можно усиливать локально на выбранном объекте. Это проще для обычной фотографии, где нужно вернуть субъективную чёткость, а затем продолжить редактирование.
Unshake полезнее в другой задаче: когда нужно попытаться восстановить структуру именно из blur-модели, а обычное усиление краёв не помогает. У него нет ретуши и цветокоррекции, зато есть оценка ядра, выбор масштаба размытия и области, по которой строится модель. Если снимок слегка мягкий и нужен быстрый эстетический результат, универсальный редактор практичнее. Если есть направленный смаз и интересует возможность обратного восстановления, Unshake логичнее как специализированный эксперимент.
Unshake и Focus Magic
Focus Magic также ориентирован на восстановление, но предлагает более прямую диагностику причины. Для motion blur пользователь задаёт направление и расстояние, а для дефокуса в Windows доступен Auto-Focus и ручной Blur Width. Это делает модель прозрачнее: если виден линейный смаз, его можно описать конкретными параметрами, а не только категориями Normal/Severe.
Unshake, напротив, старается больше оценить автоматически. Это удобно, когда траектория неочевидна, но уменьшает ручной контроль. Кроме того, современная Windows-версия Focus Magic рассчитана на текущие Windows 10/11 и поддерживает standalone workflow с JPG, BMP, PNG и TIFF, тогда как Unshake привязан к старому Java-пакету и лимиту изображения. С другой стороны, Unshake исторически предназначен для некоммерческого бесплатного использования, тогда как Focus Magic — коммерческий продукт с пробным режимом.
Unshake и SmartDeblur
SmartDeblur 1.27 ближе всего по математической природе. Он поддерживает восстановление Out of Focus, Motion blur и Gaussian blur, использует Wiener, Tikhonov и Total Variation prior, а параметры можно менять с интерактивным preview. Пользователь получает больше контроля над ядром и методами регуляризации.
Unshake проще концептуально: вместо набора математических режимов — Normal/Severe, Quality и Amplification. Это уменьшает число параметров, но одновременно ограничивает точную настройку. SmartDeblur полезнее для пользователя, который понимает тип blur и готов контролировать ядро вручную; Unshake интересен как автоматический деконволвер, где основная ставка сделана на оценку размытия по изображению.
Что выбрать по задаче
- Для обычной коррекции резкости вместе с ретушью, цветом и локальной кистью удобнее ФотоМАСТЕР.
- Для конкретного motion blur с известным направлением и расстоянием удобнее специализированный ручной контроль Focus Magic.
- Для экспериментов с методами деконволюции и глубокими параметрами ядра подходит SmartDeblur.
- Для небольшого изображения, где хочется автоматически оценить blur и сравнить несколько простых режимов, Unshake остаётся характерным специализированным инструментом.
Ни один из вариантов не восстанавливает информацию, которой физически нет в файле. Сильный смаз, очень маленький объект, клиппинг, шум и тяжёлая компрессия задают общий предел для всех программ, различается только способ работы с оставшимся сигналом.
Типичные проблемы запуска
Окно не появляется после Launch
Сначала проверьте Java. Если команда java -version не выполняется, запускатору нечем открыть JAR. Если Java есть, но Launch молчит, попробуйте прямой запуск java -jar Unshake.jar из каталога программы. Так ошибка JVM выводится в терминал и становится видимой.
Не устанавливайте наугад старую неподдерживаемую Java только потому, что историческая инструкция упоминает Java 2. Современная безопасность важнее. Если текущая поддерживаемая JVM несовместима, безопаснее использовать изолированную виртуальную машину со старой ОС и отключённым внешним доступом либо выбрать современный аналог.
JAR открывается как архив
Некоторые архиваторы ассоциируют расширение .jar с ZIP-подобными файлами. Это нормально: JAR действительно является архивным контейнером, но может содержать Java-приложение. Не распаковывайте его вручную ради запуска. Используйте Launch или команду java -jar.
Linux сообщает Permission denied
Проверьте права unlaunch.sh. Скрипту может требоваться флаг исполнения. Если после этого появляется ошибка вида «bad interpreter», проверьте первую строку и окончания CRLF. Сам JAR можно запустить напрямую через Java, минуя shell-скрипт.
Программа падает на большом изображении
Сначала убедитесь, что ни одна сторона не превышает 2048 пикселей. Затем проверьте доступную heap-память JVM. Если запускаете из терминала, можно задать разумный -Xmx, учитывая архитектуру Java и объём памяти компьютера. Но если файл близок к пределу и содержит сложную сцену, надёжнее кадрировать или уменьшить рабочую копию.
После DeBlur нет видимого результата
Проверьте, не слишком ли мал Amplification и корректно ли выбран файл. Посмотрите каталог results и используйте Save. Если изображение практически не изменилось, сделайте ReDraw с немного большим усилением. Если и тогда эффекта нет, вероятно, ядро не нашло выраженного blur или тип Normal/Severe не соответствует сцене.
Окно «замерло» во время расчёта
Старый Java GUI может не перерисовываться постоянно. Сопоставьте время с Estimate. Если CPU загружен, а расчёт идёт в пределах разумного интервала, не завершайте процесс преждевременно. Если загрузки нет и ожидание значительно превосходит оценку, вероятен сбой JVM или нехватка памяти.
Ошибки настройки, которые встречаются чаще проблем программы
Одновременное изменение всех параметров. Пользователь переключает Severe, Scenic, повышает Amplification и ставит x100, после чего получает плохой результат и не понимает причину. Меняйте по одному фактору.
Слишком маленькая Select blurred. Узкий фрагмент глаза или одна буква не дают достаточной статистики. Добавьте соседние границы, сохранив однородность blur.
Выбор резкой области вместо размытой. Алгоритм недооценивает blur и почти не восстанавливает целевой объект. Переместите окно на участок с тем же дефектом, что и цель.
Попытка исправить JPEG-блоки деконволюцией. Блоки не являются исходным blur. Высокое Amplification обычно делает их только заметнее.
Ожидание, что длительный расчёт исправит плохую модель. Время улучшает поиск только внутри заданных условий. Неверная область остаётся неверной при x100.
Сохранение только финального JPEG. При следующем эксперименте сравнивать будет не с чем. Храните оригинал, рабочий PNG и несколько результатов с понятными именами.
Как использовать Unshake в связке с обычным фоторедактором
Unshake лучше воспринимать как один технический этап, а не как конечную среду. Полный workflow можно разделить на четыре стадии: подготовка исходника, деконволюция, очистка артефактов и финальная цветокоррекция.
На подготовке выполняйте только то, что помогает алгоритму: кадрирование, уменьшение до допустимого размера, минимальную коррекцию экспозиции при необходимости и перевод рабочей копии в PNG. Не добавляйте декоративную резкость и локальный контраст.
В Unshake подберите ядро и Amplification. Сохраните результат без повторной JPEG-компрессии, если дальнейший редактор поддерживает PNG. После этого можно удалить мелкие артефакты, снизить шум, локально замаскировать проблемные зоны, поправить тон и цвет.
Финальную output-sharpening для экрана или печати выполняйте уже после изменения размера. Это отдельная задача: Unshake пытается обратить исходный blur, а output-sharpening компенсирует потери при ресайзе и выводе. Смешивание этих стадий приводит к переусилению.
Работа с RAW-исходником
Unshake не открывает RAW напрямую, поэтому кадр сначала нужно проявить. Цель RAW-конвертации перед деконволюцией — сохранить максимум полезного сигнала и не создавать лишние артефакты. Отключите или сведите к минимуму capture sharpening, избегайте чрезмерного clarity и texture, не применяйте агрессивное шумоподавление.
Экспозицию и баланс белого можно исправить настолько, чтобы детали не были скрыты, но не клиппуйте света и тени. Экспортируйте рабочую копию в формат, который понимает Unshake; из доступных вариантов PNG предпочтительнее повторного JPEG. Если исходный RAW крупный, сразу задайте разумное уменьшение до предела 2048×2048.
После Unshake возвращаться к RAW-параметрам уже нельзя, поэтому сохраняйте параметры проявки или отдельный TIFF/RAW в исходном редакторе для архива. Деконволюция — производная версия, не замена исходнику.
Особенности JPEG и повторного сохранения
JPEG-компрессия особенно заметна в областях с тонкими высококонтрастными деталями. Деконволюция как раз пытается использовать такие детали, поэтому вход с сильными потерями неблагоприятен. Если есть несколько копий одной фотографии, выбирайте файл с большим размером, меньшим количеством пересохранений и наиболее естественными краями, а не тот, который уже искусственно «резкий».
После обработки не сохраняйте серию промежуточных JPEG. Каждый цикл компрессии может добавлять новые кольца и блоки. Сохраняйте промежуточные версии в PNG, а JPEG делайте один раз в конце, когда известны окончательный размер и качество.
Что делать со снимком, где смешаны дефокус и движение
Смешанный blur сложнее, потому что один PSF должен описать одновременно округлое размытие фокуса и направленный след движения. Unshake может найти приближение, но результат становится менее устойчивым. Начните с области, где один дефект доминирует, и выясните, что именно ограничивает читаемость сильнее.
Если основная проблема — движение, работайте по направленному следу. Небольшой остаточный дефокус затем можно скорректировать обычной резкостью. Если доминирует дефокус, ориентируйтесь на компактность точечных источников и не пытайтесь полностью убрать слабый motion-компонент.
Последовательное применение нескольких сильных деконволюций опасно: каждая усиливает артефакты предыдущей. Лучше умеренно исправить главный дефект и оставить небольшой остаток, чем получить визуально резкий, но структурно недостоверный файл.
Как работать с движущимся объектом на резком фоне
Это принципиально отличается от дрожания камеры. Если фон резкий, а объект двигался, размытие локализовано только на объекте. Анализ всего кадра вводит Unshake в заблуждение: большая часть изображения говорит, что blur отсутствует. Включите Select blurred и оставьте в окне преимущественно объект.
Если объект занимает мало места, может не хватить информации для оценки. В таком случае специализированный редактор с ручным motion kernel часто удобнее. Unshake не позволяет нарисовать маску произвольной формы и применить отдельное ядро только к объекту внутри одного проекта.
После обработки возможно, что фон тоже изменится при выводе. Если это нежелательно, сохранённый результат можно совместить с оригиналом в редакторе по маске, оставив восстановление только на движущемся объекте.
Как работать с дрожанием всей камеры
Когда вся сцена смазана одинаковым движением камеры, условия для Unshake благоприятнее. Можно выбрать широкий участок с разнообразной структурой и даже отключить Select blurred, если blur действительно однороден. Тем не менее лучше начать с контролируемой области, чтобы исключить края кадра с оптическими искажениями.
Если траектория дрожания короткая, Normal обычно достаточен. При длинном следе — Severe или предварительное уменьшение. Проверяйте вертикальные и диагональные линии: они хорошо показывают, совпало ли ядро с направлением движения.
Сканированные документы и рукописи
Для документа задача часто состоит в восстановлении формы штрихов, а не художественной фактуры. Сначала обрежьте поля сканера и рамки, выровняйте документ геометрически в другом инструменте, но избегайте резкости. Затем выберите область с несколькими строками текста и различными символами.
Если бумага содержит текстуру и шум, Quality лучше держать консервативным. После деконволюции можно отдельно применить порог, уровни или OCR-подготовку. Не делайте бинаризацию до Unshake: жёсткий чёрно-белый порог уничтожает полутоновые переходы, которые содержат информацию о размытии.
Мелкие лица и номера: физический предел
Если объект занимает всего несколько пикселей, ни Unshake, ни другой алгоритм не может извлечь детали, которые не были записаны сенсором. Деконволюция способна перераспределить размазанный сигнал, но не создать надёжные новые исходные отсчёты. Увеличение изображения интерполяцией добавит пиксели, но не информацию.
Перед обработкой оцените размер цели. Если высота символа четыре-пять пикселей, любое «читаемое» восстановление чрезвычайно ненадёжно. Если символ занимает десятки пикселей, но размазан на несколько, шансы лучше. Это правило полезнее любого обещания программы.
Некоммерческая лицензия и практическое значение
Unshake 1.5 распространялся бесплатно для некоммерческого использования, но это не open source. Публикации и текст в интерфейсе указывают на закрытый код и ограничения на модификацию, дизассемблирование и коммерческое распространение. Поэтому использовать слово «бесплатный» без оговорки неправильно: цена для личного сценария нулевая, права использования ограничены.
Для домашней реставрации это обычно не проблема. Для фотографа, студии, издательства или другой коммерческой деятельности нужно отдельно оценить условия лицензии. Если требуется свободно лицензируемый деконволвер, SmartDeblur 1.27 с GPLv3 принципиально отличается по модели распространения.
Приватность и локальная обработка
Базовый workflow Unshake локальный: исходник открывается с диска, расчёт выполняется в Java-процессе, результат сохраняется в файловую систему. Для обработки не нужен аккаунт и не требуется загрузка фотографии в браузерный сервис. Для семейных архивов и конфиденциальных изображений это существенное преимущество.
Но возраст программы создаёт другие риски. Неизвестный переупакованный установщик, старый неподдерживаемый JRE или случайный JAR из каталога могут быть опаснее облачной передачи. Работайте с доверенной копией программы и поддерживаемой средой. Если вынуждены использовать старую JVM, изолированная виртуальная машина без доступа к важным данным безопаснее установки в основную систему.
Как вести журнал параметров
Для одного кадра достаточно имени файла, но при серьёзной реставрации полезно записывать параметры. Минимальный набор: размер рабочей копии, Normal/Severe, Quality, положение Select blurred, Amplification, множитель времени и имя результата. Если область задаётся размером окна, сделайте скриншот расположения окна или запишите координаты в другом редакторе.
Журнал полезен не только для воспроизводимости. Он помогает понять, какие параметры действительно влияют. Если три запуска отличаются сразу четырьмя настройками, сравнение почти бесполезно. Если меняется один параметр, вывод становится понятным.
Пошаговый эксперимент для первого знакомства
- Возьмите умеренно размытый снимок 800–1200 пикселей по длинной стороне.
- Сохраните рабочую копию в PNG.
- Откройте её и включите Select blurred.
- Выберите область с текстом, волосами, ветками или архитектурными краями.
- Установите Normal, Estimate Quality и Amplification около нижней-средней части шкалы.
- Нажмите Estimate и оставьте x1.
- Сделайте DeBlur и сохраните первый результат.
- Увеличьте Amplification на небольшой шаг, нажмите ReDraw и сохраните второй вариант.
- Уменьшите Amplification относительно первого значения и сохраните третий вариант.
- Сравните три версии на 100%.
- Если геометрия правдоподобна, выберите лучший Amplification.
- Если у всех трёх одинаковый двойной контур, измените область и повторите только DeBlur.
- После удачного Normal сравните Severe лишь в том случае, если ширина blur явно недооценена.
- Только после этого тестируйте альтернативный Quality.
Такой эксперимент даёт понимание интерфейса быстрее хаотичного перебора. Пользователь видит, какие параметры требуют полного расчёта, а какие можно менять через ReDraw.
Что Unshake не заменяет
Unshake не заменяет RAW-конвертер. Он не проявляет сенсорные данные, не управляет балансом белого и профилем камеры. Он не заменяет ретушь: пыль, царапины, пятна и дефекты кожи требуют других инструментов. Он не заменяет шумоподавление, хотя чрезмерный шум напрямую влияет на качество деконволюции.
Программа не является AI-upscaler и не синтезирует новые правдоподобные детали на основе обученной модели. Это важно для интерпретации результата: Unshake работает с сигналом конкретного изображения и математической моделью blur.
Она также не является видеостабилизатором. Современный продукт с тем же названием, который работает с гироскопическими данными видео, не связан с классической Java-утилитой для фотографий.
FAQ по Unshake
Какие изображения открывает программа?
Подтверждены JPEG/JPG, PNG и GIF. Для других форматов нужен предварительный экспорт в одном из них.
Есть ли поддержка RAW?
Нет подтверждённого RAW-workflow. RAW следует проявить в другом приложении и вывести рабочую копию, предпочтительно без лишней резкости и с минимальными потерями.
Какой максимальный размер изображения?
Для версии 1.5 указывается предел 2048×2048 пикселей. Более крупный файл нужно уменьшить или кадрировать.
Что сначала выбрать — Normal или Severe?
Начинайте с Normal для умеренного blur. Severe используйте, если длина или ширина смаза явно выходит за обычный диапазон и Normal недовосстанавливает контуры.
Что делает Estimate Quality?
Этот режим пытается автоматически оценить, сколько мелких деталей ожидается в сцене. Он удобен как стартовая точка, но результат всё равно нужно сравнивать с Portrait, Scenic или Basic при появлении артефактов.
Для чего нужен Select blurred?
Он ограничивает область, по которой Unshake оценивает размытие. В рабочем окне нужно оставить участок с тем же blur, который вы хотите исправить.
Почему нельзя выбрать маленький фрагмент?
Алгоритму нужна статистика разных краёв и текстур. Очень маленькая область может не содержать достаточно информации и давать нестабильное ядро.
Что делает Amplification?
Он регулирует силу отображения восстановленных компонентов. Слишком высокое значение усиливает шум и ошибки модели, слишком низкое оставляет результат мягким.
Зачем нужна ReDraw?
Чтобы изменить Amplification без повторной тяжёлой оценки ядра. Это основной способ быстро подобрать финальную силу после удачного DeBlur.
Что означает x1, x10 или x100 рядом с Estimate?
Это множитель допустимого времени поиска относительно базовой оценки. Большое значение даёт алгоритму больше времени, но не исправляет неверно выбранную область или тип blur.
Почему окно не отвечает?
Во время тяжёлого расчёта старый Java-интерфейс может обновляться редко. Сравните ожидание с Estimate и проверьте загрузку CPU, прежде чем завершать процесс.
Почему появляются волны?
Чаще всего из-за высокого Amplification, неверного ядра, шума или повторяющейся структуры в области анализа. Сначала уменьшите усиление через ReDraw; если форма волн сохраняется, пересчитайте область.
Можно ли обрабатывать несколько файлов?
Да, флажок Batch запускает очередь. Но один набор параметров подходит только для достаточно похожих снимков.
Можно ли использовать программу коммерчески?
Опубликованная лицензия версии 1.5 ограничивает использование некоммерческими сценариями. Бесплатная цена не означает свободную коммерческую лицензию.
Нужен ли интернет?
Для самой обработки нет: файлы обрабатываются локально. Интернет нужен только для получения программного пакета или справочной информации.
Нужно ли устанавливать программу?
Традиционного мастера установки нет. Архив распаковывается, а приложение запускается через Java с помощью Launch, shell-скрипта или непосредственно JAR.
Почему современная Java может не работать?
Программа проектировалась для старой экосистемы Java. Изменения JVM, безопасности и ОС могут влиять на совместимость. Официальной гарантии для нынешних сред нет.
Поможет ли Unshake на очень размытом кадре?
Только если в файле сохранилось достаточно информации и blur можно разумно описать одной моделью. Очень длинный смаз, малое разрешение, шум и компрессия быстро достигают физического предела.
Стоит ли увеличивать картинку перед обработкой?
Обычно нет. Интерполяция добавляет пиксели, но не исходную информацию и увеличивает вычислительную нагрузку. Для слишком сильного blur историческая рекомендация, наоборот, допускает уменьшение.
Почему результат на портрете выглядит хуже, чем на тексте?
Для текста допустима жёсткая структура и важна читаемость. На коже и плавных тонах те же артефакты воспринимаются как неестественная фактура. Используйте Portrait и более умеренный Amplification.
Можно ли считать восстановленный номер доказательством?
Нет. Деконволюция создаёт вычислительную реконструкцию и может порождать ложные штрихи. Для доказательных задач нужны сохранённый оригинал, документированные параметры и независимая экспертная проверка.
Рациональный workflow для сложного кадра
Для сложной фотографии полезна последовательность из нескольких контрольных циклов. Сначала сделайте максимально нейтральную рабочую копию и определите главный тип дефекта. Затем выберите один репрезентативный участок и выполните короткий Normal/Estimate. Не оценивайте красоту, смотрите только на геометрию краёв.
Если геометрия улучшилась, зафиксируйте ядро и через ReDraw подберите Amplification. После этого сравните один альтернативный Quality. Если Quality почти не меняет полезные детали, оставьте Estimate. Если меняет заметно, оцените гладкие зоны и выберите более устойчивый вариант.
Severe тестируйте только при наличии признаков, что Normal ограничивает длину ядра. Длинный временной множитель включайте последним. Такой порядок минимизирует вычисления и снижает риск подбирать параметры на основе случайного эффектного результата.
Итог
Unshake — специализированный автоматический деконволвер, а не универсальный редактор. Его сильная сторона состоит в попытке оценить характер blur по самому снимку и дать пользователю простые средства управлять масштабом размытия, типом ожидаемой детализации, областью анализа и силой вывода. На небольших кадрах с умеренным однородным смазом такой подход способен сделать полезные контуры заметнее, чем обычное повышение резкости.
Практическая работа требует дисциплины: использовать копию исходника, выбирать информативную и однородно размытую область, начинать с короткого x1, отделять изменение Amplification от нового расчёта ядра и проверять результат на артефакты. Главные ограничения — размер до 2048×2048, поддержка только PNG/GIF/JPEG, зависимость от старой Java-экосистемы и некоммерческая лицензия.
Для повседневного редактирования современный фоторедактор удобнее, а для глубокой ручной деконволюции существуют инструменты с более точным контролем ядра. Но если задача совпадает с архитектурой Unshake — небольшой статический снимок, однородный blur и готовность экспериментировать с областью и Quality — программа остаётся показательной реализацией классического автоматического восстановления изображения.
Диагностика по типу дефекта до запуска
Перед первым DeBlur полезно понять, действительно ли перед вами blur, который имеет смысл обращать. Не всякая нерезкость равнозначна. Низкое разрешение проявляется крупными пикселями и ступенчатыми диагоналями; JPEG-компрессия — блоками и звонкими контурами; шум — случайной зернистостью; motion blur — направленным растяжением; дефокус — мягким расширением края во все стороны. Unshake рассчитан прежде всего на последние два случая.
Если проблема — только малая исходная размерность, деконволюция не создаст недостающие отсчёты. Если доминирует шум, сначала стоит найти менее шумный оригинал, потому что сильное Amplification поднимет зерно. Если виден явный направленный след, у Unshake есть шанс оценить его. Если весь кадр просто слегка мягкий, можно сравнить результат с обычной резкостью и решить, оправдан ли более сложный процесс.
Полезный быстрый тест — найти одну контрастную точку и один протяжённый край. По точке видно форму дефокуса или дрожания, по краю — ширину перехода. Если оба элемента показывают одинаковый характер blur, сцена подходит для одной модели. Если точка размыта округло, а край ещё и тянется вправо, дефект смешанный, и нужно ожидать компромисс.
Как понять, что дальнейшие попытки уже невыгодны
Unshake провоцирует на бесконечный перебор, потому что каждый новый параметр может дать чуть иной рисунок. Чтобы не тратить время, заранее задайте критерий остановки. Если после трёх-четырёх осмысленных вариантов области, сравнения Normal/Severe и двух Quality полезная деталь остаётся нестабильной, дальнейшее увеличение времени редко меняет фундаментальный предел исходника.
Второй сигнал — артефакты растут быстрее, чем полезная информация. Если каждый шаг Amplification делает текст чуть контрастнее, но одновременно удваивает количество ложных штрихов, инструмент уже вышел за разумный диапазон. Лучше сохранить умеренную версию и доработать её локально.
Третий сигнал — критическая деталь слишком мала. Если после кадрирования и работы на предельном размере объект занимает считанные пиксели, математически достоверное восстановление невозможно. Эффектная «резкость» в таком случае опаснее честного мягкого изображения.
Контрольный чек-лист перед сохранением
- Оригинал хранится отдельно и не перезаписан.
- Рабочая копия укладывается в 2048×2048 и не пережата повторно JPEG.
- Область Select blurred соответствует целевому типу нерезкости.
- Normal или Severe выбран по геометрии смаза, а не по впечатлению.
- Quality проверен хотя бы на одном альтернативном варианте при сомнительном результате.
- Amplification подобран через ReDraw после удачного ядра.
- На 100% нет устойчивых двойных линий и регулярной ряби.
- Гладкие участки не покрылись ложной фактурой.
- Результат сохраняется отдельным файлом с понятным именем.
- Для важных изображений записаны параметры и сохранена тестовая серия.
Этот список полезнее попытки найти «идеальные настройки» в чужом примере. У Unshake нет универсального значения Amplification или Quality, потому что blur и статистика сцены меняются от кадра к кадру.
Разбор трёх характерных неудач
Случай 1: стало резче, но лицо выглядит «нарисованным»
Такой результат обычно означает, что высокочастотная составляющая переусилена. Сначала уменьшите Amplification через ReDraw. Если текстура кожи остаётся регулярной даже при умеренной силе, попробуйте Portrait вместо Estimate или Scenic. Если же артефакт имеет направленную форму, пересчитайте ядро по другой области лица и волос.
Случай 2: текст читается лучше, но у каждой буквы есть тень
Повторяющаяся тень — типичный структурный артефакт. Простое уменьшение Amplification ослабит её, но не удалит. Проверьте, не была ли область Select blurred слишком узкой и не содержала ли она только строки одинаковой ориентации. Добавьте края других направлений и выполните новый DeBlur. Для motion blur сравните Normal и Severe.
Случай 3: программа почти ничего не меняет
Проверьте не только силу, но и сам дефект. Возможно, изображение мягкое из-за низкого разрешения, а не blur. Если есть видимый смаз, слегка увеличьте Amplification и ReDraw. Если улучшения всё равно нет, попробуйте альтернативный размер blur. Если и он не помогает, не стоит компенсировать это x100: вероятно, исходник недостаточно информативен или модель не подходит.
Как сохранить естественный вид после деконволюции
После удачного Unshake результат нередко выглядит жёстче исходника. Это нормально: деконволюция возвращает высокочастотную структуру и одновременно может поднять шум. Дальнейшая обработка должна быть локальной и осторожной. Сильное глобальное шумоподавление способно снова стереть те детали, которые только что удалось вернуть.
Для портрета разумно оставить глаза, волосы и текстуру одежды почти без дополнительного сглаживания, а кожу обработать мягче по маске. Для архитектуры можно ослабить шум в небе, не затрагивая кирпич и надписи. Для документа после восстановления штрихов можно улучшить контраст уровней и лишь затем готовить OCR.
Если финальный размер намного меньше рабочего, оцените результат после ресайза перед любой дополнительной резкостью. Часто умеренный Unshake плюс качественное уменьшение уже дают достаточную чёткость. Финальный Sharpen нужен только как output-шаг, а не как попытка повторно исправить blur.
Кому Unshake действительно полезен
Программа оправдана для пользователя, который готов работать с конкретным проблемным кадром, а не обрабатывать сотни современных RAW автоматически. Она подходит для домашнего архива, старых веб-изображений допустимого размера, учебного знакомства с деконволюцией и ситуаций, где хочется сравнить автоматическую оценку ядра с обычной резкостью.
Меньше смысла в ней у фотографа с большим современным каталогом, где нужна поддержка RAW, профилей камеры, масок и GPU. Для такого workflow сам лимит 2048×2048 и зависимость от Java становятся более значимыми, чем компактность программы.
Также Unshake не является лучшим выбором, если причина blur известна и хорошо измеряется. При чётком линейном motion blur ручной инструмент с направлением и расстоянием даёт более прозрачный контроль. Сильная сторона Unshake — именно автоматическая оценка, когда пользователь не хочет или не может вручную задавать PSF.
Финальная схема принятия решения
Если фотография просто кажется слегка мягкой, сначала попробуйте обычную резкость в универсальном редакторе. Если виден реальный смаз или дефокус и важна структура, подготовьте копию для Unshake. Если blur однороден и изображение укладывается в лимит, начните с Normal, Estimate Quality, Select blurred и x1. При удачном ядре подберите Amplification через ReDraw.
Если ядро нестабильно, измените область. Если Normal недооценивает длину blur, попробуйте Severe. Если гладкие зоны превращаются в ложную фактуру, сравните Portrait или Basic. Если всё это не даёт устойчивой детали, переходите к более управляемому деконволверу или признавайте предел исходника.
Такая последовательность сохраняет главный смысл Unshake: он полезен не как универсальная кнопка «сделать чётко», а как инструмент для осмысленного эксперимента с обратным восстановлением небольших размытых изображений.
