Class for reading business card fields.
public class BusinessCardReader
This object detects and recognizes business card fields that contain name, email, title, company, address, website, phone, fax, mobile, office, and QRCode.
using Leadtools;
using Leadtools.Codecs;
using Leadtools.Forms.Common;
using Leadtools.Ocr;
using Leadtools.Forms.Commands;
using Leadtools.Barcode;
public void TestBusinessCardReader()
{
// Initialize the RasterCodecs class
RasterCodecs codecs = new RasterCodecs();
// The business card image
string chequePath = Path.Combine(LEAD_VARS.ImagesDir, "original.jpg");
RasterImage image = codecs.Load(chequePath);
//Start up barcode
BarcodeEngine barcodeEngine = new BarcodeEngine();
//Start up Ocr engine
IOcrEngine ocrEngine = OcrEngineManager.CreateEngine(OcrEngineType.LEAD);
ocrEngine.Startup(codecs, null, null, LEAD_VARS.OcrLEADRuntimeDir);
// Initialize the BusinessCardReader class
BusinessCardReader BCReader = new BusinessCardReader(ocrEngine, barcodeEngine);
BCProcessStatus status = BCReader.Process(image);
if (status == BCProcessStatus.BlurDetected)
Console.WriteLine("Blur detected in image: " + this);
else if (status == BCProcessStatus.GlareDetected)
Console.WriteLine("Glare detected in image: " + this);
else if (status == BCProcessStatus.Failed)
Console.WriteLine("Failed to recognize image: " + this);
else if (status == BCProcessStatus.Success)
{
if (BCReader.Results != null)
{
foreach (var res in BCReader.Results)
{
LeadRect bounds = res.Value.Bounds;
Console.WriteLine(string.Format("Field Name : {0}", res.Key));
Console.WriteLine(string.Format("Field Value : {0}", res.Value.Value));
Console.WriteLine(string.Format("Field Confidence : {0}", res.Value.Confidence));
Console.WriteLine(string.Format("Field Bounds : {0},{0},{0},{0}", bounds.X.ToString(), bounds.Y.ToString(), bounds.Width.ToString(), bounds.Height.ToString()));
Console.WriteLine("************************************");
}
}
}
ocrEngine.Shutdown();
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\LEADTOOLS22\Resources\Images";
public const string OcrLEADRuntimeDir = @"C:\LEADTOOLS22\Bin\Common\OcrLEADRuntime";
}