Manages CUDA-resident temporal features for SAM2 inference.
Definition at line 175 of file sources/libs/nvmultiobjecttracker/include/modules/Segmenter/Segmenter.hpp.
|
| | SegmenterCudaMemBank () |
| | Construct a SegmenterCudaMemBank instance from configuration. More...
|
| |
| | ~SegmenterCudaMemBank () |
| | Release resources owned by the SegmenterCudaMemBank instance. More...
|
| |
| void | initialize (const SourceFrameInfo &frameInfo, const uint maxTargetsPerStream, const SegmenterRunTimeParams ¶msRt, const SegmenterConfigParams ¶ms, cudaStream_t &cuStream) |
| | Initialize memory bank. More...
|
| |
| void | update (float *maskMemFeatures_d, float *maskMemPosEnc_d, float *temporalCode_d, float *objPtr_d, std::shared_ptr< NvTrackedObject > target, int indInBatch, CudaInferenceStatus &inferStatus) |
| | Update memory bank. More...
|
| |
| void | reset (const TrackerIndex targetInd) |
| | Clear retained memory for one target. More...
|
| |
| std::vector< float * > | getCudaMemBank (const TrackerIndex targetInd) |
| | Get CUDA memory-bank pointers for a target. More...
|
| |
| | SegmenterCudaMemBank () |
| | Construct a SegmenterCudaMemBank instance from configuration. More...
|
| |
| | ~SegmenterCudaMemBank () |
| | Release resources owned by the SegmenterCudaMemBank instance. More...
|
| |
| void | initialize (const SourceFrameInfo &frameInfo, const uint maxTargetsPerStream, const SegmenterRunTimeParams ¶msRt, const SegmenterConfigParams ¶ms, cudaStream_t &cuStream) |
| | Initialize memory bank. More...
|
| |
| void | update (float *maskMemFeatures_d, float *maskMemPosEnc_d, float *temporalCode_d, float *objPtr_d, std::shared_ptr< NvTrackedObject > target, int indInBatch, CudaInferenceStatus &inferStatus) |
| | Update memory bank. More...
|
| |
| void | reset (const TrackerIndex targetInd) |
| | Clear retained memory for one target. More...
|
| |
| std::vector< float * > | getCudaMemBank (const TrackerIndex targetInd) |
| | Get CUDA memory-bank pointers for a target. More...
|
| |
◆ SegmenterCudaMemBank() [1/2]
| SegmenterCudaMemBank::SegmenterCudaMemBank |
( |
| ) |
|
◆ ~SegmenterCudaMemBank() [1/2]
| SegmenterCudaMemBank::~SegmenterCudaMemBank |
( |
| ) |
|
◆ SegmenterCudaMemBank() [2/2]
| SegmenterCudaMemBank::SegmenterCudaMemBank |
( |
| ) |
|
◆ ~SegmenterCudaMemBank() [2/2]
| SegmenterCudaMemBank::~SegmenterCudaMemBank |
( |
| ) |
|
◆ getCudaMemBank() [1/2]
| std::vector<float*> SegmenterCudaMemBank::getCudaMemBank |
( |
const TrackerIndex |
targetInd | ) |
|
Get CUDA memory-bank pointers for a target.
- Parameters
-
| [in] | targetInd | Target index. |
◆ getCudaMemBank() [2/2]
| std::vector<float*> SegmenterCudaMemBank::getCudaMemBank |
( |
const TrackerIndex |
targetInd | ) |
|
Get CUDA memory-bank pointers for a target.
- Parameters
-
| [in] | targetInd | Target index. |
◆ initialize() [1/2]
Initialize memory bank.
- Parameters
-
| [in] | frameInfo | Metadata about the source image, such as size and color. |
| [in] | maxTargetsPerStream | Maximum number of targets to track in each stream. |
| [in] | paramsRt | Runtime parameters for the segmenter. |
| [in] | params | Configuration parameters for the segmenter. |
| [in] | cuStream | CUDA stream that runs the GPU work. |
◆ initialize() [2/2]
Initialize memory bank.
- Parameters
-
| [in] | frameInfo | Metadata about the source image, such as size and color. |
| [in] | maxTargetsPerStream | Maximum number of targets to track in each stream. |
| [in] | paramsRt | Runtime parameters for the segmenter. |
| [in] | params | Configuration parameters for the segmenter. |
| [in] | cuStream | CUDA stream that runs the GPU work. |
◆ reset() [1/2]
| void SegmenterCudaMemBank::reset |
( |
const TrackerIndex |
targetInd | ) |
|
Clear retained memory for one target.
- Parameters
-
| [in] | targetInd | Target index. |
◆ reset() [2/2]
| void SegmenterCudaMemBank::reset |
( |
const TrackerIndex |
targetInd | ) |
|
Clear retained memory for one target.
- Parameters
-
| [in] | targetInd | Target index. |
◆ update() [1/2]
| void SegmenterCudaMemBank::update |
( |
float * |
maskMemFeatures_d, |
|
|
float * |
maskMemPosEnc_d, |
|
|
float * |
temporalCode_d, |
|
|
float * |
objPtr_d, |
|
|
std::shared_ptr< NvTrackedObject > |
target, |
|
|
int |
indInBatch, |
|
|
CudaInferenceStatus & |
inferStatus |
|
) |
| |
Update memory bank.
- Parameters
-
| [in] | maskMemFeatures_d | Mask memory features to append. |
| [in] | maskMemPosEnc_d | Mask memory position encoding to append. |
| [in] | temporalCode_d | Device temporal-code tensor. |
| [in] | objPtr_d | Device object-pointer tensor. |
| [in] | target | Target whose memory bank is updated. |
| [in] | indInBatch | Index of this target in the inference batch. |
| [in,out] | inferStatus | CUDA inference status whose stored-tensor counts are updated. |
◆ update() [2/2]
| void SegmenterCudaMemBank::update |
( |
float * |
maskMemFeatures_d, |
|
|
float * |
maskMemPosEnc_d, |
|
|
float * |
temporalCode_d, |
|
|
float * |
objPtr_d, |
|
|
std::shared_ptr< NvTrackedObject > |
target, |
|
|
int |
indInBatch, |
|
|
CudaInferenceStatus & |
inferStatus |
|
) |
| |
Update memory bank.
- Parameters
-
| [in] | maskMemFeatures_d | Mask memory features to append. |
| [in] | maskMemPosEnc_d | Mask memory position encoding to append. |
| [in] | temporalCode_d | Device temporal-code tensor. |
| [in] | objPtr_d | Device object-pointer tensor. |
| [in] | target | Target whose memory bank is updated. |
| [in] | indInBatch | Index of this target in the inference batch. |
| [in,out] | inferStatus | CUDA inference status whose stored-tensor counts are updated. |
The documentation for this class was generated from the following file: