Skip to content

Latest commit

 

History

History
50 lines (29 loc) · 5.13 KB

README.RU.md

File metadata and controls

50 lines (29 loc) · 5.13 KB
EN 『RU』

Программы для масштабирования пиксельных картинок - Pixel Art Scaling

Программы для увеличения маленьких малоцветных картинок типа иконок и игровых спрайтов.

Также полезны для улучшения сканов текстов с низким разрешением перед OCR.

В настоящий момент поддерживаются методы Scale2x (aka AdvMAME2x), Scale3x (aka AdvMAME3x), Scale2xSFX и Scale3xSFX.

ScaleNxGUI.py представляет собой общую программу с GUI, объединяющую модули графических форматов и масштабирования. Программа обеспечивает как масштабирование отдельных картинок, так и оптовое batch-масштабирование всех картинок в директории и поддиректориях.

Note

Для масштабирования одиночных файлов поддерживаются форматы PNG, PPM и PGM. Для bath-обработки поддерживается только формат PNG. Вынимание: batch-программа перезаписывает исходные PNG, если хотите сделать копию - делайте это заранее! Batch-программы в этой версии используют асинхронный мультипроцессинг, что резко уменьшает время обработки ценой загрузки всех процессоров на 100%, что делает интерфейс несколько неотзывчивым. Если вам кажется, что программа зависла - не пугайтесь, просто подождите, пока она пропихнёт все потоки со всеми вашими файлами через все процессоры разом.

Пример прогона Scale3x дважды по одной картинке

Пример прогона Scale3x дважды

Внешние зависимости

  1. PyPNG. Копия включена в дистрибутив ScaleNx.
  2. PyPNM. Копия включена в дистрибутив ScaleNx.
  3. Tkinter, multiprocessing. Входят в состав стандартного дистрибутива CPython.

Note

Программы написаны целиком на Python, и используют логичное представление картинки как списка списков списков. В то время как для человека данное представление является логичным, Python обрабатывает его медленно (впрочем, желающие могут попытаться указать мне и назвать, а что Python обрабатывает быстро). Помимо этого, программы включают переформатирование списков для ввода/вывода PNG и PNM, тоже с использованием исключительно средств Python. В результате программы не требуют больших внешних пакетов типа Pillow и numpy, не имеют конфликтов версий, и совместимы со всем, что шевелится, но работают медленно.

Литература

  1. Первоисточник Scale2x и Scale3x - описание алгоритмов автором, Andrea Mazzoleni.

  2. Описание Scale2xSFX и Scale3xSFX в архивах древнего форума. К сожалению, это единственная обнаруженная ссылка, подлинные имена обсуждающих неизвестны, поэтому надлежащим образом указать авторство невозможно.

  3. Алгоритмы масштабирования пиксельной графики - краткий обзор на Wikipedia.

  4. ScaleNx на PyPI - ядро ScaleNx, установка через pip. Чистое ядро без примеров, гуёв и т.п.

Родственное

  1. Dnyarri website - остальной товар от Жабы Огромной Умственной Силы.

  2. github Dnyarri.

  3. gitflic Dnyarri - зеркало.