ID de l'article: 000059815 Type de contenu: Information et documentation de produit Dernière révision: 06/06/2023

Comment inférencer deux images dans le même lot de kits d’outils OpenVINO™ ?

BUILT IN - ARTICLE INTRO SECOND COMPONENT
En bref

Inférence par lots à l’aide de OpenVINO™ kit d’outils

Descriptif

Impossible d’exécuter l’inférence de deux images d’entrée dans OpenVINO™ kit d’outils.

Résolution

Reportez-vous à Using Shape Inference (Utiliser l’inférence shape ) et notez les limitations d’utilisation des lots.

Le zoo Open Model smart_classroom_demo montre un traitement dynamique des lots lors du traitement de plusieurs visages précédemment détectés. Reportez-vous à la fonction CnnDLSDKBase::InferBatch dans la démo, qui se trouve à smart_classroom_demo/cpp/src/cnn.cpp, ligne 51.

  • Lorsque le lot est activé dans le modèle, la mémoire tampon du blob d’entrée est allouée pour avoir de la place pour tous les lots d’images, et les données du blob d’entrée pour chaque image doivent être remplies.
  • Dans la boucle sur num_imgs, une fonction auxiliaire matU8ToBlob remplisse le blob d’entrée de données pour current_batch_size d’images, puis définit la taille du lot pour la demande d’inférence et l’inférence d’exécution.

for (size_t batch_i = 0; batch_i < num_imgs; batch_i += batch_size) {
const size_t current_batch_size = std::min(batch_size, num_imgs - batch_i);
for (size_t b = 0; b < current_batch_size; b++) {
matU8ToBlob<uint8_t>(frames[batch_i + b], input, b);

}

if (config_.max_batch_size != 1)
infer_request_.SetBatch(current_batch_size); infer_request_.Infer();

Informations complémentaires

Utiliser un traitement par lots dynamique

Produits associés

Cet article concerne 2 produits

Le contenu de cette page est une combinaison de traduction humaine et informatique du contenu original en anglais. Ce contenu vous est fourni pour votre commodité et à titre informatif seulement et ne saurait être totalement exact ou complet. En cas de contradiction entre la version anglaise de cette page et la traduction, c'est la version anglaise qui prévaut. Afficher la version anglaise de cette page.