Изменения доступны в ревизии r22 и выше.
Сохранение PNG в dlib
Изменения доступны в ревизии r22 и выше.
Иллюстрация FFT-свертки: быстрое синтетическое боке (оптическое размытие):
Изменения доступны в ревизии r21 и выше. В ближайшем будущем ожидается первый релиз проекта.
Linear
Самый простой и, следовательно, самый быстрый способ изменить размеры изображения. Известен также как интерполяция методом ближайшего соседа (Nearest Neighbor). Для промежуточных пикселей выбирается ближайшее известное значение.
Bilinear
Для получения промежуточного значения производится линейная интерполяция между четырьмя ближайшими пикселями. Это позволяет несколько сгладить переходы. Билинейный фильтр – неплохой компромисс между скоростью и качеством результата.
Bicubic
Промежуточные значения вычисляются путем свертки ядра 4×4 специальной бикубической функцией. Достаточно медленный алгоритм, но зато дает наименее пикселизированный результат.
Lanczos
У бикубической интерполяции есть недостаток – изображение получается несколько размытым. Чтобы сохранить четкость, можно воспользоваться фильтром Ланцоша. Он немного увеличивает пикселизацию, но создает контрастные области вдоль контуров для повышения четкости. В моей реализации я использовал ядро 7х7. Очень медленно, зато качественно.
Существуют и другие алгоритмы – постепенно они тоже будут добавлены в библиотеку.
Изменения доступны в dlib ревизии r5 и выше.