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
fcbcecae
Commit
fcbcecae
authored
Mar 22, 2017
by
Andrey Filippov
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
multi-pas refinement
parent
7426e618
Changes
3
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
1471 additions
and
98 deletions
+1471
-98
EyesisCorrectionParameters.java
src/main/java/EyesisCorrectionParameters.java
+134
-12
QuadCLT.java
src/main/java/QuadCLT.java
+37
-4
TileProcessor.java
src/main/java/TileProcessor.java
+1300
-82
No files found.
src/main/java/EyesisCorrectionParameters.java
View file @
fcbcecae
This diff is collapsed.
Click to expand it.
src/main/java/QuadCLT.java
View file @
fcbcecae
...
@@ -4749,10 +4749,44 @@ public class QuadCLT {
...
@@ -4749,10 +4749,44 @@ public class QuadCLT {
true
,
// smart,
true
,
// smart,
true
);
//newAllowed, // save
true
);
//newAllowed, // save
// refine first measurement
int
bg_pass
=
tp
.
clt_3d_passes
.
size
()
-
1
;
// 0
int
refine_pass
=
tp
.
clt_3d_passes
.
size
();
// 1
for
(
int
nnn
=
0
;
nnn
<
3
;
nnn
++){
refine_pass
=
tp
.
clt_3d_passes
.
size
();
// 1
tp
.
refinePassSetup
(
// prepare tile tasks for the refine pass (re-measure disparities)
// final double [][][] image_data, // first index - number of image in a quad
clt_parameters
,
bg_pass
,
// disparity range - differences from
clt_parameters
.
bgnd_range
,
// double disparity_far,
clt_parameters
.
other_range
,
//double disparity_near, //
clt_parameters
.
bgnd_sure
,
// double this_sure, // minimal strength to be considered definitely background
clt_parameters
.
bgnd_maybe
,
// double this_maybe, // maximal strength to ignore as non-background
clt_parameters
.
sure_smth
,
// sure_smth, // if 2-nd worst image difference (noise-normalized) exceeds this - do not propagate bgnd
ImageDtt
.
DISPARITY_INDEX_CM
,
// index of disparity value in disparity_map == 2 (0,2 or 4)
geometryCorrection
,
threadsMax
,
// maximal number of threads to launch
updateStatus
,
debugLevel
);
CLTMeasure
(
// perform single pass according to prepared tiles operations and disparity
image_data
,
// first index - number of image in a quad
clt_parameters
,
refine_pass
,
threadsMax
,
// maximal number of threads to launch
updateStatus
,
debugLevel
);
}
// testing 2-nd pass
// testing 2-nd pass
int
next_pass
=
tp
.
clt_3d_passes
.
size
();
// 2
tp
.
secondPassSetup
(
// prepare tile tasks for the second pass based on the previous one(s)
tp
.
secondPassSetup
(
// prepare tile tasks for the second pass based on the previous one(s)
// final double [][][] image_data, // first index - number of image in a quad
// final double [][][] image_data, // first index - number of image in a quad
clt_parameters
,
clt_parameters
,
bg_pass
,
// disparity range - differences from
// disparity range - differences from
clt_parameters
.
bgnd_range
,
// double disparity_far,
clt_parameters
.
bgnd_range
,
// double disparity_far,
clt_parameters
.
other_range
,
//double disparity_near, //
clt_parameters
.
other_range
,
//double disparity_near, //
...
@@ -4764,9 +4798,8 @@ public class QuadCLT {
...
@@ -4764,9 +4798,8 @@ public class QuadCLT {
threadsMax
,
// maximal number of threads to launch
threadsMax
,
// maximal number of threads to launch
updateStatus
,
updateStatus
,
debugLevel
);
debugLevel
);
// get images for predefined regions and dispariteies. First - with just fixed scans 1 .. list.size()
// get images for predefined regions and dispariteies. First - with just fixed scans 1 .. list.size()
for
(
int
scanIndex
=
1
;
scanIndex
<
tp
.
clt_3d_passes
.
size
();
scanIndex
++){
for
(
int
scanIndex
=
next_pass
;
scanIndex
<
tp
.
clt_3d_passes
.
size
();
scanIndex
++){
if
(
debugLevel
>
0
){
if
(
debugLevel
>
0
){
System
.
out
.
println
(
"FPGA processing scan #"
+
scanIndex
);
System
.
out
.
println
(
"FPGA processing scan #"
+
scanIndex
);
}
}
...
@@ -4781,7 +4814,7 @@ public class QuadCLT {
...
@@ -4781,7 +4814,7 @@ public class QuadCLT {
}
}
// int scan_limit = 10;
// int scan_limit = 10;
for
(
int
scanIndex
=
1
;
(
scanIndex
<
tp
.
clt_3d_passes
.
size
())
&&
(
scanIndex
<
clt_parameters
.
max_clusters
);
scanIndex
++){
// just temporary limiting
for
(
int
scanIndex
=
next_pass
;
(
scanIndex
<
tp
.
clt_3d_passes
.
size
())
&&
(
scanIndex
<
clt_parameters
.
max_clusters
);
scanIndex
++){
// just temporary limiting
if
(
debugLevel
>
-
1
){
if
(
debugLevel
>
-
1
){
System
.
out
.
println
(
"Generating cluster images (limit is set to "
+
clt_parameters
.
max_clusters
+
") largest, scan #"
+
scanIndex
);
System
.
out
.
println
(
"Generating cluster images (limit is set to "
+
clt_parameters
.
max_clusters
+
") largest, scan #"
+
scanIndex
);
}
}
...
@@ -4828,7 +4861,7 @@ public class QuadCLT {
...
@@ -4828,7 +4861,7 @@ public class QuadCLT {
scan_disparity
,
// scan.disparity_map[ImageDtt.DISPARITY_INDEX_CM],
scan_disparity
,
// scan.disparity_map[ImageDtt.DISPARITY_INDEX_CM],
clt_parameters
.
transform_size
,
clt_parameters
.
transform_size
,
clt_parameters
.
correct_distortions
,
// requires backdrop image to be corrected also
clt_parameters
.
correct_distortions
,
// requires backdrop image to be corrected also
(
scanIndex
<
2
)
&&
clt_parameters
.
show_triangles
,
(
scanIndex
<
next_pass
+
1
)
&&
clt_parameters
.
show_triangles
,
clt_parameters
.
bgnd_range
,
clt_parameters
.
bgnd_range
,
clt_parameters
.
other_range
,
clt_parameters
.
other_range
,
clt_parameters
.
maxDispTriangle
);
clt_parameters
.
maxDispTriangle
);
...
...
src/main/java/TileProcessor.java
View file @
fcbcecae
This diff is collapsed.
Click to expand it.
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