28 const std::vector<std::span<const double>>& data,
29 double energy_threshold = 0.1,
30 uint32_t window_size = 512,
31 uint32_t hop_size = 256);
42 const std::vector<std::span<const double>>& data,
43 double threshold = 0.1,
44 double min_distance = 10.0,
45 uint32_t region_size = 256);
56 const std::vector<std::span<const double>>& data,
57 double std_dev_threshold = 2.0,
58 uint32_t window_size = 512,
59 uint32_t hop_size = 256);
70 const std::vector<std::span<const double>>& data,
71 double spectral_threshold = 0.1,
72 uint32_t window_size = 512,
73 uint32_t hop_size = 256);
84 const std::vector<std::span<const double>>& data,
85 double mean_multiplier = 1.5,
86 uint32_t window_size = 512,
87 uint32_t hop_size = 256);
97 const std::vector<std::span<const double>>& data,
98 uint32_t window_size = 512,
99 double overlap = 0.5);
109 const std::vector<std::span<const double>>& data,
110 const std::vector<size_t>& window_indices,
111 uint32_t window_size = 512);
120 const std::vector<std::span<const double>>& data,
121 const std::vector<Kakshya::Region>& regions);
130 const std::vector<std::span<const double>>& data,
157 const std::vector<std::span<const double>>& data,
158 double threshold = 0.0,
159 double min_distance = 1.0,
160 uint32_t region_size = 1);
172 const std::vector<std::span<const double>>& data,
173 double silence_threshold = 0.01,
174 uint32_t min_duration = 1024,
175 uint32_t window_size = 512,
176 uint32_t hop_size = 256);
188 const std::vector<std::span<const double>>& data,
189 double threshold = 0.3,
190 uint32_t region_size = 512,
191 uint32_t window_size = 1024,
192 uint32_t hop_size = 256);
std::vector< std::vector< double > > extract_overlapping_windows(const std::vector< std::span< const double > > &data, uint32_t window_size, double overlap)
Extract overlapping windows of actual data.
std::vector< std::vector< double > > extract_outlier_data(const std::vector< std::span< const double > > &data, double std_dev_threshold, uint32_t window_size, uint32_t hop_size)
Extract data from statistical outlier regions.
std::vector< std::vector< double > > extract_silence_data(const std::vector< std::span< const double > > &data, double silence_threshold, uint32_t min_duration, uint32_t window_size, uint32_t hop_size)
Extract data from silent regions using existing EnergyAnalyzer.
bool validate_extraction_parameters(uint32_t window_size, uint32_t hop_size, size_t data_size)
Validate extraction parameters.
std::vector< std::vector< double > > extract_high_spectral_data(const std::vector< std::span< const double > > &data, double spectral_threshold, uint32_t window_size, uint32_t hop_size)
Extract data from regions with high spectral energy.
std::vector< std::vector< double > > extract_onset_data(const std::vector< std::span< const double > > &data, double threshold, uint32_t region_size, uint32_t window_size, uint32_t hop_size)
Extract data at onset/transient positions using spectral flux.
std::vector< std::vector< double > > extract_windowed_data_by_indices(const std::vector< std::span< const double > > &data, const std::vector< size_t > &window_indices, uint32_t window_size)
Extract specific data windows by indices.
std::vector< std::vector< double > > extract_above_mean_data(const std::vector< std::span< const double > > &data, double mean_multiplier, uint32_t window_size, uint32_t hop_size)
Extract data from regions with values above statistical mean.
std::vector< std::vector< double > > extract_data_from_region_group(const std::vector< std::span< const double > > &data, const Kakshya::RegionGroup ®ion_group)
Extract data from a RegionGroup.
std::vector< std::vector< double > > extract_peak_data(const std::vector< std::span< const double > > &data, double threshold, double min_distance, uint32_t region_size)
Extract data from peak regions using peak detection.
std::vector< std::string > get_available_extraction_methods()
Get available extraction methods.
std::vector< std::vector< double > > extract_high_energy_data(const std::vector< std::span< const double > > &data, double energy_threshold, uint32_t window_size, uint32_t hop_size)
Extract data from high-energy regions using EnergyAnalyzer.
std::vector< std::vector< double > > extract_zero_crossing_data(const std::vector< std::span< const double > > &data, double threshold, double min_distance, uint32_t region_size)
Extract data at zero crossing points using existing EnergyAnalyzer.
std::vector< std::vector< double > > extract_data_from_regions(const std::vector< std::span< const double > > &data, const std::vector< Kakshya::Region > ®ions)
Extract actual data from specified regions.
Organizes related signal regions into a categorized collection.