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
dd8f74c3
Commit
dd8f74c3
authored
Sep 02, 2020
by
Andrey Filippov
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
working on a separate corr_td for td accumulation
parent
d87183b6
Changes
4
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
1115 additions
and
523 deletions
+1115
-523
GPUTileProcessor.java
src/main/java/com/elphel/imagej/gpu/GPUTileProcessor.java
+211
-14
ImageDtt.java
src/main/java/com/elphel/imagej/tileprocessor/ImageDtt.java
+859
-509
QuadCLT.java
src/main/java/com/elphel/imagej/tileprocessor/QuadCLT.java
+12
-0
TwoQuadCLT.java
...main/java/com/elphel/imagej/tileprocessor/TwoQuadCLT.java
+33
-0
No files found.
src/main/java/com/elphel/imagej/gpu/GPUTileProcessor.java
View file @
dd8f74c3
This diff is collapsed.
Click to expand it.
src/main/java/com/elphel/imagej/tileprocessor/ImageDtt.java
View file @
dd8f74c3
This diff is collapsed.
Click to expand it.
src/main/java/com/elphel/imagej/tileprocessor/QuadCLT.java
View file @
dd8f74c3
...
@@ -1281,6 +1281,9 @@ public class QuadCLT extends QuadCLTCPU {
...
@@ -1281,6 +1281,9 @@ public class QuadCLT extends QuadCLTCPU {
1
,
// final int macro_scale, // to correlate tile data instead of the pixel data: 1 - pixels, 8 - tiles
1
,
// final int macro_scale, // to correlate tile data instead of the pixel data: 1 - pixels, 8 - tiles
tile_op
,
// per-tile operation bit codes
tile_op
,
// per-tile operation bit codes
disparity_array
,
// clt_parameters.disparity, // final double disparity,
disparity_array
,
// clt_parameters.disparity, // final double disparity,
null
,
// final float [][][][] corr_td, // [tilesY][tilesX][pair][4*64] transform domain representation of 6 corr pairs
null
,
// final float [][][][] corr_combo_td, // [4][tilesY][tilesX][pair][4*64] TD of combo corrs: qud, cross, hor,vert
// each of the top elements may be null to skip particular combo type
//// Uses quadCLT from gpuQuad
//// Uses quadCLT from gpuQuad
// correlation results - final and partial
// correlation results - final and partial
clt_corr_combo
,
// [type][tilesY][tilesX][(2*transform_size-1)*(2*transform_size-1)] // if null - will not calculate
clt_corr_combo
,
// [type][tilesY][tilesX][(2*transform_size-1)*(2*transform_size-1)] // if null - will not calculate
...
@@ -1523,6 +1526,9 @@ public class QuadCLT extends QuadCLTCPU {
...
@@ -1523,6 +1526,9 @@ public class QuadCLT extends QuadCLTCPU {
1
,
// final int macro_scale, // to correlate tile data instead of the pixel data: 1 - pixels, 8 - tiles
1
,
// final int macro_scale, // to correlate tile data instead of the pixel data: 1 - pixels, 8 - tiles
tile_op
,
// per-tile operation bit codes
tile_op
,
// per-tile operation bit codes
disparity_array
,
// clt_parameters.disparity, // final double disparity,
disparity_array
,
// clt_parameters.disparity, // final double disparity,
null
,
// final float [][][][] corr_td, // [tilesY][tilesX][pair][4*64] transform domain representation of 6 corr pairs
null
,
// final float [][][][] corr_combo_td, // [4][tilesY][tilesX][pair][4*64] TD of combo corrs: qud, cross, hor,vert
// each of the top elements may be null to skip particular combo type
//// Uses quadCLT from gpuQuad
//// Uses quadCLT from gpuQuad
// correlation results - final and partial
// correlation results - final and partial
null
,
// [type][tilesY][tilesX][(2*transform_size-1)*(2*transform_size-1)] // if null - will not calculate
null
,
// [type][tilesY][tilesX][(2*transform_size-1)*(2*transform_size-1)] // if null - will not calculate
...
@@ -1838,6 +1844,9 @@ public class QuadCLT extends QuadCLTCPU {
...
@@ -1838,6 +1844,9 @@ public class QuadCLT extends QuadCLTCPU {
1
,
// final int macro_scale, // to correlate tile data instead of the pixel data: 1 - pixels, 8 - tiles
1
,
// final int macro_scale, // to correlate tile data instead of the pixel data: 1 - pixels, 8 - tiles
tile_op
,
// per-tile operation bit codes
tile_op
,
// per-tile operation bit codes
disparity_array
,
// clt_parameters.disparity, // final double disparity,
disparity_array
,
// clt_parameters.disparity, // final double disparity,
null
,
// final float [][][][] corr_td, // [tilesY][tilesX][pair][4*64] transform domain representation of 6 corr pairs
null
,
// final float [][][][] corr_combo_td, // [4][tilesY][tilesX][pair][4*64] TD of combo corrs: qud, cross, hor,vert
// each of the top elements may be null to skip particular combo type
//// Uses quadCLT from gpuQuad
//// Uses quadCLT from gpuQuad
// correlation results - final and partial
// correlation results - final and partial
null
,
// [type][tilesY][tilesX][(2*transform_size-1)*(2*transform_size-1)] // if null - will not calculate
null
,
// [type][tilesY][tilesX][(2*transform_size-1)*(2*transform_size-1)] // if null - will not calculate
...
@@ -1951,6 +1960,9 @@ public class QuadCLT extends QuadCLTCPU {
...
@@ -1951,6 +1960,9 @@ public class QuadCLT extends QuadCLTCPU {
1
,
// final int macro_scale, // to correlate tile data instead of the pixel data: 1 - pixels, 8 - tiles
1
,
// final int macro_scale, // to correlate tile data instead of the pixel data: 1 - pixels, 8 - tiles
tile_op
,
// per-tile operation bit codes
tile_op
,
// per-tile operation bit codes
disparity_array
,
// clt_parameters.disparity, // final double disparity,
disparity_array
,
// clt_parameters.disparity, // final double disparity,
null
,
// final float [][][][] corr_td, // [tilesY][tilesX][pair][4*64] transform domain representation of 6 corr pairs
null
,
// final float [][][][] corr_combo_td, // [4][tilesY][tilesX][pair][4*64] TD of combo corrs: qud, cross, hor,vert
// each of the top elements may be null to skip particular combo type
//// Uses quadCLT from gpuQuad
//// Uses quadCLT from gpuQuad
// correlation results - final and partial
// correlation results - final and partial
null
,
// [type][tilesY][tilesX][(2*transform_size-1)*(2*transform_size-1)] // if null - will not calculate
null
,
// [type][tilesY][tilesX][(2*transform_size-1)*(2*transform_size-1)] // if null - will not calculate
...
...
src/main/java/com/elphel/imagej/tileprocessor/TwoQuadCLT.java
View file @
dd8f74c3
...
@@ -8303,6 +8303,19 @@ if (debugLevel > -100) return true; // temporarily !
...
@@ -8303,6 +8303,19 @@ if (debugLevel > -100) return true; // temporarily !
System
.
out
.
println
(
"Adjusting main camera image set for "
+
quadCLT_main
.
image_name
+
System
.
out
.
println
(
"Adjusting main camera image set for "
+
quadCLT_main
.
image_name
+
", pass "
+(
num_adjust_main
+
1
)+
" of "
+
adjust_main
);
", pass "
+(
num_adjust_main
+
1
)+
" of "
+
adjust_main
);
}
}
if
(
debugLevel
>
-
5
){
int
scan_index
=
quadCLT_main
.
tp
.
clt_3d_passes
.
size
()
-
1
;
quadCLT_main
.
tp
.
showScan
(
quadCLT_main
.
tp
.
clt_3d_passes
.
get
(
scan_index
),
// CLTPass3d scan,
"pre-adjust-extrinsic-scan-"
+
scan_index
);
//String title)
for
(
int
s
=
0
;
(
s
<
5
)
&&
(
s
<
scan_index
);
s
++)
{
quadCLT_main
.
tp
.
showScan
(
quadCLT_main
.
tp
.
clt_3d_passes
.
get
(
s
),
// CLTPass3d scan,
"pre-adjust-extrinsic-scan-"
+
s
);
//String title)
}
}
/*
boolean ok = quadCLT_main.extrinsicsCLT(
boolean ok = quadCLT_main.extrinsicsCLT(
clt_parameters, // EyesisCorrectionParameters.CLTParameters clt_parameters,
clt_parameters, // EyesisCorrectionParameters.CLTParameters clt_parameters,
false, // adjust_poly,
false, // adjust_poly,
...
@@ -8312,6 +8325,7 @@ if (debugLevel > -100) return true; // temporarily !
...
@@ -8312,6 +8325,7 @@ if (debugLevel > -100) return true; // temporarily !
// clear memory for main
// clear memory for main
quadCLT_main.tp.resetCLTPasses();
quadCLT_main.tp.resetCLTPasses();
if (!ok) break;
if (!ok) break;
*/
}
}
// Generate 4 main camera images and thumbnail
// Generate 4 main camera images and thumbnail
...
@@ -8378,6 +8392,15 @@ if (debugLevel > -100) return true; // temporarily !
...
@@ -8378,6 +8392,15 @@ if (debugLevel > -100) return true; // temporarily !
quadCLT_main
.
tp
.
clt_3d_passes
.
get
(
quadCLT_main
.
tp
.
clt_3d_passes
.
size
()
-
1
),
quadCLT_main
.
tp
.
clt_3d_passes
.
get
(
quadCLT_main
.
tp
.
clt_3d_passes
.
size
()
-
1
),
false
);
// boolean force_final);
false
);
// boolean force_final);
if
(
debugLevel
>
-
5
){
int
scan_index
=
quadCLT_main
.
tp
.
clt_3d_passes
.
size
()
-
1
;
quadCLT_main
.
tp
.
showScan
(
quadCLT_main
.
tp
.
clt_3d_passes
.
get
(
scan_index
),
// CLTPass3d scan,
"test_pre-after-"
+
scan_index
);
//String title)
}
dsi
[
DSI_DISPARITY_MAIN
]
=
main_last_scan
[
0
];
dsi
[
DSI_DISPARITY_MAIN
]
=
main_last_scan
[
0
];
dsi
[
DSI_STRENGTH_MAIN
]
=
main_last_scan
[
1
];
dsi
[
DSI_STRENGTH_MAIN
]
=
main_last_scan
[
1
];
if
(
quadCLT_main
.
correctionsParameters
.
clt_batch_dsi
)
{
// Should be always enabled ?
if
(
quadCLT_main
.
correctionsParameters
.
clt_batch_dsi
)
{
// Should be always enabled ?
...
@@ -8479,6 +8502,16 @@ if (debugLevel > -100) return true; // temporarily !
...
@@ -8479,6 +8502,16 @@ if (debugLevel > -100) return true; // temporarily !
// 2) Prepare full D/S and FG/BG data to be embedded within the ML files
// 2) Prepare full D/S and FG/BG data to be embedded within the ML files
double
[][]
main_ds
=
{
dsi
[
DSI_DISPARITY_MAIN
],
dsi
[
DSI_STRENGTH_MAIN
]};
double
[][]
main_ds
=
{
dsi
[
DSI_DISPARITY_MAIN
],
dsi
[
DSI_STRENGTH_MAIN
]};
if
((
adjust_aux
==
0
)
&&
!
quadCLT_main
.
correctionsParameters
.
clt_batch_4img_aux
&&
!
quadCLT_main
.
correctionsParameters
.
clt_batch_dsi_aux
&&
!
quadCLT_main
.
correctionsParameters
.
clt_batch_genMl
&&
!
quadCLT_main
.
correctionsParameters
.
clt_batch_save_extrinsics
&&
!
quadCLT_main
.
correctionsParameters
.
clt_batch_save_all
)
{
continue
;
}
quadCLT_aux
.
ds_from_main
=
quadCLT_aux
.
depthMapMainToAux
(
// only 2 layers for adjustments
quadCLT_aux
.
ds_from_main
=
quadCLT_aux
.
depthMapMainToAux
(
// only 2 layers for adjustments
main_ds
,
// double [][] ds,
main_ds
,
// double [][] ds,
quadCLT_main
.
getGeometryCorrection
(),
// GeometryCorrection geometryCorrection_main,
quadCLT_main
.
getGeometryCorrection
(),
// GeometryCorrection geometryCorrection_main,
...
...
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