MayaFlux 0.3.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ windowed_segments() [1/2]

MAYAFLUX_API std::vector< std::vector< double > > MayaFlux::windowed_segments ( const Kakshya::DataVariant data,
size_t  window_size,
size_t  hop_size 
)

Definition at line 925 of file Yantra.cpp.

928{
929 auto extractor = std::make_shared<Yantra::FeatureExtractor<>>(static_cast<uint32_t>(window_size), static_cast<uint32_t>(hop_size),
930 Yantra::ExtractionMethod::OVERLAPPING_WINDOWS);
931 extractor->set_parameter("overlap", double(hop_size) / window_size);
932
934 auto result = extractor->apply_operation(input);
935
936 auto extracted_data = result.data[0];
937
938 std::vector<std::vector<double>> segments;
939 for (size_t i = 0; i < extracted_data.size(); i += window_size) {
940 size_t end_idx = std::min(i + window_size, extracted_data.size());
941 segments.emplace_back(extracted_data.begin() + i, extracted_data.begin() + end_idx);
942 }
943
944 return segments;
945}
T data
The actual computation data.
Definition DataIO.hpp:25
Input/Output container for computation pipeline data flow with structure preservation.
Definition DataIO.hpp:24

References MayaFlux::Yantra::Datum< T >::data, and MayaFlux::Yantra::OVERLAPPING_WINDOWS.