SYSTEMS AND METHODS OF CAMERA-BASED MACHINE VISION MODEL RESOURCE ALLOCATION
A camera-based machine vision system includes an image capture device and one or more processors coupled with memory. The image capture device outputs one or more images. The one or more processors detect a feature represented in a first image of the one or more images; select, based on the feature, a machine vision model to process at least one of the first image or a second image of the one or more images; allocate, to the machine vision model, based on a characteristic of the machine vision model, a portion of the memory; and execute the machine vision model using the portion of the memory to process the at least one of the first image or the second image.
1 . A camera, comprising:
an image capture device to output one or more images; and
one or more processors coupled with memory, the one or more processors to:
detect a feature represented in a first image of the one or more images;
select, based on the feature, a machine vision model to process at least one of the first image or a second image of the one or more images;
allocate, to the machine vision model, based on a characteristic of the machine vision model, a portion of the memory; and
execute the machine vision model using the portion of the memory to process the at least one of the first image or the second image.
2 . The camera of claim 1 , wherein the machine vision model is a second machine vision model, the portion of the memory is a second portion of the memory, and the one or more processors are to:
detect the feature represented in the first image by causing a first machine vision model to execute on a first portion of memory.
3 . The camera of claim 1 , wherein the one or more processors are to determine an amount of the portion of memory to allocate to the machine vision model based on at least one of a frame rate associated with the one or more images or a resolution of the one or more images.
4 . The camera of claim 1 , wherein the one or more processors are to:
monitor a utilization of the memory by the machine vision model; and
output an alert responsive to the utilization exceeding a threshold.
5 . The camera of claim 1 , wherein the one or more processors are to:
monitor a utilization of the memory by the machine vision model; and
modify operation of the machine vision model responsive to the utilization exceeding a threshold.
6 . The camera of claim 1 , wherein the portion of the memory is a second portion of the memory, and one or more processors are to:
retrieve a data structure corresponding to the machine vision model from a first portion of the memory; and
deploy the machine vision model on the second portion of the memory using the retrieved data structure.
7 . The camera of claim 1 , wherein the one or more processors are to select the machine vision model from a plurality of machine vision models.
8 . The camera of claim 1 , wherein the machine vision model comprises a neural network to perform at least one of object detection, object tracking, or alarm generation.
9 . The camera of claim 1 , wherein the one or more processors are to allocate the portion of memory to include at least one of a minimum threshold amount of the memory or a maximum threshold amount of the memory.
10 . The camera of claim 1 , wherein the image capture device is to output the one or more images according to a predetermined quantization, and the machine vision model is configured to process the one or more images according to the predetermined quantization.
11 . The camera of claim 1 , wherein the image capture device is to output the first image and the second image as a sequence of images at a frame rate.
12 . A method, comprising:
selecting, by processing circuitry of a camera, a machine vision model to process one or more images from an image capture device of the camera;
allocating a portion of memory of the camera, by the processing circuitry, based on a characteristic of at least one of the one or more images or the machine vision model; and
executing, by the processing circuitry, the machine vision model on the portion of the memory to process the one or more images.
13 . The method of claim 12 , wherein the characteristic comprises at least one of a frame rate associated with the one or more images or a resolution of the one or more images.
14 . The method of claim 12 , wherein the machine vision model is a second machine vision model, the portion of the memory is a second portion of the memory, and the method further comprises:
detecting, by the processing circuitry, the feature represented in the first image by causing a first machine vision model to execute on a first portion of memory.
15 . The method of claim 12 , further comprising:
monitoring, by the processing circuitry, a utilization of the portion of the memory by the machine vision model; and
output an alert responsive to the utilization exceeding a threshold.
16 . The method of claim 12 , wherein the portion of the memory is a second portion, the method further comprising:
retrieving, by the processing circuitry, a plurality of weights and biases corresponding to the machine vision model from a first portion of the memory; and
deploying, by the processing circuitry, the machine vision model on the second portion of the memory using the plurality of weights and biases.
17 . The method of claim 12 , wherein the machine vision model comprises a second machine vision model, the method further comprising:
detecting, by the processing circuitry, using a first machine vision model, a feature of an object represented in the one or more images;
selecting, by the processing circuitry, the second machine vision model based on the feature; and
processing, by the second machine vision model, the feature to detect a characteristic of the feature.
18 . A system, comprising:
one or more processors to:
detect an object in image data from an image capture device, the object having a class;
select, based on the class, a machine vision model to process the image stream;
determine a target memory usage for the machine vision model; and
execute the machine vision model, on a portion of memory corresponding to the target memory usage, to generate an output regarding the object based on the image data.
19 . The system of claim 18 , wherein the one or more processors are to:
monitor utilization of the portion of memory by the machine vision model; and
update operation of the machine vision model responsive to the utilization exceeding a threshold.
20 . The system of claim 18 , wherein the machine vision model is to determine a state of the object based on the image data.