OMR Recognition Engine - OMR sdk
buy on-line Recogniform Reader download evaluation version info
Capabilty: our OMR (Optical Mark Recognition) engine allows to recognize check boxes, printed with blind ink or not.
Accuracy: OMR recognition engine's accuracy is almost 100%, even in case of not good quality typed and scanned images. Even with low quality images, the error rate is extremely low.
Technology: our engine is based on an exclusive double analysis: ink percentage and sign extension. This allows to reach extraordinary results, compared to all OMR engines available (mostly based on ink percentage only).
Speed: speed is linked to cpu speed. Using Pentium IV processors, you can recognize a 600 check boxes page in less than 0.5 seconds.
Input: monochrome bitmaps.
Output: output is made up by ink percentage and sign extension values.
Platform: all of the Windows 95/98/NT/Millennium/2000/Xp/Vista/7 platforms are supported .
Packaging: the engine is packaged in DLL format.
Licensing: Royalties-free. Buy the SDK and distribute up to 1.000 runtimes!
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;
}
Evaluation Version
You can download an evaluation version of this product for Visual Basic, Visual C++ or Delphi.
Price & Ordering Info
Recogniform OMR sdk price is 1.499,00 eur.
The library is royalties free so you can distribute up to 1.000 runtimes without paying any licenses fee.
You can order on-line in our e-commerce store or using our contacts page.
Further Info
For more information about Recogniform OMR engine, please use our contacts page or click here.