Кто-нибудь может объяснить принцип работы алгоритма hq2x? - PullRequest
7 голосов
/ 24 ноября 2011

Я не знаю подробности шагов алгоритма hq2x. Хотя я загрузил исходный код с веб-сайта, я все еще не могу понять шаги из исходного кода. Может кто-нибудь помочь мне объяснить, как сделать алгоритм шаг за шагом? Спасибо!

1 Ответ

5 голосов
/ 15 декабря 2011

Он смотрит на несколько пикселей одновременно (центральный пиксель и его соседи). Использует контраст, чтобы разделить группу на светлые и темные пиксели (представьте, что это 1-битное растровое изображение). Затем он использует это для распознавания шаблона, который образуют эти пиксели (например, диагональная линия), и выводит предопределенную увеличенную версию этого шаблона, раскрашенную исходными пикселями.

например. если вы заметили, что соседние пиксели образуют эту форму:

X . .
. X .
. . X

тогда вы можете вывести версию с более высоким разрешением:

xXXx......
..xXXx....
....xXXx..
......xXXx

Области для распознавания шаблонов перекрываются для непрерывности (или другого способа думать о том, что он смотрит на большее количество пикселей для контекста, например, чтобы отличить диагональную линию от закругленного угла).

Из-за распознавания образов hq2x хорошо работает только на высококонтрастных мультипликационных изображениях. При использовании естественных изображений с большим количеством размытых краев и сглаженных линий алгоритм не может заметить закономерности и в итоге просто интерполирует изображение.

...