È possibile riconoscere segni specifici sulle immagini eseguendo operazioni di riconoscimento ottico dei segni. Ad esempio, puoi riconoscere le bolle riempite per un questionario, un sondaggio o un esame sotto forma di domande a scelta multipla. Si prega di fare riferimento alle seguenti sezioni per ulteriori dettagli:

Riconoscimento ottico del segno – Installazione dell’API C#

Puoi configurare l’API Aspose.OMR for .NET nelle tue applicazioni C# scaricando la DLL dalle sezioni Download o tramite la galleria NuGet con il seguente comando di installazione:

PM> Install-Package Aspose.OMR

Riconosci l’immagine da MemoryStream usando OMR in C#

A volte le immagini vengono archiviate nel database o in una risorsa remota e puoi caricare quei file in un MemoryStream. Allo stesso modo, possono esserci molti scenari in cui salvare un’immagine sul disco e quindi caricarla per l’elaborazione può essere un sovraccarico. Quindi puoi caricare comodamente l’immagine in uno Stream ed eseguire operazioni OMR su di esso. Di seguito sono riportati i passaggi per riconoscere un’immagine da MemoryStream:

  1. Ottieni il modello da riconoscere.
  2. Inizializza l’oggetto classe OmrEngine.
  3. Riconosci l’immagine in MemoryStream con il metodo RecognizeImage.
  4. Salva il file di output con l’istanza della classe RecognitionResult.

Il codice seguente mostra come riconoscere l’immagine da un MemoryStream con OMR in C#:

// Ottieni un modello da riconoscere
string templatePath = "Sheet.omr";

// Ottieni immagine per riconoscere
string imagePath = "Sheet1.JPG";

// Inizializza l'oggetto classe OmrEngine
OmrEngine engine = new OmrEngine();

// Imposta il modello per il riconoscimento
TemplateProcessor templateProcessor = engine.GetTemplateProcessor(templatePath);

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

        // Riconosci l'immagine
        Aspose.OMR.Model.RecognitionResult result = templateProcessor.RecognizeImage(ms);

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

Elaborazione in batch delle immagini per il riconoscimento con OMR utilizzando C#

È possibile elaborare un batch di immagini in una cartella e riconoscere i segni con il riconoscimento ottico dei segni. Si prega di seguire i seguenti passaggi per riconoscere un batch di immagini:

  1. Ottieni il modello OMR da riconoscere.
  2. Ottieni RecognitionResult di tutte le immagini usando il metodo RecognizeFolder.
  3. Salva l’output come file CSV.

Il codice seguente spiega come elaborare un batch di immagini per il riconoscimento ottico del segno a livello di codice utilizzando C#:

// Ottieni il modello da riconoscere
string templatePath = "Sheet.omr";

// La cartella Ottieni contiene immagini da riconoscere
string folderPath = "D:\images\";

OmrEngine engine = new OmrEngine();

// Imposta il modello per il riconoscimento
TemplateProcessor templateProcessor = engine.GetTemplateProcessor(templatePath);

// Riconosci le immagini dalla cartella
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);
}

Ottieni la licenza API gratuita

Puoi valutare l’API senza alcuna limitazione richiedendo una Licenza temporanea gratuita.

Conclusione

In questo articolo hai imparato a riconoscere un’immagine da un MemoryStream usando OMR in C#. Discute anche del riconoscimento di tutte le immagini in una cartella e del salvataggio del risultato di output come CSV, valori separati da virgole, file. Inoltre, puoi dare un’occhiata ad altre funzionalità dell’API visitando la Documentazione. Puoi sempre contattarci al Forum di supporto gratuito per qualsiasi tua preoccupazione.

Guarda anche