Revision 5441 org.gvsig.raster/branches/org.gvsig.raster.2.4/org.gvsig.raster/org.gvsig.raster.lib/org.gvsig.raster.lib.buffer/org.gvsig.raster.lib.buffer.api/src/main/java/org/gvsig/raster/lib/buffer/api/Histogram.java
Histogram.java | ||
---|---|---|
22 | 22 |
*/ |
23 | 23 |
package org.gvsig.raster.lib.buffer.api; |
24 | 24 |
|
25 |
import org.gvsig.tools.task.SimpleTaskStatus; |
|
26 | 25 |
|
27 | 26 |
|
28 | 27 |
/** |
29 | 28 |
* @author fdiaz |
30 | 29 |
* |
31 | 30 |
*/ |
32 |
public interface Histogram { |
|
31 |
public interface Histogram extends Iterable<HistogramBand> {
|
|
33 | 32 |
|
34 | 33 |
/** |
35 | 34 |
* Obtiene el n?mero de bandas del histograma |
36 | 35 |
* @return entero que representa el n?mero de bandas |
37 | 36 |
*/ |
38 |
public int getNumBands();
|
|
37 |
public int size();
|
|
39 | 38 |
|
40 | 39 |
/** |
41 |
* Obtiene la longitud (n?mero de valores) de una banda determinada |
|
42 |
* @param band Banda o obtener la longitud |
|
43 |
* @return entero con la longitud de la banda |
|
44 |
* rangos de valores y DataclassList. |
|
40 |
* @param i |
|
41 |
* @return |
|
45 | 42 |
*/ |
46 |
public int getBandLenght(int band); |
|
43 |
public HistogramBand get(int band); |
|
44 |
// |
|
45 |
// /** |
|
46 |
// * Realiza la uni?n entre el histograma actual y el pasado |
|
47 |
// * por par?metro. |
|
48 |
// * @param hist |
|
49 |
// * @return true if the union has been possible |
|
50 |
// */ |
|
51 |
// public boolean union(Histogram hist); |
|
47 | 52 |
|
48 | 53 |
/** |
49 |
* Obtiene el tipo de datos del histograma original |
|
50 |
* |
|
51 |
* @return el tipo de datos del histograma original |
|
52 |
*/ |
|
53 |
public int getDataType(); |
|
54 |
|
|
55 |
/** |
|
56 |
* Obtiene un valor del histograma segun la posicion dentro de las clases |
|
57 |
* @param band N?mero de banda del valor a recuperar |
|
58 |
* @param pos Pixel o valor de la clase del valor a recuperar |
|
59 |
* |
|
60 |
* @return valor |
|
61 |
*/ |
|
62 |
public double getHistogramValueByPos(int band, int pos); |
|
63 |
|
|
64 |
/** |
|
65 |
* Obtiene un valor del histograma |
|
66 |
* @param band N?mero de banda del valor a recuperar |
|
67 |
* @param px Pixel o valor de la clase del valor a recuperar |
|
68 |
* @return valor |
|
69 |
*/ |
|
70 |
public double getHistogramValue(int band, double px); |
|
71 |
|
|
72 |
/** |
|
73 |
* Realiza la uni?n entre el histograma actual y el pasado |
|
74 |
* por par?metro. |
|
75 |
* @param hist |
|
76 |
* @return true if the union has been possible |
|
77 |
*/ |
|
78 |
public boolean union(Histogram hist); |
|
79 |
|
|
80 |
/** |
|
81 | 54 |
* Obtiene la tabla de valores |
82 | 55 |
* |
83 | 56 |
* @return la tabla de valores |
... | ... | |
92 | 65 |
*/ |
93 | 66 |
public long[][] getNegativeTable(); |
94 | 67 |
|
95 |
/** |
|
96 |
* Devuelve el minimo valor del histograma |
|
97 |
* |
|
98 |
* @return el minimo valor del histograma |
|
99 |
*/ |
|
100 |
public double getMinimum(); |
|
68 |
// /** |
|
69 |
// * Devuelve el minimo valor del histograma |
|
70 |
// * |
|
71 |
// * @return el minimo valor del histograma |
|
72 |
// */ |
|
73 |
// public double getMinimum(); |
|
74 |
// |
|
75 |
// /** |
|
76 |
// * Devuelve el maximo valor del histograma |
|
77 |
// * |
|
78 |
// * @return el maximo valor del histograma |
|
79 |
// */ |
|
80 |
// public double getMaximum(); |
|
101 | 81 |
|
102 | 82 |
/** |
103 |
* Devuelve el maximo valor del histograma |
|
104 |
* |
|
105 |
* @return el maximo valor del histograma |
|
106 |
*/ |
|
107 |
public double getMaximum(); |
|
108 |
|
|
109 |
/** |
|
110 | 83 |
* Obtiene el n?mero de valores o clases del histograma |
111 | 84 |
* @return entero que representa el n?mero de valores o clases del histograma |
112 | 85 |
*/ |
... | ... | |
119 | 92 |
*/ |
120 | 93 |
public boolean isInRangeRGB(); |
121 | 94 |
|
122 |
/** |
|
123 |
* Calculo de estad?sticas a partir de un histograma. El resultado de la funci?n es un array |
|
124 |
* bidimensional donde el primer ?ndice inndica la estadistica y el segundo el n?mero de banda. |
|
125 |
* |
|
126 |
* <UL> |
|
127 |
* <LI>m?nimo</LI> |
|
128 |
* <LI>m?ximo</LI> |
|
129 |
* <LI>media</LI> |
|
130 |
* <LI>mediana</LI> |
|
131 |
* <LI>N?mero de pixels</LI> |
|
132 |
* </UL> |
|
133 |
* @param histogram |
|
134 |
* @param beginPos Posici?n de inicio del histograma para contabilizar estadisticas |
|
135 |
* @param endPos Posici?n de fin del histograma para contabilizar estadisticas |
|
136 |
* @param bands bandas solicitadas. Cada elemento del vector representa una banda. Si est? a true se calcula la |
|
137 |
* estadistica para esa banda y si est? a false no se calcular?. |
|
138 |
* |
|
139 |
* @return las estad?sticas a partir del histograma. |
|
140 |
*/ |
|
141 |
public double[][] getBasicStats(double beginPos, double endPos, boolean[] bands); |
|
95 |
// /** |
|
96 |
// * Calcula las estad?sticas. |
|
97 |
// * |
|
98 |
// * @param status |
|
99 |
// */ |
|
100 |
// public void calculate(SimpleTaskStatus status); |
|
101 |
// |
|
102 |
// /** |
|
103 |
// * @return true if the histogram has been calculated |
|
104 |
// */ |
|
105 |
// public boolean isCalculated(); |
|
142 | 106 |
|
143 |
/** |
|
144 |
* Calculo de estad?sticas a partir de un histograma. El resultado de la funci?n es un array |
|
145 |
* bidimensional donde el primer ?ndice inndica la estadistica y el segundo el n?mero de banda. |
|
146 |
* |
|
147 |
* <UL> |
|
148 |
* <LI>m?nimo</LI> |
|
149 |
* <LI>m?ximo</LI> |
|
150 |
* <LI>media</LI> |
|
151 |
* <LI>mediana</LI> |
|
152 |
* <LI>N?mero de pixels</LI> |
|
153 |
* </UL> |
|
154 |
* @param histogram |
|
155 |
* @param bands bandas solicitadas. Cada elemento del vector representa una banda. Si est? a true se calcula la |
|
156 |
* estadistica para esa banda y si est? a false no se calcular?. |
|
157 |
* |
|
158 |
* @return las estad?sticas a partir del histograma. |
|
159 |
*/ |
|
160 |
public double[][] getBasicStats(boolean[] bands); |
|
107 |
// /** |
|
108 |
// * Devuelve los valores m?nimos de todas las bandas |
|
109 |
// * |
|
110 |
// * @return los valores m?nimos de todas las bandas |
|
111 |
// */ |
|
112 |
// public double[] getMin(); |
|
113 |
// |
|
114 |
// /** |
|
115 |
// * Devuelve los valores m?nimos de todas las bandas |
|
116 |
// * |
|
117 |
// * @return los valores m?nimos de todas las bandas |
|
118 |
// */ |
|
119 |
// public double[] getMax(); |
|
161 | 120 |
|
162 |
/** |
|
163 |
* Calcula las estad?sticas. |
|
164 |
* |
|
165 |
* @param status |
|
166 |
*/ |
|
167 |
public void calculate(SimpleTaskStatus status); |
|
168 |
|
|
169 |
/** |
|
170 |
* @return true if the histogram has been calculated |
|
171 |
*/ |
|
172 |
public boolean isCalculated(); |
|
173 |
|
|
174 |
/** |
|
175 |
* Devuelve los valores m?nimos de todas las bandas |
|
176 |
* |
|
177 |
* @return los valores m?nimos de todas las bandas |
|
178 |
*/ |
|
179 |
public double[] getMin(); |
|
180 |
|
|
181 |
/** |
|
182 |
* Devuelve los valores m?nimos de todas las bandas |
|
183 |
* |
|
184 |
* @return los valores m?nimos de todas las bandas |
|
185 |
*/ |
|
186 |
public double[] getMax(); |
|
187 |
|
|
188 |
/** |
|
189 |
* Devuelve el n?mero de valores de un intervalo |
|
190 |
* |
|
191 |
* @param band |
|
192 |
* @param interval |
|
193 |
* @return el n?mero de valores del intervalo |
|
194 |
*/ |
|
195 |
public int getValueCount(int band, int interval); |
|
196 |
|
|
197 |
/** |
|
198 |
* Devuelve el valor m?nimo de un intervalo |
|
199 |
* |
|
200 |
* @param band |
|
201 |
* @param interval |
|
202 |
* @return el valor m?nimo del intervalo |
|
203 |
*/ |
|
204 |
public int getIntervalMin(int band, int interval); |
|
205 |
|
|
206 |
/** |
|
207 |
* Devuelve el valor m?ximo de un intervalo |
|
208 |
* |
|
209 |
* @param band |
|
210 |
* @param interval |
|
211 |
* @return el valor m?ximo del intervalo |
|
212 |
*/ |
|
213 |
public int getIntervalMax(int band, int interval); |
|
214 |
|
|
215 |
|
|
216 |
|
|
217 | 121 |
} |
Also available in: Unified diff