Telegram Group & Telegram Channel
Пытался тут на досуге перемапить видео из полноценного rgb в 16 цветов (даже не спрашивайте).

Решил, что я самый умный и не буду это делать через серый цвет, а буду для каждого исходного пикселя искать наиболее близкий цвет из 16 по метрике Евклида:

l = (r1 - r2)² + (g1 - g2)² + (b1 - b2)²

Оказалось, что такой подход работает плохо и человеческое ощущение близости цветов может сильно отличаться от "компьютерного", особенно, когда нужно выбрать похожий всего из 16.

Википедия советует вводить веса для разных компонентов цвета, но это тоже плохо работает. В итоге я сдался и сделал через серый, что получилось вполне сносно.

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

Прикладываю мою js поделку. Там есть 3 пресета, на которых можно наглядно увидеть, как ошибается метрика. Также там есть рандом и "умный" рандом, который сгенерирует цвета, в которых Евклид будет не прав (почти всегда). Ну и цвета можно руками менять.

https://lll-phill-lll.github.io/colordiff/

В качестве "человеческой" оценки я использовал метрику CIEDE2000, которая вполне совпадает с моим собственным ощущением близости цветов. И которая в коде выглядит просто как случайные умножения случайных чисел.

На скрине из тула видно, что Евклид считает зеленый более близким к оранжевому, чем к кислотно зеленому. (ну надеюсь, что видно, хороший интерфейс я сделать так и не осилил).

В общем, надеюсь интересно будет потыкать на Smart Random и посравнивать свои внутренние ощущение с ощущениями Евклида)

Кстати, интересный цикл статей про цвета и связанную с ними математику: https://samgoree.github.io/2019/07/13/color_theory_2.html



group-telegram.com/misha_writes_code/211
Create:
Last Update:

Пытался тут на досуге перемапить видео из полноценного rgb в 16 цветов (даже не спрашивайте).

Решил, что я самый умный и не буду это делать через серый цвет, а буду для каждого исходного пикселя искать наиболее близкий цвет из 16 по метрике Евклида:


l = (r1 - r2)² + (g1 - g2)² + (b1 - b2)²

Оказалось, что такой подход работает плохо и человеческое ощущение близости цветов может сильно отличаться от "компьютерного", особенно, когда нужно выбрать похожий всего из 16.

Википедия советует вводить веса для разных компонентов цвета, но это тоже плохо работает. В итоге я сдался и сделал через серый, что получилось вполне сносно.

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

Прикладываю мою js поделку. Там есть 3 пресета, на которых можно наглядно увидеть, как ошибается метрика. Также там есть рандом и "умный" рандом, который сгенерирует цвета, в которых Евклид будет не прав (почти всегда). Ну и цвета можно руками менять.

https://lll-phill-lll.github.io/colordiff/

В качестве "человеческой" оценки я использовал метрику CIEDE2000, которая вполне совпадает с моим собственным ощущением близости цветов. И которая в коде выглядит просто как случайные умножения случайных чисел.

На скрине из тула видно, что Евклид считает зеленый более близким к оранжевому, чем к кислотно зеленому. (ну надеюсь, что видно, хороший интерфейс я сделать так и не осилил).

В общем, надеюсь интересно будет потыкать на Smart Random и посравнивать свои внутренние ощущение с ощущениями Евклида)

Кстати, интересный цикл статей про цвета и связанную с ними математику: https://samgoree.github.io/2019/07/13/color_theory_2.html

BY Миша пишет код




Share with your friend now:
group-telegram.com/misha_writes_code/211

View MORE
Open in Telegram


Telegram | DID YOU KNOW?

Date: |

But the Ukraine Crisis Media Center's Tsekhanovska points out that communications are often down in zones most affected by the war, making this sort of cross-referencing a luxury many cannot afford. Given the pro-privacy stance of the platform, it’s taken as a given that it’ll be used for a number of reasons, not all of them good. And Telegram has been attached to a fair few scandals related to terrorism, sexual exploitation and crime. Back in 2015, Vox described Telegram as “ISIS’ app of choice,” saying that the platform’s real use is the ability to use channels to distribute material to large groups at once. Telegram has acted to remove public channels affiliated with terrorism, but Pavel Durov reiterated that he had no business snooping on private conversations. Ukrainian forces have since put up a strong resistance to the Russian troops amid the war that has left hundreds of Ukrainian civilians, including children, dead, according to the United Nations. Ukrainian and international officials have accused Russia of targeting civilian populations with shelling and bombardments. Emerson Brooking, a disinformation expert at the Atlantic Council's Digital Forensic Research Lab, said: "Back in the Wild West period of content moderation, like 2014 or 2015, maybe they could have gotten away with it, but it stands in marked contrast with how other companies run themselves today." Stocks dropped on Friday afternoon, as gains made earlier in the day on hopes for diplomatic progress between Russia and Ukraine turned to losses. Technology stocks were hit particularly hard by higher bond yields.
from no


Telegram Миша пишет код
FROM American