Revision 21772

View differences:

trunk/extensions/extRemoteSensing/src-test/org/gvsig/remotesensing/processtest/TClassificationProcessTest.java
51 51
import org.gvsig.raster.buffer.RasterBufferInvalidException;
52 52
import org.gvsig.raster.dataset.IBuffer;
53 53
import org.gvsig.raster.grid.Grid;
54
import org.gvsig.raster.grid.GridException;
55 54
import org.gvsig.remotesensing.classification.ClassificationMaximumLikelihoodProcess;
56 55
import org.gvsig.remotesensing.classification.ClassificationMinimumDistanceProcess;
56
import org.gvsig.remotesensing.classification.ClassificationParallelepipedProcess;
57 57

  
58 58
import com.iver.cit.gvsig.exceptions.layers.LoadLayerException;
59 59
import com.iver.cit.gvsig.fmap.core.GeneralPathX;
......
114 114
		// class1-- Roi con los pixeles 1 y 2 de la primera fila de la imagen
115 115
		path.moveTo(dataGrid.getGridExtent().getULX(),dataGrid.getGridExtent().getULY());
116 116
		path.lineTo(dataGrid.getGridExtent().getULX()+(2*dataGrid.getCellSize())-0.3,dataGrid.getGridExtent().getULY());
117
		path.lineTo(dataGrid.getGridExtent().getULX()+(2*dataGrid.getCellSize())-0.3,dataGrid.getGridExtent().getULY()-dataGrid.getCellSize()+0.3);
118
		path.lineTo(dataGrid.getGridExtent().getULX(),dataGrid.getGridExtent().getULY()-dataGrid.getCellSize()+0.3);
117
		path.lineTo(dataGrid.getGridExtent().getULX()+(2*dataGrid.getCellSize())-0.3,dataGrid.getGridExtent().getULY()-2*(dataGrid.getCellSize())+0.3);
118
		path.lineTo(dataGrid.getGridExtent().getULX(),dataGrid.getGridExtent().getULY()-2*(dataGrid.getCellSize())+0.3);
119 119
		path.closePath();
120 120
		geometry=ShapeFactory.createPolygon2D(path);
121 121
		class1.addGeometry(geometry);
122 122
		
123 123
		
124 124
		//class2-- Roi con los pixeles 3 y 4 de la ultima fila
125
		path2.moveTo(dataGrid.getGridExtent().getLRX(),dataGrid.getGridExtent().getLRY());
126
		path2.lineTo(dataGrid.getGridExtent().getLRX(),dataGrid.getGridExtent().getLRY()+dataGrid.getCellSize()-0.1);
127
		path2.lineTo(dataGrid.getGridExtent().getLRX()-(2*dataGrid.getCellSize())+0.1,dataGrid.getGridExtent().getLRY()+dataGrid.getCellSize()-0.1);
128
		path2.lineTo(dataGrid.getGridExtent().getLRX()-(2*dataGrid.getCellSize())+0.1,dataGrid.getGridExtent().getLRY());
129
	
125
		path2.moveTo(dataGrid.getGridExtent().getLLX(),dataGrid.getGridExtent().getLLY());
126
		path2.lineTo(dataGrid.getGridExtent().getLLX()+(2*dataGrid.getCellSize())-0.3,dataGrid.getGridExtent().getLLY());
127
		path2.lineTo(dataGrid.getGridExtent().getLLX()+(2*dataGrid.getCellSize())-0.3,dataGrid.getGridExtent().getLLY()+2*(dataGrid.getCellSize())-0.3);
128
		path2.lineTo(dataGrid.getGridExtent().getLLX(),dataGrid.getGridExtent().getLLY()+2*(dataGrid.getCellSize())-0.3);
129
		
130 130
		geometry2=ShapeFactory.createPolygon2D(path2);
131 131
		class2.addGeometry(geometry2);
132 132
		
......
146 146
		assertEquals(result.getBandCount(),1);
147 147
		
148 148
		//Comparaci?n de valores
149
		assertEquals(result.getElemByte(0, 0,0),1);
149
		assertEquals(result.getElemByte(0, 0,0),0);
150 150
		assertEquals(result.getElemByte(0, 1,0),0);
151 151
		assertEquals(result.getElemByte(0, 2,0),0);
152 152
		assertEquals(result.getElemByte(0, 3,0),0);	
153 153
		
154 154
		assertEquals(result.getElemByte(1, 0,0),1);
155
		assertEquals(result.getElemByte(1, 1,0),1);
156
		assertEquals(result.getElemByte(1, 2,0),1);
155
		assertEquals(result.getElemByte(1, 1,0),0);
156
		assertEquals(result.getElemByte(1, 2,0),0);
157 157
		assertEquals(result.getElemByte(1, 3,0),0);	
158 158
		
159 159
		assertEquals(result.getElemByte(2, 0,0),1);
......
162 162
		assertEquals(result.getElemByte(2, 3,0),0);	
163 163
		
164 164
		assertEquals(result.getElemByte(3, 0,0),0);
165
		assertEquals(result.getElemByte(3, 1,0),1);
165
		assertEquals(result.getElemByte(3, 1,0),0);
166 166
		assertEquals(result.getElemByte(3, 2,0),1);
167
		assertEquals(result.getElemByte(3, 3,0),1);	
167
		assertEquals(result.getElemByte(3, 3,0),0);	
168 168
		
169 169
		
170
//		 Clasificacion por el m?todo de m?nima distancia
170
//		 Clasificacion por el m?todo de m?xima probabilidad distancia
171 171
		ClassificationMaximumLikelihoodProcess proceso2 = new ClassificationMaximumLikelihoodProcess();
172 172
		proceso2.addParam("layer",lyr);
173 173
		proceso2.addParam("bandList",new int[]{0,1,2});
174 174
		proceso2.addParam("rois",listRois);
175 175
		proceso2.run();
176 176
		
177
		result= (IBuffer) proceso2.getResult();
178
		System.out.print("Proceso Completado..");
177

  
178
		IBuffer result2= (IBuffer) proceso2.getResult();
179 179
		
180
		assertEquals(result2.getBandCount(),1);
181
		
182
		//Comparaci?n de valores
183
		assertEquals(result2.getElemByte(0, 0,0),0);
184
		assertEquals(result2.getElemByte(0, 1,0),0);
185
		assertEquals(result2.getElemByte(0, 2,0),1);
186
		assertEquals(result2.getElemByte(0, 3,0),1);	
187
		
188
		assertEquals(result2.getElemByte(1, 0,0),0);
189
		assertEquals(result2.getElemByte(1, 1,0),0);
190
		assertEquals(result2.getElemByte(1, 2,0),1);
191
		assertEquals(result2.getElemByte(1, 3,0),1);	
192
		
193
		assertEquals(result2.getElemByte(2, 0,0),1);
194
		assertEquals(result2.getElemByte(2, 1,0),1);
195
		assertEquals(result2.getElemByte(2, 2,0),1);
196
		assertEquals(result2.getElemByte(2, 3,0),1);	
197
		
198
		assertEquals(result2.getElemByte(3, 0,0),1);
199
		assertEquals(result2.getElemByte(3, 1,0),1);
200
		assertEquals(result2.getElemByte(3, 2,0),1);
201
		assertEquals(result2.getElemByte(3, 3,0),1);
202
		
203
		
204
//		 Clasificacion por el m?todo de m?xima probabilidad distancia
205
		ClassificationParallelepipedProcess proceso3 = new ClassificationParallelepipedProcess();
206
		proceso3.addParam("layer",lyr);
207
		proceso3.addParam("bandList",new int[]{0,1,2});
208
		proceso3.addParam("rois",listRois);
209
		proceso3.addParam("dev", new Double(3));
210
		proceso3.run();
211
		
212

  
213
		IBuffer result3= (IBuffer) proceso3.getResult();
214
		
215
		assertEquals(result3.getBandCount(),1);
216
		
217
		//Comparaci?n de valores
218
		assertEquals(result3.getElemByte(0, 0,0),0);
219
		assertEquals(result3.getElemByte(0, 1,0),0);
220
		assertEquals(result3.getElemByte(0, 2,0),0);
221
		assertEquals(result3.getElemByte(0, 3,0),2);	
222
		
223
		assertEquals(result3.getElemByte(1, 0,0),0);
224
		assertEquals(result3.getElemByte(1, 1,0),0);
225
		assertEquals(result3.getElemByte(1, 2,0),0);
226
		assertEquals(result3.getElemByte(1, 3,0),2);	
227
		
228
		assertEquals(result3.getElemByte(2, 0,0),1);
229
		assertEquals(result3.getElemByte(2, 1,0),1);
230
		assertEquals(result3.getElemByte(2, 2,0),0);
231
		assertEquals(result3.getElemByte(2, 3,0),0);	
232
		
233
		assertEquals(result3.getElemByte(3, 0,0),0);
234
		assertEquals(result3.getElemByte(3, 1,0),0);
235
		assertEquals(result3.getElemByte(3, 2,0),0);
236
		assertEquals(result3.getElemByte(3, 3,0),0);	
237
		
180 238
	}
181 239
	
182 240
}

Also available in: Unified diff