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

◆ analyze_vision() [2/2]

Kinesis::Vision::VisionAnalysis MayaFlux::Yantra::VisionAnalyzer::analyze_vision ( const std::shared_ptr< Kakshya::SignalSourceContainer > &  source,
size_t  index = 0 
)

Real entry point: resolve the configured query against source, run it, run the GPU analysis.

Same shape as analyze_energy(data)/analyze_statistics(data): only the data is a call argument. To change what a later call does, call set_query()/set_context() first, the same way a caller changes EnergyAnalyzer's behaviour with set_method() before the next analyze_energy(), not by passing it alongside data.

Parameters
sourceImage-bearing container (VideoStreamContainer, WindowContainer, or TextureContainer; the same set VisionProcessor accepts). Anything else yields an empty VisionAnalysis.
indexLayer/frame index, used only for a TextureContainer's to_image(index); ignored for the other two, which have no multi-index concept and always give their current frame.

Definition at line 425 of file VisionAnalyzer.cpp.

428{
429 const auto image = resolve_image(source, index);
430 if (!image)
431 return {};
432
433 return analyze_resolved(image);
434}
IO::ImageData image
Definition Decoder.cpp:47
uint32_t index
Definition VKDevice.cpp:122
Kinesis::Vision::VisionAnalysis analyze_resolved(const std::shared_ptr< Core::VKImage > &image)
Shared body of both analyze_vision() overloads, once a GPU image is in hand: resolve the configured q...
std::shared_ptr< Core::VKImage > resolve_image(const std::shared_ptr< Kakshya::SignalSourceContainer > &source, size_t index)
Resolve source/index to a GPU image, the same way VisionProcessor does: TextureContainer's own to_ima...

References analyze_resolved(), image, index, and resolve_image().

Referenced by run_operation().

+ Here is the call graph for this function:
+ Here is the caller graph for this function: