1
2
3
4 package de.desy.acop.video.analysis;
5
6 import java.awt.Color;
7
8
9
10
11
12
13
14
15
16 public class LuminosityColorDecoder implements ColorDecoder {
17
18
19
20
21 @Override
22 @Deprecated
23 public double transform(int code) {
24 Color c = new Color(code, true);
25 return 0.299*c.getRed()+0.587*c.getGreen()+0.114*c.getBlue();
26 }
27
28
29
30
31
32 @Override
33 public double[] transform(int[] data) {
34 int length = data.length;
35 double[] ret = new double[length];
36 int code;
37 for (int i = 0; i < length; i++) {
38 code = data[i];
39 ret[i] = 0.299*((code >> 16) & 0xFF) + 0.587*((code >> 8) & 0xFF)
40 + 0.114*((code >> 0) & 0xFF);
41 }
42 return ret;
43 }
44 }