From cc290c0bdb263d843824f3498542c4de1be40c59 Mon Sep 17 00:00:00 2001 From: Felix Hanau Date: Tue, 18 Jun 2019 18:04:26 +0100 Subject: [PATCH] Fixes for grey scale reduction (#171) --- src/reduction/bit_depth.rs | 32 ++++++++++++++++++-------------- 1 file changed, 18 insertions(+), 14 deletions(-) diff --git a/src/reduction/bit_depth.rs b/src/reduction/bit_depth.rs index 262357b0..6f04ec86 100644 --- a/src/reduction/bit_depth.rs +++ b/src/reduction/bit_depth.rs @@ -4,24 +4,28 @@ use crate::png::PngImage; use bit_vec::BitVec; const ONE_BIT_PERMUTATIONS: [u8; 2] = [0b0000_0000, 0b1111_1111]; -const TWO_BIT_PERMUTATIONS: [u8; 5] = [ +const TWO_BIT_PERMUTATIONS: [u8; 4] = [ 0b0000_0000, - 0b0000_1111, - 0b0011_1100, - 0b1111_0000, + 0b0101_0101, + 0b1010_1010, 0b1111_1111, ]; -const FOUR_BIT_PERMUTATIONS: [u8; 11] = [ +const FOUR_BIT_PERMUTATIONS: [u8; 16] = [ 0b0000_0000, - 0b0000_0011, - 0b0000_1100, - 0b0011_0000, - 0b1100_0000, - 0b0000_1111, - 0b0011_1100, - 0b1111_0000, - 0b0011_1111, - 0b1111_1100, + 0b0001_0001, + 0b0010_0010, + 0b0011_0011, + 0b0100_0100, + 0b0101_0101, + 0b0110_0110, + 0b0111_0111, + 0b1000_1000, + 0b1001_1001, + 0b1010_1010, + 0b1011_1011, + 0b1100_1100, + 0b1101_1101, + 0b1110_1110, 0b1111_1111, ];