2011-04-05 107 views
0

什么是颜色算法的反演?我们如何实现这一点?xor和颜色反转?

例如

Black->White 
Blue->Yellow 
+0

哪个色彩空间? RGB? – biziclop 2011-04-05 13:54:08

+0

是的,RGB空间 – 2011-04-05 13:56:44

回答

12

你这样做:

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是除了在有限域模2,我们得到:

C = A xor B 
=> C xor B = A xor B xor B = A 
RInv = 255 xor R 
RInv xor R = 255 
+0

虽然这两者是相同的,但是传统上使用xor是因为它在较老的CPU上速度更快。 – biziclop 2011-04-05 13:56:45