acia.segm.processor.flowpose_rt#

flowpose-rt segmentation implementation

class acia.segm.processor.flowpose_rt.FlowposeRTSegmenter[source]#

Bases: SegmentationProcessor

flowpose-rt segmentation implementation (omnipose-compatible, lighter deps).

batch_size trades memory for throughput: flowpose_rt.Segmenter.segment() only tiles a genuinely single (H, W) image internally – a stacked (N, H, W) batch (what a batch_size-chunked call sends) skips that tiling and forwards the whole chunk through the network at full resolution, so a larger batch of frames bigger than flowpose-rt’s ~224px tile size costs more memory per image than single-frame calls would. Lower batch_size if memory is a concern for large frames.

weights_path selects a local checkpoint instead of the downloaded zoo weights (e.g. a fine-tuned model). model is still required in that case: it names the zoo entry whose preprocessing contract (channel count, channel mapping, default tolerance) the checkpoint follows.

__init__(model='bact_phase_omni', device='auto', precision='auto', compile=None, autorelease=True, batch_size=20, weights_path=None)[source]#

Initialize the segmentation processor.

Parameters:
  • autorelease (bool) – When True (default), the model is released after each __call__(), freeing GPU memory. Set to False to keep the model resident across calls (expert batch case).

  • batch_size (int)