@@ -62,8 +62,6 @@ public void overExpressesMaskExpression() {
6262
6363 @ Test
6464 public void computeShapeScore () {
65- ImageRegionDefinition excludedRegions = ImageTestUtils .getExcludedRegions ();
66-
6765 class TestData {
6866 final String emCDM ;
6967 final String lmCDM ;
@@ -88,6 +86,13 @@ class TestData {
8886 21608L ,
8987 false
9088 ),
89+ new TestData (
90+ "src/test/resources/colormipsearch/api/cdsearch/ems/12191_JRC2018U.tif" ,
91+ "src/test/resources/colormipsearch/api/cdsearch/lms/VT016795_115C08_AE_01-20200221_61_I2-m-CH1_01.tif" ,
92+ "src/test/resources/colormipsearch/api/cdsearch/grad/VT016795_115C08_AE_01-20200221_61_I2-m-CH1_01.png" ,
93+ 46447L ,
94+ true
95+ ),
9196 new TestData (
9297 "src/test/resources/colormipsearch/api/cdsearch/ems/12191_JRC2018U_FL.tif" ,
9398 "src/test/resources/colormipsearch/api/cdsearch/lms/VT033614_127B01_AE_01-20171124_64_H6-f-CH2_01.tif" ,
@@ -102,36 +107,36 @@ class TestData {
102107 110050L ,
103108 true
104109 ),
105- new TestData (
106- "src/test/resources/colormipsearch/api/cdsearch/ems/12191_JRC2018U.tif" ,
107- "src/test/resources/colormipsearch/api/cdsearch/lms/VT016795_115C08_AE_01-20200221_61_I2-m-CH1_01.tif" ,
108- "src/test/resources/colormipsearch/api/cdsearch/grad/VT016795_115C08_AE_01-20200221_61_I2-m-CH1_01.png" ,
109- 46447L ,
110- true
111- ),
112110 };
111+ ImageRegionDefinition excludedRegions = ImageTestUtils .getExcludedRegions ();
112+ ColorDepthSearchAlgorithmProvider <ShapeMatchScore > shapeScoreAlgorithmProvider = ColorDepthSearchAlgorithmProviderFactory .createShapeMatchCDSAlgorithmProvider (
113+ true ,
114+ null ,
115+ excludedRegions
116+ );
117+ int testQueryThreshold = 20 ;
118+ String prevEM = null ;
119+ ColorDepthSearchAlgorithm <ShapeMatchScore > shape2DScoreAlgorithm = null ;
113120 for (TestData td : testData ) {
114121 long start = System .currentTimeMillis ();
115- ImagePlus emQueryImage = new Opener ().openTiff (td .emCDM , 1 );
122+ if (!td .emCDM .equals (prevEM )) {
123+ LOG .info ("Create new score algorithm for new mask: {}" , td .emCDM );
124+ ImagePlus emQueryImage = new Opener ().openTiff (td .emCDM , 1 );
125+ ImageArray <?> queryImageArray = ImageArrayUtils .fromImagePlus (emQueryImage );
126+ shape2DScoreAlgorithm = shapeScoreAlgorithmProvider .createColorDepthQuerySearchAlgorithmWithDefaultParams (
127+ queryImageArray ,
128+ testQueryThreshold ,
129+ 0
130+ );
131+ prevEM = td .emCDM ;
132+ }
116133 ImagePlus lmTargetImage = new Opener ().openTiff (td .lmCDM , 1 );
117134 ImagePlus lmTargetGradImage = new Opener ().openImage (td .lmGrad );
118135
119- ImageArray <?> queryImageArray = ImageArrayUtils .fromImagePlus (emQueryImage );
120136 ImageArray <?> targetImageArray = ImageArrayUtils .fromImagePlus (lmTargetImage );
121137 ImageArray <?> targetGradImageArray = ImageArrayUtils .fromImagePlus (lmTargetGradImage );
138+ ImageTransformation clearIgnoredRegions = ImageTransformation .clearRegion (excludedRegions .getRegion (targetImageArray ));
122139
123- ColorDepthSearchAlgorithmProvider <ShapeMatchScore > shapeScoreAlgorithmProvider = ColorDepthSearchAlgorithmProviderFactory .createShapeMatchCDSAlgorithmProvider (
124- true ,
125- null ,
126- excludedRegions
127- );
128- int testQueryThreshold = 20 ;
129- ColorDepthSearchAlgorithm <ShapeMatchScore > shape2DScoreAlgorithm = shapeScoreAlgorithmProvider .createColorDepthQuerySearchAlgorithmWithDefaultParams (
130- queryImageArray ,
131- testQueryThreshold ,
132- 0
133- );
134- ImageTransformation clearIgnoredRegions = ImageTransformation .clearRegion (excludedRegions .getRegion (queryImageArray ));
135140 long endInit = System .currentTimeMillis ();
136141 LOG .info ("Initialized shape score between {} and {} in {} secs - mem used {}M" ,
137142 td .emCDM ,
@@ -150,7 +155,6 @@ class TestData {
150155 targetImageArray ,
151156 variantSuppliers
152157 );
153-
154158 long end = System .currentTimeMillis ();
155159 assertNotNull (td .emCDM + " vs " + td .lmCDM , shapeMatchScore );
156160 assertTrue (td .emCDM + " vs " + td .lmCDM , shapeMatchScore .getGradientAreaGap () != -1 );
0 commit comments