|
MayaFlux 1.0.0
Digital-First Multimedia Processing Framework
|
| std::shared_ptr< Core::VKImage > MayaFlux::Yantra::VisionGpuExecutor::select_label | ( | VisionGpuContexts & | contexts, |
| const std::shared_ptr< Core::VKImage > & | source, | ||
| uint32_t | target_label, | ||
| uint32_t | w, | ||
| uint32_t | h | ||
| ) |
Isolate one ConnectedComponents label's silhouette on GPU, through the explicit context set that produced the label buffer.
Dispatches vision_label_select.comp through contexts.component_contours, the same context ConnectedComponents/FindContours already own: reads dense_label in place at its existing binding, no cross-context buffer copy. Requires a ConnectedComponents step to have already run against these exact contexts (this run or an earlier one); dense_label holds whichever frame's labels were computed last.
| contexts | The same context set a prior run() populated. |
| source | Frame to select pixels from, eShaderReadOnlyOptimal. |
| target_label | 1-based label id, matching BoundingBox::label_id / Contour::label_id from that same run. |
| w | Frame width in pixels. |
| h | Frame height in pixels. |
Definition at line 450 of file VisionComponentsDispatch.cpp.
References MayaFlux::Yantra::VisionGpuContexts::component_contours, fence, MayaFlux::Portal::Graphics::get_shader_foundry(), h, MayaFlux::Yantra::VisionInternal::k_wg2d, and MayaFlux::Yantra::VisionInternal::SelectLabelPC::target_label.
Referenced by MayaFlux::Yantra::VisionExtractor::mask().
Here is the call graph for this function:
Here is the caller graph for this function: