Loads a deep learning model and prepares its execution on a specific target device.
const avl::DetectFeaturesModelDirectory& inModelDirectory,
const atl::Optional<avl::DeviceKind::Type>& inDeviceType,
const int inDeviceIndex,
const atl::Optional<avl::Size>& inInputSizeHint,
||A Detect Features model stored in a specific disk directory
||A type of a device selected for deploying and executing the model. If not set, device depending on version (CPU/GPU) of installed Deep Learning add-on is selected. If not set, device depending on version (CPU/GPU) of installed Deep Learning add-on is selected.
||An index of a device selected for deploying and executing the model.
||Prepares the model for an execution with a given maximum input size (image size or a size of a roi bounding box) in advance
||Identifier of the deployed model
- In most cases, this filter should be placed in the INITIALIZE section.
- Executing this filter may take several seconds.
- This filter should be connected to AvsFilter_DL_DetectFeatures through the ModelId ports.
- You can edit the model directly through the inModelDirectory. Another option is to use the Deep Learning Editor application and just copy the path to the created model.
- inInputSizeHint should be set to the maximum expected size of analysed area (in following AvsFilter_DL_DetectFeatures filters, using deployed model), which is an image size or a bounding box of a roi. By default (if this input is set to NIL), a size of one of the training image is used (please note, that it does not take roi into account). Following this guideline should ensure an optimal memory usage and no performance hit on first call to AvsFilter_DL_DetectFeatures.
- Passing NIL as inTargetDevice (which is default), is identical to passing DeviceKind::CUDA on GPU version of Deep Learning add-on and DeviceKind::CPU on CPU version on Deep Learning add-on.
- GPU version of Deep Learning add-on supports DeviceKind::CUDA and DeviceKind::CPU as inTargetDevice value.
- CPU version of Deep Learning add-on supports only DeviceKind::CPU as inTargetDevice value.