OMR Check Box SDK
OMR SDK è una libreria che consente il riconoscimento delle caselle di marcatura (check box).
Caratteristiche principali.
Il motore di riconoscimento OMR (Optical Mark Recognition) consente di lavorare con due parametri operativi, valutando sia la quantità d'inchiostro presente che la misura del segno nella casella.
Percentuale riempimento inchiostro Estensione del segno I vantaggi di un doppio riconoscimento Accuratezza e velocità (royalties-free) La libreria restituisce il valore di riempimento inchiostro ed il valore di estensione del segno. Il kit di sviluppo per riconoscimento caselle di marcatura è disponibile in versione royalties free che consente di installare fino a 1000 licenze senza alcun costo aggiuntivo.
Di seguito un esempio di codice per utilizzare la libreria:
Code Sample #include "stdafx.h" #include "recoomr.c" int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { // Load dynamically the library LoadOMRLibrary(); // Init the OMR session int Session= OMR_Init("demo", "demo"); long hBitmap; // Check if a DIB is available in clipboard bool bAvail= IsClipboardFormatAvailable(CF_DIB); hBitmap = 0; if (bAvail) { // Open the Clipboard ::OpenClipboard(NULL); // Retrieve the DIB from clipboard hBitmap = (long) GetClipboardData(CF_DIB); // Recognize a check box in fixed position OMR_Recognize (Session, (long) hBitmap, 20, 50, 40, 70); // Close the Clipboard ::CloseClipboard(); // Retrieve the ink percentage (0 – 100) double dInk; OMR_GetMarkDensityPercent (Session, &dInk); // Retrieve the check percentage (0 – 100) double dCheck; OMR_GetMarkSizePercent (Session, &dCheck); double dInkThreshold = 10F; double dCheckThreshold = 60F; // Compare the percentages with the thresholds if ((dInk>=dInkThreshold) && (dCheck>=dCheckThreshold)) { // The check box is checked MessageBox(NULL, "Checked ! ", "RESULT", MB_OK); } else { if ((dInk<dInkThreshold) && (dCheck<dCheckThreshold)) { // The check box is unchecked MessageBox(NULL, "Unchecked ! ", "RESULT", MB_OK); } else { // The check box status is unknown MessageBox(NULL, "Unknown! ", "RESULT", MB_OK); } } } // Show an error message else MessageBox(NULL, "Unable to paste DIB", "ERROR", MB_OK); // Close the session OMR_Done(Session); // Unload the library FreeOMRLibrary(); return 0; } |
Demo e versione di Valutazione
E' anche possibile scaricare una versione di valutazione di questo prodotto per Visual Basic, Visual C++ o Delphi.
La versione di valutazione include la libreria, il manuale di riferimento ed una applicazione DEMO.
Per richiedere la valutazione scrivi a: info@byteway.it , oppure telefona allo 02 3809 3651

