Vous pouvez reconnaître des marques spécifiques sur des images en effectuant des opérations de reconnaissance optique de marques. Par exemple, vous pouvez reconnaître les bulles remplies pour un questionnaire, une enquête ou un examen sous la forme de questions à choix multiples. Veuillez vous référer aux sections suivantes pour plus de détails :

Reconnaissance optique de marques – Installation de l’API C#

Vous pouvez configurer l’API Aspose.OMR for .NET dans vos applications C# en téléchargeant la DLL depuis les sections Téléchargements, ou via la galerie NuGet avec la commande d’installation suivante :

PM> Install-Package Aspose.OMR

Reconnaître l’image de MemoryStream à l’aide d’OMR en C#

Parfois, les images sont stockées dans une base de données ou dans une ressource distante et vous pouvez charger ces fichiers dans un MemoryStream. De même, il peut y avoir de nombreux scénarios dans lesquels l’enregistrement d’une image sur le disque, puis son chargement pour le traitement peuvent représenter une surcharge. Ainsi, vous pouvez facilement charger l’image dans un flux et y effectuer des opérations OMR. Voici les étapes pour reconnaître une image de MemoryStream :

  1. Obtenez le modèle à reconnaître.
  2. Initialiser l’objet de classe OmrEngine.
  3. Reconnaître l’image dans MemoryStream avec la méthode RecognizeImage.
  4. Enregistrez le fichier de sortie avec l’instance de classe RecognitionResult.

Le code suivant montre comment reconnaître l’image d’un MemoryStream avec OMR en C# :

// Obtenir un modèle à reconnaître
string templatePath = "Sheet.omr";

// Obtenir une image pour reconnaître
string imagePath = "Sheet1.JPG";

// Initialiser l'objet de classe OmrEngine
OmrEngine engine = new OmrEngine();

// Définir le modèle pour la reconnaissance
TemplateProcessor templateProcessor = engine.GetTemplateProcessor(templatePath);

using (Image image = Image.FromFile(imagePath))
{
    using (MemoryStream ms = new MemoryStream())
    {
        image.Save(ms, image.RawFormat);
        ms.Flush();

        // Reconnaître l'image
        Aspose.OMR.Model.RecognitionResult result = templateProcessor.RecognizeImage(ms);

        var stringRes = result.GetCsv();
        File.WriteAllText(Path.GetFileNameWithoutExtension(imagePath) + ".csv", stringRes);
    }
}

Traitement par lots des images pour la reconnaissance avec OMR à l’aide de C#

Vous pouvez traiter un lot d’images dans un dossier et reconnaître les repères grâce à la reconnaissance optique des repères. Veuillez suivre les étapes suivantes pour reconnaître un lot d’images :

  1. Obtenez le modèle OMR à reconnaître.
  2. Obtenez RecognitionResult de toutes les images à l’aide de la méthode RecognizeFolder.
  3. Enregistrez la sortie sous forme de fichier CSV.

Le code ci-dessous explique comment traiter par programmation un lot d’images pour la reconnaissance optique de marques à l’aide de C# :

// Obtenir un modèle à reconnaître
string templatePath = "Sheet.omr";

// Le dossier Get contient des images à reconnaître
string folderPath = "D:\images\";

OmrEngine engine = new OmrEngine();

// Définir le modèle pour la reconnaissance
TemplateProcessor templateProcessor = engine.GetTemplateProcessor(templatePath);

// Reconnaître les images du dossier
Aspose.OMR.Model.RecognitionResult[] result = templateProcessor.RecognizeFolder(folderPath);

for (int i = 0; i < result.Length; i++)
{
    var stringRes = result[i].GetCsv();
    File.WriteAllText(folderPath  + (i+1) + ".csv", stringRes);
}

Obtenez une licence API gratuite

Vous pouvez évaluer l’API sans aucune limitation en demandant une Licence temporaire gratuite.

Conclusion

Dans cet article, vous avez appris à reconnaître une image à partir d’un MemoryStream à l’aide d’OMR en C#. Il traite également de la reconnaissance de toutes les images dans un dossier et de l’enregistrement du résultat de sortie au format CSV, valeurs séparées par des virgules, fichiers. De plus, vous pouvez jeter un œil aux autres fonctionnalités de l’API en visitant la Documentation. Vous pouvez toujours nous contacter sur Free Support Forum pour toutes vos préoccupations.

Voir également