彩票走势图

OCR识别控件LEADTOOLS HTML5案例:整页OCR识别

原创|使用教程|编辑:郝浩|2013-08-14 11:12:19.000|阅读 767 次

概述:由于移动设备的处理能力和储存空间限制,在移动设备上执行光学字符识别(OCR)一直以来都是一项较大的挑战。随着LEADTOOLS HTML5的出现,在移动设备上执行光学字符识别(OCR)变成可能。凭借LEADTOOLS HTML5提供的HTML5查看器和RESTful Web服务,开发人员可以在任何桌面,平板电脑和移动设备上面创建难以置信的光学字符识别(OCR)应用程序。

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

由于移动设备的处理能力和储存空间限制,在移动设备上执行光学字符识别(OCR)一直以来都是一项较大的挑战。随着LEADTOOLS HTML5的出现,在移动设备上执行光学字符识别(OCR)变成可能。凭借LEADTOOLS HTML5提供的HTML5查看器和RESTful Web服务,开发人员可以在任何桌面,平板电脑和移动设备上面创建难以置信的光学字符识别(OCR)应用程序。接下来,我们将展示如何在通过RESTful Web服务实现整页识别

在无需下载大型的语言识别库和可执行文件的情况下,LEADTOOLS OCR RESTful Web服务提供了一项非常简便的方法将OCR识别添加到应用程序。通过简单的参数设置,并返回一个易于解析的带有文本的JSON结构。

通过查看器内置的rubber band事件,选择一块矩形区域。使用鼠标点击,并拖动鼠标,或者在触屏上滑动手指,用户可以在图像上选择一块矩形区域,然后处理事件,并将坐标传递到Web服务。一旦服务完成处理任务,接下来用户就可以使用JSON来解析响应并根据应用程序需要来显示或者使用所识别的文本。下面的例子,我们只是简单地显示了提示框中的文本。

_selectRecognizeArea_RubberBandCompleted$1: function HTML5DemosLibrary__ocrDemo$_selectRecognizeArea_RubberBandCompleted$1(sender, e) {
// Get the selected area and use that as a zone for the OCR service
var searchArea = Leadtools.LeadRectD.fromLTRB(e.get_point1().get_x(), e.get_point1().get_y(), e.get_point2().get_x(), e.get_point2().get_y());
var visibleRect = _viewer.imageControlRectangle(true);
searchArea.intersect(visibleRect);
searchArea = _viewer.convertRect(Leadtools.Controls.CoordinateType.control, Leadtools.Controls.CoordinateType.image, searchArea);
if (searchArea.get_width() > 3 && searchArea.get_height() > 3) {
this._recognize$1(searchArea);
}
},

_recognize$1: function HTML5DemosLibrary__ocrDemo$_recognize$1(searchArea) {
// display the loading gif while we wait
this.beginOperation();

// build the service request
var rest = this.buildServiceUrl('ocr.svc');
rest += '/GetText?uri=';
rest += _viewer.get_imageUrl();
var imageSize = _viewer.get_imageSize();
rest += '&width=';
rest += parseInt(imageSize.get_width());
rest += '&height=';
rest += parseInt(imageSize.get_height());
if (!searchArea.get_isEmpty()) {
// no selection was made, recognize the whole image
rest += '&left=';
rest += parseInt(searchArea.get_left());
rest += '&top=';
rest += parseInt(searchArea.get_top());
rest += '&right=';
rest += parseInt(searchArea.get_right());
rest += '&bottom=';
rest += parseInt(searchArea.get_bottom());
}

// create the request and event handler
var request = new XMLHttpRequest();
var _this = this;
var readyStateChanged = function() {
if (request.readyState === 4) {
if (request.status === 200) {
var results = null;
if (request.responseText != null && request.responseText.length > 0) {
results = JSON.parse(request.responseText);
}
else {
alert('No text was found in the specified area, please select another area that contains text and try again.');
}
request.onreadystatechange = null;
request = null;
_this.endOperation(false);
if (results != null) {
alert (results);
}
}
else {
_this.showRequestError(request);
}
}
};

// send the request
request.onreadystatechange = readyStateChanged;
request.open('GET', rest, true);
request.send();
},

OCR识别控件LEADTOOLS HTML5案例:整页OCR识别

OCR识别控件LEADTOOLS HTML5案例:整页OCR识别

运行上面的代码,你会发现如果没有矩形传递给识别功能,LEADTOOLS会创建一个完整的图像然后调用web服务。因此,你需要创建一个非常简单的按钮处理程序来完成整页识别。

var recognizeButton = document.getElementById('recognizeButton');
recognizeButton.addEventListener('click', function(e) {
// recognize the entire image by sending an empty zone
_this._recognize$1(Leadtools.LeadRectD.get_empty());
}, false);

标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@pclwef.cn

文章转载自:慧都控件网

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
相关产品
LEADTOOLS Document Suite Developer Toolkit

LEADTOOLS Document Imaging Suite SDK是LEADTOOLS SDK中各种特点的精选组合,这套强大的工具利用了LEAD行业领先的图像处理技术来智能地识别文档的特征,而根据文档的特征可以识别扫描的或传真的任何类型的表格图像。

LEADTOOLS Document Imaging Developer Toolkit

多语言的文档图像处理控件,支持光符识别处理、条形码扫描识别等。

LEADTOOLS Document HTML5 Module

LEADTOOLS Document HTML5帮您开发强健、轻量级的跨平台文档图像处理应用程序。

LEADTOOLS Imaging HTML5 Module

LEADTOOLS Imaging HTML5 Module帮您开发强健、轻量级的跨平台图像应用程序

扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP