Loading src/main/java/MatchSimulatedPattern.java +29 −9 Original line number Original line Diff line number Diff line Loading @@ -3670,6 +3670,11 @@ public class MatchSimulatedPattern { } } } else if (!cleanup.get() || (addedCells.get()>0)) { // create list of the defined cells on the border } else if (!cleanup.get() || (addedCells.get()>0)) { // create list of the defined cells on the border cleanup.set(true); cleanup.set(true); // debug if ((global_debug_level>0) && (initialWave!=null)) { System.out.println("clenaup during first layer"); if (!cleanup.get()) System.out.println("Added "+addedCells.get()+" during border cleanup on first layer"); } if ((debugLevel>1) && !cleanup.get()) System.out.println("Added "+addedCells.get()+" during border cleanup"); if ((debugLevel>1) && !cleanup.get()) System.out.println("Added "+addedCells.get()+" during border cleanup"); addedCells.set(0); addedCells.set(0); umax=0; umax=0; Loading @@ -3696,12 +3701,18 @@ public class MatchSimulatedPattern { } } } } if (global_debug_level>1) System.out.println("***** Starting cleanup, wave length="+waveFrontList.size()); if (global_debug_level>1) System.out.println("***** Starting cleanup, wave length="+waveFrontList.size()); //???? } } // end of layer - it is a hack below, marking initial wave to recalculate it from neighbors // end of layer - it is a hack below, marking initial wave to recalculate it from neighbors if (initialWave!=null){ // just after the first layer (usually one cell) - delete it and add next time - otherwise first one needs large correction if (initialWave!=null){ // just after the first layer (usually one cell) - delete it and add next time - otherwise first one needs large correction if (global_debug_level>0) if (global_debug_level>0) { System.out.println("Removing "+initialWave.size()+" initial wave cells, waveFrontList.size()="+waveFrontList.size()); System.out.println("Removing "+initialWave.size()+" initial wave cells, waveFrontList.size()="+waveFrontList.size()); for (int listIndex=0;listIndex<waveFrontList.size();listIndex++) { int [] dbg_uvdir= getWaveList (waveFrontList,listIndex); System.out.println("waveFrontList["+listIndex+"]: "+dbg_uvdir[0]+"/"+dbg_uvdir[1]+" dir="+dbg_uvdir[2]); } } while (initialWave.size()>0){ while (initialWave.size()>0){ uvdir= getWaveList (initialWave,0); uvdir= getWaveList (initialWave,0); // clearPatternGridCell(PATTERN_GRID, uvdir); // clearPatternGridCell(PATTERN_GRID, uvdir); Loading Loading @@ -5629,7 +5640,7 @@ public class MatchSimulatedPattern { int patternCells=0; int patternCells=0; // save initial distortionParameters.correlationMinInitialContrast // save initial distortionParameters.correlationMinInitialContrast double savedCorrelationMinInitialContrast=distortionParameters.correlationMinInitialContrast; double savedCorrelationMinInitialContrast=distortionParameters.correlationMinInitialContrast; int reTries=6; // 10; // bail out after these attempts int reTries= 10; // bail out after these attempts // int [] startScanIndex={0}; // scan for pattern will update this index to continue next time (<0 - nothing left) // int [] startScanIndex={0}; // scan for pattern will update this index to continue next time (<0 - nothing left) boolean foundGoodCluster=false; boolean foundGoodCluster=false; Loading @@ -5646,7 +5657,8 @@ public class MatchSimulatedPattern { int numTries=1<<(tryHor+tryVert); int numTries=1<<(tryHor+tryVert); boolean [] triedIndices=new boolean[numTries+1]; // last set - all used boolean [] triedIndices=new boolean[numTries+1]; // last set - all used for (int i=0;i<triedIndices.length;i++) triedIndices[i]=(i<3); // mark first 3 as if they are already used for (int i=0;i<triedIndices.length;i++) triedIndices[i]=(i<3); // mark first 3 as if they are already used boolean fromVeryBeginning=true; // ========= Removing adjustment of contrast ============== // boolean fromVeryBeginning=true; Loading @@ -5666,15 +5678,18 @@ public class MatchSimulatedPattern { updateStatus, updateStatus, debug_level, debug_level, global_debug_level); // debug level global_debug_level); // debug level if (global_debug_level>1) System.out.println("Pattern correlation done at "+ IJ.d2s(0.000000001*(System.nanoTime()-startTime),3)); if (global_debug_level>0) System.out.println("Pattern correlation done at "+ IJ.d2s(0.000000001*(System.nanoTime()-startTime),3)+ " found "+patternCells+" cells, reTries left: "+reTries); if (patternCells>0) { if (patternCells>0) { foundGoodCluster=true; foundGoodCluster=true; break; // new distortions() code - returns non-zero only if passed other tests break; // new distortions() code - returns non-zero only if passed other tests } } if (fromVeryBeginning){ if (global_debug_level>1) System.out.println("--- Nothing found at all ---"); // ========= Removing adjustment of contrast ============== break; // or maybe - still try to adjust threshold? // if (fromVeryBeginning){ } // if (global_debug_level>0) System.out.println("--- Nothing found at all --- at "+ IJ.d2s(0.000000001*(System.nanoTime()-startTime),3)); // break; // or maybe - still try to adjust threshold? // } /* /* double averageGridPeriod=Double.NaN; double averageGridPeriod=Double.NaN; if (this.PATTERN_GRID!=null) averageGridPeriod=averageGridPeriod(this.PATTERN_GRID); if (this.PATTERN_GRID!=null) averageGridPeriod=averageGridPeriod(this.PATTERN_GRID); Loading Loading @@ -5759,6 +5774,10 @@ public class MatchSimulatedPattern { "), continuing scanning from index "+startScanIndex); "), continuing scanning from index "+startScanIndex); } } } else { } else { if (global_debug_level>0) System.out.println("--- Tried all - nothing found --- at "+ IJ.d2s(0.000000001*(System.nanoTime()-startTime),3)); break; // ========= Removing adjustment of contrast ============== /* // startScanIndex[0]=0; // startScanIndex[0]=0; System.out.println("Last pattern cluster was too small, adjusting the minimal contrast from "+ System.out.println("Last pattern cluster was too small, adjusting the minimal contrast from "+ IJ.d2s(distortionParameters.correlationMinInitialContrast,3)+ IJ.d2s(distortionParameters.correlationMinInitialContrast,3)+ Loading @@ -5766,6 +5785,7 @@ public class MatchSimulatedPattern { distortionParameters.correlationMinInitialContrast*=distortionParameters.scaleMinimalInitialContrast; distortionParameters.correlationMinInitialContrast*=distortionParameters.scaleMinimalInitialContrast; for (int i=0;i<triedIndices.length;i++) triedIndices[i]=(i<3); // mark first 3 as if they are already used for (int i=0;i<triedIndices.length;i++) triedIndices[i]=(i<3); // mark first 3 as if they are already used fromVeryBeginning=true; fromVeryBeginning=true; */ } } } } Loading Loading
src/main/java/MatchSimulatedPattern.java +29 −9 Original line number Original line Diff line number Diff line Loading @@ -3670,6 +3670,11 @@ public class MatchSimulatedPattern { } } } else if (!cleanup.get() || (addedCells.get()>0)) { // create list of the defined cells on the border } else if (!cleanup.get() || (addedCells.get()>0)) { // create list of the defined cells on the border cleanup.set(true); cleanup.set(true); // debug if ((global_debug_level>0) && (initialWave!=null)) { System.out.println("clenaup during first layer"); if (!cleanup.get()) System.out.println("Added "+addedCells.get()+" during border cleanup on first layer"); } if ((debugLevel>1) && !cleanup.get()) System.out.println("Added "+addedCells.get()+" during border cleanup"); if ((debugLevel>1) && !cleanup.get()) System.out.println("Added "+addedCells.get()+" during border cleanup"); addedCells.set(0); addedCells.set(0); umax=0; umax=0; Loading @@ -3696,12 +3701,18 @@ public class MatchSimulatedPattern { } } } } if (global_debug_level>1) System.out.println("***** Starting cleanup, wave length="+waveFrontList.size()); if (global_debug_level>1) System.out.println("***** Starting cleanup, wave length="+waveFrontList.size()); //???? } } // end of layer - it is a hack below, marking initial wave to recalculate it from neighbors // end of layer - it is a hack below, marking initial wave to recalculate it from neighbors if (initialWave!=null){ // just after the first layer (usually one cell) - delete it and add next time - otherwise first one needs large correction if (initialWave!=null){ // just after the first layer (usually one cell) - delete it and add next time - otherwise first one needs large correction if (global_debug_level>0) if (global_debug_level>0) { System.out.println("Removing "+initialWave.size()+" initial wave cells, waveFrontList.size()="+waveFrontList.size()); System.out.println("Removing "+initialWave.size()+" initial wave cells, waveFrontList.size()="+waveFrontList.size()); for (int listIndex=0;listIndex<waveFrontList.size();listIndex++) { int [] dbg_uvdir= getWaveList (waveFrontList,listIndex); System.out.println("waveFrontList["+listIndex+"]: "+dbg_uvdir[0]+"/"+dbg_uvdir[1]+" dir="+dbg_uvdir[2]); } } while (initialWave.size()>0){ while (initialWave.size()>0){ uvdir= getWaveList (initialWave,0); uvdir= getWaveList (initialWave,0); // clearPatternGridCell(PATTERN_GRID, uvdir); // clearPatternGridCell(PATTERN_GRID, uvdir); Loading Loading @@ -5629,7 +5640,7 @@ public class MatchSimulatedPattern { int patternCells=0; int patternCells=0; // save initial distortionParameters.correlationMinInitialContrast // save initial distortionParameters.correlationMinInitialContrast double savedCorrelationMinInitialContrast=distortionParameters.correlationMinInitialContrast; double savedCorrelationMinInitialContrast=distortionParameters.correlationMinInitialContrast; int reTries=6; // 10; // bail out after these attempts int reTries= 10; // bail out after these attempts // int [] startScanIndex={0}; // scan for pattern will update this index to continue next time (<0 - nothing left) // int [] startScanIndex={0}; // scan for pattern will update this index to continue next time (<0 - nothing left) boolean foundGoodCluster=false; boolean foundGoodCluster=false; Loading @@ -5646,7 +5657,8 @@ public class MatchSimulatedPattern { int numTries=1<<(tryHor+tryVert); int numTries=1<<(tryHor+tryVert); boolean [] triedIndices=new boolean[numTries+1]; // last set - all used boolean [] triedIndices=new boolean[numTries+1]; // last set - all used for (int i=0;i<triedIndices.length;i++) triedIndices[i]=(i<3); // mark first 3 as if they are already used for (int i=0;i<triedIndices.length;i++) triedIndices[i]=(i<3); // mark first 3 as if they are already used boolean fromVeryBeginning=true; // ========= Removing adjustment of contrast ============== // boolean fromVeryBeginning=true; Loading @@ -5666,15 +5678,18 @@ public class MatchSimulatedPattern { updateStatus, updateStatus, debug_level, debug_level, global_debug_level); // debug level global_debug_level); // debug level if (global_debug_level>1) System.out.println("Pattern correlation done at "+ IJ.d2s(0.000000001*(System.nanoTime()-startTime),3)); if (global_debug_level>0) System.out.println("Pattern correlation done at "+ IJ.d2s(0.000000001*(System.nanoTime()-startTime),3)+ " found "+patternCells+" cells, reTries left: "+reTries); if (patternCells>0) { if (patternCells>0) { foundGoodCluster=true; foundGoodCluster=true; break; // new distortions() code - returns non-zero only if passed other tests break; // new distortions() code - returns non-zero only if passed other tests } } if (fromVeryBeginning){ if (global_debug_level>1) System.out.println("--- Nothing found at all ---"); // ========= Removing adjustment of contrast ============== break; // or maybe - still try to adjust threshold? // if (fromVeryBeginning){ } // if (global_debug_level>0) System.out.println("--- Nothing found at all --- at "+ IJ.d2s(0.000000001*(System.nanoTime()-startTime),3)); // break; // or maybe - still try to adjust threshold? // } /* /* double averageGridPeriod=Double.NaN; double averageGridPeriod=Double.NaN; if (this.PATTERN_GRID!=null) averageGridPeriod=averageGridPeriod(this.PATTERN_GRID); if (this.PATTERN_GRID!=null) averageGridPeriod=averageGridPeriod(this.PATTERN_GRID); Loading Loading @@ -5759,6 +5774,10 @@ public class MatchSimulatedPattern { "), continuing scanning from index "+startScanIndex); "), continuing scanning from index "+startScanIndex); } } } else { } else { if (global_debug_level>0) System.out.println("--- Tried all - nothing found --- at "+ IJ.d2s(0.000000001*(System.nanoTime()-startTime),3)); break; // ========= Removing adjustment of contrast ============== /* // startScanIndex[0]=0; // startScanIndex[0]=0; System.out.println("Last pattern cluster was too small, adjusting the minimal contrast from "+ System.out.println("Last pattern cluster was too small, adjusting the minimal contrast from "+ IJ.d2s(distortionParameters.correlationMinInitialContrast,3)+ IJ.d2s(distortionParameters.correlationMinInitialContrast,3)+ Loading @@ -5766,6 +5785,7 @@ public class MatchSimulatedPattern { distortionParameters.correlationMinInitialContrast*=distortionParameters.scaleMinimalInitialContrast; distortionParameters.correlationMinInitialContrast*=distortionParameters.scaleMinimalInitialContrast; for (int i=0;i<triedIndices.length;i++) triedIndices[i]=(i<3); // mark first 3 as if they are already used for (int i=0;i<triedIndices.length;i++) triedIndices[i]=(i<3); // mark first 3 as if they are already used fromVeryBeginning=true; fromVeryBeginning=true; */ } } } } Loading