Правила проти пікселів проти пігментації


11

Нещодавно у мене виникла проблема з піксельним згладжуванням тексту , який створює дуже різкі кольори і змусив мене замислитись, як це потрібно зробити належним чином:

введіть тут опис зображення

Я намалював кілька випадків чорної плитки, що охоплює третини пікселів.

введіть тут опис зображення

Кольори збігаються з тими, які я бачу, однак, коли я переглядаю належним чином поставлений текст, результат не є настільки яскравим і відволікаючим:

від www.lagom.nl

Я припускаю, що має бути баланс між хорошою інтенсивністю світла та правильним кольором. Які методи використовуються для пікселевого псевдослідування, які дають такі хороші результати?


Оновлення:

Я представив білий чайник зображенню 3х ширини та мультисемплінг. Нижче я порівнюю усереднення кожні 3 пікселі з присвоєнням кожного RGB. Кольори по- , як і раніше здаються занадто яскравими в деяких випадках (особливо по порівнянні з прикладом вище , з тут ), що не то, що мій телефон захоплює їх.

введіть тут опис зображеннявведіть тут опис зображення

введіть тут опис зображеннявведіть тут опис зображення

введіть тут опис зображеннявведіть тут опис зображення Гаразд, тому моєму монітору потрібно трохи запилити


Я вважаю, що деякі екрани мають різну компоновку основних кольорів. Ви переглядали свої результати на різних типах екрана?
трихоплакс

@trichoplax ні, але я впевнений, що мої монітори є RGB. Також тут мене більше цікавить, як мають на увазі працювати методи підпіксельної антиалізируючої дії, ніж виправлення моєї проблеми.
jozxyqk

Я не мав на увазі різні основні кольори, я просто мав на увазі, що червоний, зелений і синій розташовані в різних геометричних візерунках, тому ваш алгоритм повинен знати, який шаблон використовується для того, щоб дати хороші результати.
трихоплакс

1
@trichoplax так, вибачте, я повинен був уточнити, на обох моніторах пікселі розділені на третини в порядку RGB зліва направо, як на цій фотографії .
jozxyqk

1
До певної міри курсивний текст матиме менш помітні кольорові бахроми, оскільки похилі лінії не дозволяють мати один і той же колір більше декількох послідовних пікселів вертикально.
трихоплакс

Відповіді:


3

Я не впевнений, що там відбувається. Дивлячись на відображення "міркувань" у вашому прикладі, "мінуси" виглядають як те, що ви отримуєте, коли ви робите неочищений субпіксель проти згладжування, не застосовуючи необхідне "виправити", щоб воно виглядало добре. Але тоді "дер" у тому самому слові виглядає так, що не існує підпіксельної антиздатки.

Ви можете знайти хорошу статтю про те, як добре виглядає субспіксельне антизгладжування тут https://www.grc.com/ct/ctwhat.htm, а про частину "виправити" тут https: //www.grc. com / ct / freeandclear.htm і тут https://www.grc.com/ct/cttech.htm

Що зводиться до цього: якщо ви просто обчислюєте інтенсивність R / G / B шляхом обчислення покритої площі для кожного пікселя, то отримані кольори бахроми дуже некрасиві / дратівливі. Щоб виправити це, вам слід застосувати горизонтальний розмиття / фільтр низьких частот до зображення пікселя. У результаті виходить зображення, яке менш чітке, але має набагато менш насичені кольори. Тобто щось на зразок вашого прикладу "Перевірити".


2

Які методи використовуються для пікселевого псевдослідування, які дають такі хороші результати?

Ви просто розтріскуєте букви так, ніби вони були в 3 рази ширшими.

Результати різняться у тому, як ви розповсюджуєте криві, особливо це стосується того, яку схему згладжування / вибірки використовує та чи використовує натяк на шрифт . Для отримання більшого огляду дивіться експозиції текстури на розсипку текстів за допомогою антизернистої геометрії (IIRC - це те, що використовує Chromium / PDFium) або субпіксельне відображення у Вікіпедії.

Що стосується доданого зображення, я не вірю, що це має щось спільне з відображенням пікселів. Це може бути все що завгодно: неправильна геометрія пікселів , неправильна гамма, неправильне перетворення простору кольорів, ...


Я б очікував, що проблеми з геометрією пікселя, перетворенням гами чи кольорового простору виявляться як спотворення кольорів у довільних точках зображення, а не як звичайний цикл, що спостерігається на зображенні запитання. Той факт, що він циркулює горизонтально між перебільшеним кольором антиаліазінгом та чистим відтінком сірого кольору, натякає на те, що перше застосування антиаліазу було здійснено в іншому масштабі.
трихоплакс

Я не маю повного пояснення, оскільки спотворення, здається, не вирівняне між різними рядками тексту, але, здається, проблема пов'язана з поданням пікселів вже растрованого тексту, а не векторного тексту.
трихоплакс

@trichoplax Те, що я намагаюся сказати, - це, що я сумніваюся, що існує проблема із відображенням підпіксельної пікселі Anti-Grain. Натомість я б здогадався, що вхід виправляється раніше, ніж він потрапляє в растризатор. Або пізніше, але не в самому растерізаторі.
Ecir Hana

Так, я думаю, що субпіксельна візуалізація застосовується правильно, але при застосуванні до попередньо розсіяного тексту неможливо дати хороший результат. Я не думаю, що рендер порушений, я просто думаю, що його подають неправильний текст.
трихоплакс
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.