Commit 50987d91 authored by Andrey Filippov's avatar Andrey Filippov

Adding minimal sequence travel

parent 26d4a190
......@@ -799,6 +799,7 @@ min_str_neib_fpn 0.35
public boolean cuas_isolated = true; // remove targets that do not have neighbors before/after
public int cuas_min_seq = 3; // minimal number of consecutive key frames for the same target
public int cuas_enough_seq = 5; // number of consecutive key frames considered good regardless of individual scores (maybe add minimal travel in pixels)?
public double cuas_seq_travel = 3.0; // minimal diagonal of the bounding box that includes sequence to be considered "cuas_enough_seq". Filtering out atmospheric fluctuations
public int cuas_min_seq_fl = 2; // minimal number of consecutive key frames for the same target that includes first or last key frame
// public boolean cuas_remove_2seq = true; // Remove 2-long target sequences consisting of 2 consecutive key frames
// public boolean cuas_remove_2seq_all=true; // Remove 2-long first/last target sequences
......@@ -836,6 +837,8 @@ min_str_neib_fpn 0.35
public boolean cuas_save_mono = true; // save 32-bit monochrome target+backgrounds Tiffs (before optional scaling)
public boolean cuas_save_color = true; // save color rendered images (same as videos)
public boolean cuas_save_video = true; // save color rendered images (same as videos)
public boolean cuas_clean_video = true; // save video without any debug information for targets, output in TIFF files. False - same output for video and TIFFs
public boolean cuas_annotate = true; // save color rendered images (same as videos)
public boolean cuas_annotate_uas = true; // indicate uas from log if available
......@@ -2442,6 +2445,9 @@ min_str_neib_fpn 0.35
"Minimal number of consecutive key frames for the target to be detected.");
gd.addNumericField("Sufficient consecutive key frames", this.cuas_enough_seq, 0,3,"key frames",
"Number of consecutive key frames considered good regardless of their scores.");
gd.addNumericField("Minimal sequence travel", this.cuas_seq_travel, 5,8,"pix",
"Minimal diagonal of the bounding box that includes sequence to be considered \"cuas_enough_seq\". Filtering out atmospheric fluctuations.");
gd.addNumericField("Minimal end sequence length", this.cuas_min_seq_fl, 0,3,"key frames",
"Minimal number of consecutive key frames for the target to be detected if the sequence includes first or last key frame.");
......@@ -2508,6 +2514,8 @@ min_str_neib_fpn 0.35
"Save color rendered images (same as videos), optionally scaled.");
gd.addCheckbox ("Save videos", this.cuas_save_video,
"Save video with moving targets.");
gd.addCheckbox ("Clean videos", this.cuas_clean_video,
"Save video without any debug information for targets, output in TIFF files. False - same output for video and TIFFs.");
gd.addMessage("=== Target Annotation ===");
gd.addCheckbox ("Annotate targets", this.cuas_annotate,
......@@ -3590,6 +3598,7 @@ min_str_neib_fpn 0.35
// this.cuas_remove_2seq_all = gd.getNextBoolean();
this.cuas_min_seq= (int) gd.getNextNumber();
this.cuas_enough_seq= (int) gd.getNextNumber();
this.cuas_seq_travel= gd.getNextNumber();
this.cuas_min_seq_fl= (int) gd.getNextNumber();
......@@ -3624,6 +3633,7 @@ min_str_neib_fpn 0.35
this.cuas_save_mono = gd.getNextBoolean();
this.cuas_save_color = gd.getNextBoolean();
this.cuas_save_video = gd.getNextBoolean();
this.cuas_clean_video = gd.getNextBoolean();
this.cuas_annotate = gd.getNextBoolean();
this.cuas_annotate_uas = gd.getNextBoolean();
......@@ -4624,6 +4634,7 @@ min_str_neib_fpn 0.35
// properties.setProperty(prefix+"cuas_remove_2seq_all", this.cuas_remove_2seq_all+"");// boolean
properties.setProperty(prefix+"cuas_min_seq", this.cuas_min_seq+""); // int
properties.setProperty(prefix+"cuas_enough_seq", this.cuas_enough_seq+""); // int
properties.setProperty(prefix+"cuas_seq_travel", this.cuas_seq_travel+""); // double
properties.setProperty(prefix+"cuas_min_seq_fl", this.cuas_min_seq_fl+""); // int
properties.setProperty(prefix+"cuas_max_mismatch", this.cuas_max_mismatch+""); // double
......@@ -4657,6 +4668,7 @@ min_str_neib_fpn 0.35
properties.setProperty(prefix+"cuas_save_mono", this.cuas_save_mono+""); // boolean
properties.setProperty(prefix+"cuas_save_color", this.cuas_save_color+""); // boolean
properties.setProperty(prefix+"cuas_save_video", this.cuas_save_video+""); // boolean
properties.setProperty(prefix+"cuas_clean_video", this.cuas_clean_video+""); // boolean
properties.setProperty(prefix+"cuas_annotate", this.cuas_annotate+""); // boolean
......@@ -5619,6 +5631,7 @@ min_str_neib_fpn 0.35
if (properties.getProperty(prefix+"cuas_isolated")!=null) this.cuas_isolated=Boolean.parseBoolean(properties.getProperty(prefix+"cuas_isolated"));
if (properties.getProperty(prefix+"cuas_min_seq")!=null) this.cuas_min_seq=Integer.parseInt(properties.getProperty(prefix+"cuas_min_seq"));
if (properties.getProperty(prefix+"cuas_enough_seq")!=null) this.cuas_enough_seq=Integer.parseInt(properties.getProperty(prefix+"cuas_enough_seq"));
if (properties.getProperty(prefix+"cuas_seq_travel")!=null) this.cuas_seq_travel=Double.parseDouble(properties.getProperty(prefix+"cuas_seq_travel"));
if (properties.getProperty(prefix+"cuas_min_seq_fl")!=null) this.cuas_min_seq_fl=Integer.parseInt(properties.getProperty(prefix+"cuas_min_seq_fl"));
if (properties.getProperty(prefix+"cuas_max_mismatch")!=null) this.cuas_max_mismatch=Double.parseDouble(properties.getProperty(prefix+"cuas_max_mismatch"));
......@@ -5653,6 +5666,7 @@ min_str_neib_fpn 0.35
if (properties.getProperty(prefix+"cuas_save_mono")!=null) this.cuas_save_mono=Boolean.parseBoolean(properties.getProperty(prefix+"cuas_save_mono"));
if (properties.getProperty(prefix+"cuas_save_color")!=null) this.cuas_save_color=Boolean.parseBoolean(properties.getProperty(prefix+"cuas_save_color"));
if (properties.getProperty(prefix+"cuas_save_video")!=null) this.cuas_save_video=Boolean.parseBoolean(properties.getProperty(prefix+"cuas_save_video"));
if (properties.getProperty(prefix+"cuas_clean_video")!=null) this.cuas_clean_video=Boolean.parseBoolean(properties.getProperty(prefix+"cuas_clean_video"));
if (properties.getProperty(prefix+"cuas_annotate")!=null) this.cuas_annotate=Boolean.parseBoolean(properties.getProperty(prefix+"cuas_annotate"));
if (properties.getProperty(prefix+"cuas_annotate_uas")!=null) this.cuas_annotate_uas=Boolean.parseBoolean(properties.getProperty(prefix+"cuas_annotate_uas"));
......@@ -6617,7 +6631,7 @@ min_str_neib_fpn 0.35
imp.cuas_isolated = this.cuas_isolated;
imp.cuas_min_seq = this.cuas_min_seq;
imp.cuas_enough_seq = this.cuas_enough_seq;
imp.cuas_seq_travel= this.cuas_seq_travel;
imp.cuas_min_seq_fl = this.cuas_min_seq_fl;
imp.cuas_max_mismatch = this.cuas_max_mismatch;
......@@ -6650,7 +6664,8 @@ min_str_neib_fpn 0.35
imp.cuas_save_mono = this.cuas_save_mono;
imp.cuas_save_color = this.cuas_save_color;
imp.cuas_save_video = this.cuas_save_video;
imp.cuas_clean_video = this.cuas_clean_video;
imp.cuas_annotate = this.cuas_annotate;
imp.cuas_annotate_uas = this.cuas_annotate_uas;
imp.cuas_text_color= this.cuas_text_color;
......
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