Commit d2c8fe34 authored by Andrey Filippov's avatar Andrey Filippov

Improving reduced step by passing 3 indices including the absolute last

index (not "-1")
parent df90e23a
...@@ -4781,7 +4781,7 @@ public class OpticalFlow { ...@@ -4781,7 +4781,7 @@ public class OpticalFlow {
boolean reset_from_extrinsics, boolean reset_from_extrinsics,
String [][] videos, // null or String[1][] list of generated avi or webm paths String [][] videos, // null or String[1][] list of generated avi or webm paths
int [][] stereo_widths, // null or int[1][] matching videos - int [][] stereo_widths, // null or int[1][] matching videos -
int [] start_ref_pointers, // [0] - earliest valid scene, [1] ref_index int [] start_ref_pointers, // [0] - earliest valid scene, [1] ref_index 01/21/2026 - added third element - last pointer, avoiding relative -1.
// each element is 0 for non-stereo and full width for stereo // each element is 0 for non-stereo and full width for stereo
String [] cuas_centers, // [0] - cumulative input, [1] - cumulative output String [] cuas_centers, // [0] - cumulative input, [1] - cumulative output
// processing UAS logs // processing UAS logs
...@@ -4978,6 +4978,7 @@ public class OpticalFlow { ...@@ -4978,6 +4978,7 @@ public class OpticalFlow {
if (start_ref_pointers != null) { if (start_ref_pointers != null) {
start_ref_pointers[0] = 0; start_ref_pointers[0] = 0;
start_ref_pointers[1] = last_index; start_ref_pointers[1] = last_index;
start_ref_pointers[2] = last_index; // this will not be modified anymore - just to calculate smaller overlap by the caller
} }
......
...@@ -8567,7 +8567,7 @@ if (debugLevel > -100) return true; // temporarily ! ...@@ -8567,7 +8567,7 @@ if (debugLevel > -100) return true; // temporarily !
String [][] video_list = new String[1][]; String [][] video_list = new String[1][];
int [][] widths_list = new int [1][]; int [][] widths_list = new int [1][];
int ref_index = -1; // -1 - last int ref_index = -1; // -1 - last
int [] start_ref_pointers = new int[2]; //{earlist, reference} - reference may be center int [] start_ref_pointers = new int[3]; //{earlist, reference} - reference may be center
index_scenes[0] = null; // boolean first_in_series = true; index_scenes[0] = null; // boolean first_in_series = true;
/* /*
// Process UAS logs // Process UAS logs
...@@ -8692,33 +8692,21 @@ if (debugLevel > -100) return true; // temporarily ! ...@@ -8692,33 +8692,21 @@ if (debugLevel > -100) return true; // temporarily !
// testing half-step // testing half-step
if (start_ref_pointers[0] >= (min_num_scenes-1)) { if (start_ref_pointers[0] >= (min_num_scenes-1)) {
System.out.println("testing half-step: start_ref_pointers[0]="+start_ref_pointers[0]+ System.out.println("testing half-step: start_ref_pointers[0]="+start_ref_pointers[0]+
", start_ref_pointers[1]="+start_ref_pointers[1]+", ref_index="+ref_index); ", start_ref_pointers[1]="+start_ref_pointers[1]+", start_ref_pointers[2]="+start_ref_pointers[2]+", ref_index="+ref_index);
int offset1 = (int) (overlap_scale * (start_ref_pointers[1] - start_ref_pointers[0])); int offset1 = (int) (overlap_scale * (start_ref_pointers[1] - start_ref_pointers[0]));
int offset2 = (start_ref_pointers[1] - start_ref_pointers[0]) - offset1; int offset2 = (start_ref_pointers[1] - start_ref_pointers[0]) - offset1;
System.out.println("testing half-step: offset1="+offset1+ System.out.println("testing half-step: offset1="+offset1+
", offset2="+offset2+" overlap_scale="+overlap_scale); ", offset2="+offset2+" overlap_scale="+overlap_scale);
start_ref_pointers[0] = start_ref_pointers[1] - offset1; start_ref_pointers[0] = Math.max ( start_ref_pointers[0] , start_ref_pointers[1] - offset1);
// incorrect, fix "-1" to actual last scene // incorrect, fix "-1" to actual last scene
start_ref_pointers[1] += offset2; // start_ref_pointers[1] += offset2;
start_ref_pointers[1] = Math.max (start_ref_pointers[2], start_ref_pointers[1] - offset1);
System.out.println("testing half-step: start_ref_pointers[0]="+start_ref_pointers[0]+ System.out.println("testing half-step: start_ref_pointers[0]="+start_ref_pointers[0]+
", start_ref_pointers[1]="+start_ref_pointers[1]+", ref_index="+ref_index); ", start_ref_pointers[1]="+start_ref_pointers[1]+", start_ref_pointers[2]="+start_ref_pointers[2]+", ref_index="+ref_index);
} }
/*
if (start_ref_pointers[0] >= (min_num_scenes-1)) {
System.out.println("testing half-step: start_ref_pointers[0]="+start_ref_pointers[0]+
", start_ref_pointers[1]="+start_ref_pointers[1]+", ref_index="+ref_index);
int offset = (int) overlap_scale * (start_ref_pointers[1] - start_ref_pointers[0]);
start_ref_pointers[0] += offset;
start_ref_pointers[1] += offset;
System.out.println("testing half-step: start_ref_pointers[0]="+start_ref_pointers[0]+
", start_ref_pointers[1]="+start_ref_pointers[1]+", ref_index="+ref_index);
}
*/
String series_action = (start_ref_pointers[0] < (min_num_scenes-1))?"is FINISHED ":("will continue down from scene "+(start_ref_pointers[0])); String series_action = (start_ref_pointers[0] < (min_num_scenes-1))?"is FINISHED ":("will continue down from scene "+(start_ref_pointers[0]));
System.out.println("\n ----- PROCESSING SCENE SEQUENCE "+nseq+" (last is "+(num_seq-1)+") "+series_action+" in "+ System.out.println("\n ----- PROCESSING SCENE SEQUENCE "+nseq+" (last is "+(num_seq-1)+") "+series_action+" in "+
IJ.d2s(0.000000001*(System.nanoTime()-start_time_seq),3)+" sec ("+ IJ.d2s(0.000000001*(System.nanoTime()-start_time_seq),3)+" sec ("+
IJ.d2s(0.000000001*(System.nanoTime()-start_time_all),3)+" sec from the overall start\n"); IJ.d2s(0.000000001*(System.nanoTime()-start_time_all),3)+" sec from the overall start\n");
......
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