Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
I
imagej-elphel
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
3
Issues
3
List
Board
Labels
Milestones
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
Elphel
imagej-elphel
Commits
f6e85676
Commit
f6e85676
authored
Aug 02, 2017
by
Andrey Filippov
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
bug fixes
parent
15b80649
Changes
5
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
237 additions
and
160 deletions
+237
-160
AlignmentCorrection.java
src/main/java/AlignmentCorrection.java
+131
-59
EyesisCorrectionParameters.java
src/main/java/EyesisCorrectionParameters.java
+8
-3
Eyesis_Correction.java
src/main/java/Eyesis_Correction.java
+3
-3
QuadCLT.java
src/main/java/QuadCLT.java
+94
-94
X3dOutput.java
src/main/java/X3dOutput.java
+1
-1
No files found.
src/main/java/AlignmentCorrection.java
View file @
f6e85676
This diff is collapsed.
Click to expand it.
src/main/java/EyesisCorrectionParameters.java
View file @
f6e85676
...
@@ -2140,6 +2140,7 @@ public class EyesisCorrectionParameters {
...
@@ -2140,6 +2140,7 @@ public class EyesisCorrectionParameters {
public
boolean
avg_cluster_disp
=
false
;
// Weight-average disparity for the whole cluster
public
boolean
avg_cluster_disp
=
false
;
// Weight-average disparity for the whole cluster
public
double
maxDispTriangle
=
0.2
;
// Maximal relative disparity difference in a triangle face
public
double
maxDispTriangle
=
0.2
;
// Maximal relative disparity difference in a triangle face
public
double
infinityDistance
=
10000
;
// Distance to generate backdrop (0 - use regular backdrop)
public
double
infinityDistance
=
10000
;
// Distance to generate backdrop (0 - use regular backdrop)
public
int
min_bgnd_tiles
=
10
;
// Minimal number of background tiles to generate background
public
boolean
shUseFlaps
=
true
;
// Split into shells with flaps
public
boolean
shUseFlaps
=
true
;
// Split into shells with flaps
public
boolean
shAggrFade
=
true
;
// Aggressive fade alpha (whole boundary)
public
boolean
shAggrFade
=
true
;
// Aggressive fade alpha (whole boundary)
public
int
shMinArea
=
1
;
// Minimal shell area (not counting flaps
public
int
shMinArea
=
1
;
// Minimal shell area (not counting flaps
...
@@ -2758,10 +2759,11 @@ public class EyesisCorrectionParameters {
...
@@ -2758,10 +2759,11 @@ public class EyesisCorrectionParameters {
properties
.
setProperty
(
prefix
+
"avg_cluster_disp"
,
this
.
avg_cluster_disp
+
""
);
properties
.
setProperty
(
prefix
+
"avg_cluster_disp"
,
this
.
avg_cluster_disp
+
""
);
properties
.
setProperty
(
prefix
+
"maxDispTriangle"
,
this
.
maxDispTriangle
+
""
);
properties
.
setProperty
(
prefix
+
"maxDispTriangle"
,
this
.
maxDispTriangle
+
""
);
properties
.
setProperty
(
prefix
+
"infinityDistance"
,
this
.
infinityDistance
+
""
);
properties
.
setProperty
(
prefix
+
"infinityDistance"
,
this
.
infinityDistance
+
""
);
properties
.
setProperty
(
prefix
+
"min_bgnd_tiles"
,
this
.
min_bgnd_tiles
+
""
);
properties
.
setProperty
(
prefix
+
"shUseFlaps"
,
this
.
shUseFlaps
+
""
);
properties
.
setProperty
(
prefix
+
"shUseFlaps"
,
this
.
shUseFlaps
+
""
);
properties
.
setProperty
(
prefix
+
"shAggrFade"
,
this
.
shAggrFade
+
""
);
properties
.
setProperty
(
prefix
+
"shAggrFade"
,
this
.
shAggrFade
+
""
);
properties
.
setProperty
(
prefix
+
"shMinArea"
,
this
.
shMinArea
+
""
);
properties
.
setProperty
(
prefix
+
"shMinArea"
,
this
.
shMinArea
+
""
);
properties
.
setProperty
(
prefix
+
"shMinStrength"
,
this
.
shMinStrength
+
""
);
properties
.
setProperty
(
prefix
+
"shMinStrength"
,
this
.
shMinStrength
+
""
);
properties
.
setProperty
(
prefix
+
"tiRigidVertical"
,
this
.
tiRigidVertical
+
""
);
properties
.
setProperty
(
prefix
+
"tiRigidVertical"
,
this
.
tiRigidVertical
+
""
);
properties
.
setProperty
(
prefix
+
"tiRigidHorizontal"
,
this
.
tiRigidHorizontal
+
""
);
properties
.
setProperty
(
prefix
+
"tiRigidHorizontal"
,
this
.
tiRigidHorizontal
+
""
);
properties
.
setProperty
(
prefix
+
"tiRigidDiagonal"
,
this
.
tiRigidDiagonal
+
""
);
properties
.
setProperty
(
prefix
+
"tiRigidDiagonal"
,
this
.
tiRigidDiagonal
+
""
);
...
@@ -3335,10 +3337,11 @@ public class EyesisCorrectionParameters {
...
@@ -3335,10 +3337,11 @@ public class EyesisCorrectionParameters {
if
(
properties
.
getProperty
(
prefix
+
"avg_cluster_disp"
)!=
null
)
this
.
avg_cluster_disp
=
Boolean
.
parseBoolean
(
properties
.
getProperty
(
prefix
+
"avg_cluster_disp"
));
if
(
properties
.
getProperty
(
prefix
+
"avg_cluster_disp"
)!=
null
)
this
.
avg_cluster_disp
=
Boolean
.
parseBoolean
(
properties
.
getProperty
(
prefix
+
"avg_cluster_disp"
));
if
(
properties
.
getProperty
(
prefix
+
"maxDispTriangle"
)!=
null
)
this
.
maxDispTriangle
=
Double
.
parseDouble
(
properties
.
getProperty
(
prefix
+
"maxDispTriangle"
));
if
(
properties
.
getProperty
(
prefix
+
"maxDispTriangle"
)!=
null
)
this
.
maxDispTriangle
=
Double
.
parseDouble
(
properties
.
getProperty
(
prefix
+
"maxDispTriangle"
));
if
(
properties
.
getProperty
(
prefix
+
"infinityDistance"
)!=
null
)
this
.
infinityDistance
=
Double
.
parseDouble
(
properties
.
getProperty
(
prefix
+
"infinityDistance"
));
if
(
properties
.
getProperty
(
prefix
+
"infinityDistance"
)!=
null
)
this
.
infinityDistance
=
Double
.
parseDouble
(
properties
.
getProperty
(
prefix
+
"infinityDistance"
));
if
(
properties
.
getProperty
(
prefix
+
"min_bgnd_tiles"
)!=
null
)
this
.
min_bgnd_tiles
=
Integer
.
parseInt
(
properties
.
getProperty
(
prefix
+
"min_bgnd_tiles"
));
if
(
properties
.
getProperty
(
prefix
+
"shUseFlaps"
)!=
null
)
this
.
shUseFlaps
=
Boolean
.
parseBoolean
(
properties
.
getProperty
(
prefix
+
"shUseFlaps"
));
if
(
properties
.
getProperty
(
prefix
+
"shUseFlaps"
)!=
null
)
this
.
shUseFlaps
=
Boolean
.
parseBoolean
(
properties
.
getProperty
(
prefix
+
"shUseFlaps"
));
if
(
properties
.
getProperty
(
prefix
+
"shAggrFade"
)!=
null
)
this
.
shAggrFade
=
Boolean
.
parseBoolean
(
properties
.
getProperty
(
prefix
+
"shAggrFade"
));
if
(
properties
.
getProperty
(
prefix
+
"shAggrFade"
)!=
null
)
this
.
shAggrFade
=
Boolean
.
parseBoolean
(
properties
.
getProperty
(
prefix
+
"shAggrFade"
));
if
(
properties
.
getProperty
(
prefix
+
"shMinArea"
)!=
null
)
this
.
shMinArea
=
Integer
.
parseInt
(
properties
.
getProperty
(
prefix
+
"shMinArea"
));
if
(
properties
.
getProperty
(
prefix
+
"shMinArea"
)!=
null
)
this
.
shMinArea
=
Integer
.
parseInt
(
properties
.
getProperty
(
prefix
+
"shMinArea"
));
if
(
properties
.
getProperty
(
prefix
+
"shMinStrength"
)!=
null
)
this
.
shMinStrength
=
Double
.
parseDouble
(
properties
.
getProperty
(
prefix
+
"shMinStrength"
));
if
(
properties
.
getProperty
(
prefix
+
"shMinStrength"
)!=
null
)
this
.
shMinStrength
=
Double
.
parseDouble
(
properties
.
getProperty
(
prefix
+
"shMinStrength"
));
if
(
properties
.
getProperty
(
prefix
+
"tiRigidVertical"
)!=
null
)
this
.
tiRigidVertical
=
Double
.
parseDouble
(
properties
.
getProperty
(
prefix
+
"tiRigidVertical"
));
if
(
properties
.
getProperty
(
prefix
+
"tiRigidVertical"
)!=
null
)
this
.
tiRigidVertical
=
Double
.
parseDouble
(
properties
.
getProperty
(
prefix
+
"tiRigidVertical"
));
if
(
properties
.
getProperty
(
prefix
+
"tiRigidHorizontal"
)!=
null
)
this
.
tiRigidHorizontal
=
Double
.
parseDouble
(
properties
.
getProperty
(
prefix
+
"tiRigidHorizontal"
));
if
(
properties
.
getProperty
(
prefix
+
"tiRigidHorizontal"
)!=
null
)
this
.
tiRigidHorizontal
=
Double
.
parseDouble
(
properties
.
getProperty
(
prefix
+
"tiRigidHorizontal"
));
if
(
properties
.
getProperty
(
prefix
+
"tiRigidDiagonal"
)!=
null
)
this
.
tiRigidDiagonal
=
Double
.
parseDouble
(
properties
.
getProperty
(
prefix
+
"tiRigidDiagonal"
));
if
(
properties
.
getProperty
(
prefix
+
"tiRigidDiagonal"
)!=
null
)
this
.
tiRigidDiagonal
=
Double
.
parseDouble
(
properties
.
getProperty
(
prefix
+
"tiRigidDiagonal"
));
...
@@ -3809,7 +3812,7 @@ public class EyesisCorrectionParameters {
...
@@ -3809,7 +3812,7 @@ public class EyesisCorrectionParameters {
gd
.
addNumericField
(
"X 3"
,
this
.
fine_corr_x_3
,
3
);
gd
.
addNumericField
(
"X 3"
,
this
.
fine_corr_x_3
,
3
);
gd
.
addNumericField
(
"Y 4"
,
this
.
fine_corr_y_3
,
3
);
gd
.
addNumericField
(
"Y 4"
,
this
.
fine_corr_y_3
,
3
);
gd
.
addNumericField
(
"
Y 4"
,
this
.
fcorr_radius
,
3
);
gd
.
addNumericField
(
"
fcorr_radius"
,
this
.
fcorr_radius
,
3
);
gd
.
addNumericField
(
"Do not try to correct outside this fraction of width/hight"
,
this
.
fcorr_min_strength
,
3
);
gd
.
addNumericField
(
"Do not try to correct outside this fraction of width/hight"
,
this
.
fcorr_min_strength
,
3
);
gd
.
addNumericField
(
"Consider only tiles with absolute residual disparity lower than"
,
this
.
fcorr_disp_diff
,
3
);
gd
.
addNumericField
(
"Consider only tiles with absolute residual disparity lower than"
,
this
.
fcorr_disp_diff
,
3
);
gd
.
addCheckbox
(
"Use quadratic polynomial for fine correction (false - only linear)"
,
this
.
fcorr_quadratic
);
gd
.
addCheckbox
(
"Use quadratic polynomial for fine correction (false - only linear)"
,
this
.
fcorr_quadratic
);
...
@@ -3940,6 +3943,7 @@ public class EyesisCorrectionParameters {
...
@@ -3940,6 +3943,7 @@ public class EyesisCorrectionParameters {
gd
.
addCheckbox
(
"Weight-average disparity for the whole cluster "
,
this
.
avg_cluster_disp
);
gd
.
addCheckbox
(
"Weight-average disparity for the whole cluster "
,
this
.
avg_cluster_disp
);
gd
.
addNumericField
(
"Maximal disparity difference in a triangle face to show"
,
this
.
maxDispTriangle
,
6
);
gd
.
addNumericField
(
"Maximal disparity difference in a triangle face to show"
,
this
.
maxDispTriangle
,
6
);
gd
.
addNumericField
(
"Distance to generate backdrop (0 - use regular backdrop)"
,
this
.
infinityDistance
,
8
);
gd
.
addNumericField
(
"Distance to generate backdrop (0 - use regular backdrop)"
,
this
.
infinityDistance
,
8
);
gd
.
addNumericField
(
" Minimal number of background tiles to generate background"
,
this
.
min_bgnd_tiles
,
0
);
gd
.
addCheckbox
(
"Split into shells with flaps"
,
this
.
shUseFlaps
);
gd
.
addCheckbox
(
"Split into shells with flaps"
,
this
.
shUseFlaps
);
gd
.
addCheckbox
(
"Aggressive fade alpha (whole boundary)"
,
this
.
shAggrFade
);
gd
.
addCheckbox
(
"Aggressive fade alpha (whole boundary)"
,
this
.
shAggrFade
);
...
@@ -4549,6 +4553,7 @@ public class EyesisCorrectionParameters {
...
@@ -4549,6 +4553,7 @@ public class EyesisCorrectionParameters {
this
.
avg_cluster_disp
=
gd
.
getNextBoolean
();
this
.
avg_cluster_disp
=
gd
.
getNextBoolean
();
this
.
maxDispTriangle
=
gd
.
getNextNumber
();
this
.
maxDispTriangle
=
gd
.
getNextNumber
();
this
.
infinityDistance
=
gd
.
getNextNumber
();
this
.
infinityDistance
=
gd
.
getNextNumber
();
this
.
min_bgnd_tiles
=
(
int
)
gd
.
getNextNumber
();
this
.
shUseFlaps
=
gd
.
getNextBoolean
();
this
.
shUseFlaps
=
gd
.
getNextBoolean
();
this
.
shAggrFade
=
gd
.
getNextBoolean
();
this
.
shAggrFade
=
gd
.
getNextBoolean
();
this
.
shMinArea
=
(
int
)
gd
.
getNextNumber
();
this
.
shMinArea
=
(
int
)
gd
.
getNextNumber
();
...
...
src/main/java/Eyesis_Correction.java
View file @
f6e85676
...
@@ -501,7 +501,7 @@ private Panel panel1,
...
@@ -501,7 +501,7 @@ private Panel panel1,
addButton
(
"CLT process files"
,
panelClt1
,
color_process
);
addButton
(
"CLT process files"
,
panelClt1
,
color_process
);
addButton
(
"CLT process sets"
,
panelClt1
,
color_process
);
addButton
(
"CLT process sets"
,
panelClt1
,
color_process
);
addButton
(
"CLT process quads"
,
panelClt1
,
color_process
);
addButton
(
"CLT process quads"
,
panelClt1
,
color_process
);
// addButton("CLT
process corr
", panelClt1, color_conf_process);
// addButton("CLT
4 images
", panelClt1, color_conf_process);
// addButton("CLT disparity scan", panelClt1, color_conf_process);
// addButton("CLT disparity scan", panelClt1, color_conf_process);
// addButton("CLT reset fine corr", panelClt1, color_stop);
// addButton("CLT reset fine corr", panelClt1, color_stop);
// addButton("CLT show fine corr", panelClt1, color_configure);
// addButton("CLT show fine corr", panelClt1, color_configure);
...
@@ -528,7 +528,7 @@ private Panel panel1,
...
@@ -528,7 +528,7 @@ private Panel panel1,
// addButton("CLT process files", panelClt2, color_process);
// addButton("CLT process files", panelClt2, color_process);
// addButton("CLT process sets", panelClt2, color_process);
// addButton("CLT process sets", panelClt2, color_process);
// addButton("CLT process quads", panelClt2, color_process);
// addButton("CLT process quads", panelClt2, color_process);
addButton
(
"CLT
process corr
"
,
panelClt2
,
color_conf_process
);
addButton
(
"CLT
4 images
"
,
panelClt2
,
color_conf_process
);
addButton
(
"CLT disparity scan"
,
panelClt2
,
color_conf_process
);
addButton
(
"CLT disparity scan"
,
panelClt2
,
color_conf_process
);
addButton
(
"CLT reset fine corr"
,
panelClt2
,
color_stop
);
addButton
(
"CLT reset fine corr"
,
panelClt2
,
color_stop
);
addButton
(
"CLT reset extrinsic corr"
,
panelClt2
,
color_stop
);
addButton
(
"CLT reset extrinsic corr"
,
panelClt2
,
color_stop
);
...
@@ -4475,7 +4475,7 @@ private Panel panel1,
...
@@ -4475,7 +4475,7 @@ private Panel panel1,
return
;
return
;
}
else
if
(
label
.
equals
(
"CLT
process corr
"
)
||
label
.
equals
(
"CLT apply fine corr"
)
||
label
.
equals
(
"CLT infinity corr"
))
{
}
else
if
(
label
.
equals
(
"CLT
4 images
"
)
||
label
.
equals
(
"CLT apply fine corr"
)
||
label
.
equals
(
"CLT infinity corr"
))
{
boolean
apply_corr
=
label
.
equals
(
"CLT apply fine corr"
);
boolean
apply_corr
=
label
.
equals
(
"CLT apply fine corr"
);
boolean
infinity_corr
=
label
.
equals
(
"CLT infinity corr"
);
boolean
infinity_corr
=
label
.
equals
(
"CLT infinity corr"
);
DEBUG_LEVEL
=
MASTER_DEBUG_LEVEL
;
DEBUG_LEVEL
=
MASTER_DEBUG_LEVEL
;
...
...
src/main/java/QuadCLT.java
View file @
f6e85676
This diff is collapsed.
Click to expand it.
src/main/java/X3dOutput.java
View file @
f6e85676
...
@@ -97,7 +97,7 @@ public class X3dOutput {
...
@@ -97,7 +97,7 @@ public class X3dOutput {
Element
el_Bgnd
=
x3dDoc
.
createElement
(
"Background"
);
Element
el_Bgnd
=
x3dDoc
.
createElement
(
"Background"
);
el_Bgnd
.
setAttribute
(
"class"
,
"Background"
);
el_Bgnd
.
setAttribute
(
"class"
,
"Background"
);
el_Bgnd
.
setAttribute
(
"id"
,
"Background"
);
el_Bgnd
.
setAttribute
(
"id"
,
"Background"
);
if
(
use_backdrop
)
{
if
(
use_backdrop
&&
(
bgnd_pass
.
texture
!=
null
)
)
{
el_Bgnd
.
setAttribute
(
"frontUrl"
,
bgnd_pass
.
texture
);
el_Bgnd
.
setAttribute
(
"frontUrl"
,
bgnd_pass
.
texture
);
// temporarily - add same picture to all other sides. Actually - any square will work, make some
// temporarily - add same picture to all other sides. Actually - any square will work, make some
// perspective grids/ colors to simplify orientation when looking wrong way
// perspective grids/ colors to simplify orientation when looking wrong way
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment