From 61820deb90094c8a87a914d5f52770a5ebf69cba Mon Sep 17 00:00:00 2001 From: AndreyFilippov Date: Wed, 26 Jun 2019 13:20:21 -0600 Subject: [PATCH] committing w/o breaking - 1 --- .../imagej/calibration/Distortions.java | 2 +- .../imagej/calibration/SimulationPattern.java | 20 ++++++++++++------- 2 files changed, 14 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/elphel/imagej/calibration/Distortions.java b/src/main/java/com/elphel/imagej/calibration/Distortions.java index 442e1da..5c477cb 100644 --- a/src/main/java/com/elphel/imagej/calibration/Distortions.java +++ b/src/main/java/com/elphel/imagej/calibration/Distortions.java @@ -4276,7 +4276,7 @@ List calibration } public boolean removeOutLierSets(int numOutLiers){ - boolean removeEmptySets=false; + boolean removeEmptySets=true; // false; if (numOutLiers<0) { GenericDialog gd = new GenericDialog("Select sets to process"); gd.addNumericField("Series number (<0 - all images)", -1, 0); diff --git a/src/main/java/com/elphel/imagej/calibration/SimulationPattern.java b/src/main/java/com/elphel/imagej/calibration/SimulationPattern.java index 59bb0c9..4504c1f 100644 --- a/src/main/java/com/elphel/imagej/calibration/SimulationPattern.java +++ b/src/main/java/com/elphel/imagej/calibration/SimulationPattern.java @@ -1105,21 +1105,27 @@ Cv=(Cy*x-Cx*y)+(-Cy*Dx+Cx*Dy) result[index]=spixels[(ixi+iyi) & 1][iy*full_width+ix]; } } else { // components 0..3 + int ser; + if (colorComp < 0) { + ser = 1; // offset by 1/2 pix? should it be so? // FIXME: verify and fix if needed - compare to extractSimulMono() + } else { + ser = 0; r.x+=(bayerPeriod/2)*(colorComp &1); r.y+=(bayerPeriod/2)*((colorComp>>1) &1); + } if (debugLevel>2) System.out.println(">>> r.width="+r.width+ " r.height="+r.height+ " r.x="+r.x+ " r.y="+r.y+ " colorComp="+colorComp); for (index=0;index=full_height) iy=full_height-1; - if (ix<0) ix=0; - else if (ix>=full_width) iy=full_width-1; - result[index]=spixels[0][iy*full_width+ix]; + int iy = r.y + (index / r.width); + int ix = r.x + (index % r.width); + if (iy < 0) iy = 0; + else if (iy >= full_height) iy = full_height - 1; + if (ix < 0) ix = 0; + else if (ix >= full_width) iy = full_width - 1; + result[index] = spixels[ser][iy * full_width + ix]; } } return result; -- 2.18.1