MayaFlux 1.0.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches
VisionExtractor.hpp File Reference

GPU getter for what VisionAnalyzer found. More...

+ Include dependency graph for VisionExtractor.hpp:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  MayaFlux::Yantra::ElementFocus
 How the extractor chooses among several found elements: rank by criterion, highest first when largest, lowest first otherwise. More...
 
class  MayaFlux::Yantra::VisionExtractor
 Extraction from each VisionAnalysis field. More...
 

Namespaces

namespace  MayaFlux
 Main namespace for the Maya Flux audio engine.
 
namespace  MayaFlux::Kakshya
 
namespace  MayaFlux::Yantra
 

Enumerations

enum class  MayaFlux::Yantra::ElementCriterion : uint8_t {
  MayaFlux::Yantra::Area , MayaFlux::Yantra::Compactness , MayaFlux::Yantra::AspectRatio , MayaFlux::Yantra::Isolation ,
  MayaFlux::Yantra::Proximity
}
 Per-element measure select_element() ranks find_elements by, taken from what the analyzer already computed: contour area, shape compactness, aspect ratio, nearest-neighbour distance (isolation), or distance from a point. More...
 
enum class  MayaFlux::Yantra::VisionExtractMode : uint8_t {
  MayaFlux::Yantra::Crop , MayaFlux::Yantra::Sample , MayaFlux::Yantra::Patches , MayaFlux::Yantra::Crops ,
  MayaFlux::Yantra::SampleRegions , MayaFlux::Yantra::SamplePoints , MayaFlux::Yantra::Silhouettes , MayaFlux::Yantra::Equalize ,
  MayaFlux::Yantra::Expose , MayaFlux::Yantra::Edges , MayaFlux::Yantra::MotionMask , MayaFlux::Yantra::Annotate ,
  MayaFlux::Yantra::SelectElement
}
 Which method run_operation dispatches to. More...
 

Detailed Description

GPU getter for what VisionAnalyzer found.

Every method takes a Kinesis::Vision::VisionAnalysis and derives its geometry from whichever field is populated; an analysis with nothing in it extracts nothing. All pixel work runs on the GPU, the host only packs the analysis into buffers and dispatches.

FunctionalOperation<shared_ptr<SignalSourceContainer>, vector<DataVariant>>, like VisionAnalyzer. run_operation reads the analysis from Datum metadata key "vision_analysis" (the key VisionAnalyzer::run_operation writes) and runs the method selected by VisionExtractMode, so a VisionAnalyzer -> VisionExtractor chain needs no adapter. mask() alone stays outside that path: it needs the VisionGpuExecutor that owns the label buffer.

Definition in file VisionExtractor.hpp.