red-error(x, y) red green blue red green blue 0 red 0 (16) 0 red 0 (16) red + - - - round blue-error(x, y) 0 blue 0 (16) 0 blue 0 (16) blue + round green-error(x, y) 0 green 0 (16) 0 green 0 (16) green red green blue 0 red 0 (16) red 0 blue 0 (16) blue 0 green 0 (16) green + round nearest img(x, y) diffuse(red-errors) diffuse(green-errors) diffuse(blue-errors)