xor и инверсия цвета? - PullRequest
       1

xor и инверсия цвета?

0 голосов
/ 05 апреля 2011

Что такое алгоритм инверсии цветов?Как мы можем это реализовать?

Например

Black->White
Blue->Yellow

1 Ответ

12 голосов
/ 05 апреля 2011

Вы делаете это:

RInv = 255 - R
GInv = 255 - G
BInv = 255 - B

, что можно сделать с помощью XOR следующим образом:

RInv = R xor 255
GInv = G xor 255
BInv = B xor 255

xor работает, потому что мы хотим, чтобы сумма R и RInv была равна 255:

RInv = 255 - R
=> RInv  + R = 255

и, поскольку xor на двоичных числах является сложением над полем Галуа mod 2, мы получаем:

C = A xor B
=> C xor B = A xor B xor B = A
RInv = 255 xor R
RInv xor R = 255
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...