Commit c4468ec2 authored by Andrey Filippov's avatar Andrey Filippov

more testing/tuning

parent e5d30e06
This diff is collapsed.
......@@ -637,7 +637,7 @@ public class MeasuredLayers {
* Get double-size (for overlapping) array of disparities and strengths for the supertile
* Using best (producing lowest disparity variance) subset of neighbor tiles
* @param num_layer number of measurement layer (currently 0 - composite, 1 - quad, 2 - horizontal
* and 3 - vertical piars correlation
* and 3 - vertical pairs correlation
* @param stX supertile horizontal index
* @param stY supertile vertical index
* @param sel_in input selection of the output data samples (or null)
......
This diff is collapsed.
This diff is collapsed.
......@@ -3306,7 +3306,7 @@ public class TileProcessor {
st.planes, // final TilePlanes.PlaneData [][] planes,
merge_candidates, // final int [][][] merge_candidates,
plane_nooverlaps, // final boolean [][][] valid_candidates, // will be updated
true, // final boolean merge_low_eigen,
true, // final boolean merge_low_eigen, here it should be true
2, // -1, // debugLevel, // final int debugLevel)
clt_parameters.tileX,
clt_parameters.tileY);
......@@ -3520,6 +3520,7 @@ public class TileProcessor {
// re-generate planes in the supertiles using previously calculated planes (for tghe tiles and their neighbors)
// as hints, new planes will be assumed parallel to the known and possibly slightly offset in disparity
if (clt_parameters.plDiscrEn) {
st.regeneratePlanes(
st.planes, // final TilePlanes.PlaneData [][] planes,
clt_parameters.stMeasSel, // = 1 //Select measurements for supertiles : +1 - combo, +2 - quad +4 - hor +8 - vert
......@@ -3547,8 +3548,14 @@ public class TileProcessor {
clt_parameters.plDiscrSigma, // final double plDiscrSigma, // = 0.05; // Gaussian sigma to compare how measured data is attracted to planes
clt_parameters.plDiscrBlur, // final double plDiscrBlur, // = 0.1; // Sigma to blur histograms while re-discriminating
clt_parameters.plDiscrExclusivity,// final double plDiscrExclusivity, // = 0.5; // Tile exclusivity: 1.0 - tile belongs to one plane only, 0.0 - regardless of others
clt_parameters.plDiscrExclus2,// final double plDiscrExclus2, // = 0.5; // For second pass if exclusivity > 1.0 - will assign only around strong neighbors
clt_parameters.plDiscrExclus2, // final double plDiscrExclus2, // = 0.5; // For second pass if exclusivity > 1.0 - will assign only around strong neighbors
clt_parameters.plDiscrStrict, // final boolean plDiscrStrict, // = true; // When growing selection do not allow any offenders around (false - more these than others)
clt_parameters.plDiscrCorrMax, // final double plDiscrCorrMax, // = 0.7; // Attraction to different planes correlation that is too high for re-discrimination.
clt_parameters.plDiscrCorrMerge, // final double plDiscrCorrMerge, // = 0.85; // Attraction to different planes correlation that is high enough to merge planes
clt_parameters.plDiscrSteal, // final int plDiscrSteal, // = 4; // If offender has this number of tiles (including center) the cell can not be used
clt_parameters.plDiscrGrown, // final int plDiscrGrown, // = 0; // Only use tiles within this range from original selection
clt_parameters.plDiscrXMedian, // final double plDiscrXMedian, // = 1.5; // Remove outliers from the final selection that have distance more than scaled median
0, // -1, // debugLevel, // final int debugLevel)
clt_parameters.tileX,
clt_parameters.tileY);
......@@ -3560,7 +3567,7 @@ public class TileProcessor {
st, // SuperTiles st,
lp, // LinkPlanes lp,
debugLevel); // final int debugLevel);
}
double [][] quality_stats1 = lp.selectNeighborPlanesMutual(
st.planes, // final TilePlanes.PlaneData [][] planes,
2, // final int debugLevel)
......@@ -3751,6 +3758,7 @@ public class TileProcessor {
if (clt_parameters.plIterations > 0) {
st.resetPlanesMod(); // clean start
planes_mod = st.planesSmooth(
lp, // LinkPlanes lp,
clt_parameters.plPull, // final double meas_pull,// relative pull of the original (measured) plane with respect to the average of the neighbors
clt_parameters.plMaxEigen, // final double maxValue, // do not combine with too bad planes
clt_parameters.plIterations, // final int num_passes,
......@@ -3758,7 +3766,7 @@ public class TileProcessor {
clt_parameters.plNormPow, // 0.0: 8 neighbors pull 8 times as 1, 1.0 - same as 1
Math.pow(10.0, -clt_parameters.plPrecision), // final double maxDiff, // maximal change in any of the disparity values
clt_parameters.plPreferDisparity,
0, // final int debugLevel)
1,// 0, // final int debugLevel)
clt_parameters.tileX,
clt_parameters.tileY);
} else {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment