ocr文字识别html,LEADTOOLS 创建基于HTML5的零占用OCR文字识别
LEADTOOLS提供了屢獲獎項的文字識別OCR開發(fā)包。使用全新的HTML5查看器和RESTful Web服務(wù),你可以創(chuàng)建一個令人難以置信的識別應(yīng)用程序,它能夠運(yùn)行在任意的臺式電腦、平板電腦或移動設(shè)備上。無需犧牲移動設(shè)備的速度和功能,開發(fā)者現(xiàn)在可以享受到強(qiáng)大桌面應(yīng)用程序擁有的所有好處。由于應(yīng)用程序本質(zhì)上是跨平臺的,因此程序員可以節(jié)省很多時間以及測試的成本,在更新和維護(hù)應(yīng)用程序時擁有一個更平和的心態(tài)。
LEADTOOLS SDK HTML5&OCR的主要功能
· 用于跨平臺圖像查看的HTML5/JavaScript Viewer控件。
· 支持HTML5,可以運(yùn)行在任何臺式機(jī)、平板電腦或移動設(shè)備上的瀏覽器。
· 支持鼠標(biāo)和多點(diǎn)觸控(手勢)輸入。
· 交互模式包括:
a. 平移
b. 縮放
c. 區(qū)域縮放
d. 以點(diǎn)為中心縮放
e. 放大鏡
f. 合攏分開手指進(jìn)行縮放
g. 回彈效果
· 基于物理和邏輯單元顯示圖像。
· 圖像操作內(nèi)置以下動作:
a. 旋轉(zhuǎn)
b. 翻轉(zhuǎn)
c. 縮放
· 本地化的圖像注釋和標(biāo)記。
· 包含源碼,易于定制和品牌化。
· 擴(kuò)展LEADTOOLS RESTful Web服務(wù),添加高級功能,如擴(kuò)展后文件格式支持(TIFF、PDF、DOC、DICOM等),OCR和條碼。
· 快速、準(zhǔn)確、多線程的OCR文字識別引擎,用于桌面應(yīng)用程序或高性能的服務(wù)器環(huán)境。
· 整頁和區(qū)域OCR。
· 支持廣泛的語言和字符集,包括拉丁文、斯拉夫字母、東亞語言和阿拉伯語。
· 強(qiáng)大的文檔圖像清理和預(yù)處理功能
· 從任意顏色、灰度或黑白圖像中提取文本。
· 使用LEADTOOLS Cloud SDK輕松創(chuàng)建靈活的、強(qiáng)大的和高效的分布式OCR應(yīng)用程序。
包含 HTML5 & OCR文字識別技術(shù)的SDK產(chǎn)品
HTML5 / JavaScript Viewer控件
這個例子我們使用到HTML5 Image Viewer控件,展示了如何調(diào)用OCR RESTful web服務(wù)。文章中的示例并沒有包含所有代碼。
OCR RESTful Web服務(wù)
LEADTOOLS OCR RESTful Web 服務(wù)是將OCR功能添加到任意應(yīng)用程序中的簡單方法,無需下載龐大的語言識別庫和可執(zhí)行程序。它只需要一組簡單的參數(shù)(原始圖像和識別區(qū)域),并將結(jié)果以容易解析的JSON結(jié)構(gòu)返回。
在這個示例中,我們?yōu)槟故玖巳绾问褂脀eb服務(wù)執(zhí)行兩種類別的識別:部分的或整頁的。第一種通過使用查看器內(nèi)置的rubber band事件選擇一塊小區(qū)域完成。使用鼠標(biāo)單擊拖動或手指觸摸屏幕滑動,用戶可以在圖像中選擇一個矩形,觸發(fā)事件然后將它們的坐標(biāo)傳遞給后臺的web Service。
一旦服務(wù)按照onReadyStateChanged事件處理完成,你就可以使用JSON解析響應(yīng),根據(jù)應(yīng)用程序的需要顯示或使用識別出的文本。在下面的例子中,我們會在一個警告框中顯示文字。
_selectRecognizeArea_RubberBandCompleted$1:
function HTML5DemosLibrary__ocrDemo$
_selectRecognizeArea_RubberBandCompleted$1(sender, e) {
// 獲取選中的區(qū)域,將它作為OCR文字識別的一個區(qū)域
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) {
// 當(dāng)?shù)却龝r,顯示正在加載的圖片
this.beginOperation();
// 創(chuàng)建請求
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()) {
// 沒有選擇,則識別整個頁面
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());
}
// 創(chuàng)建請求和事件句柄
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);
}
}
};
// 發(fā)送請求
request.onreadystatechange = readyStateChanged;
request.open('GET', rest, true);
request.send();
},
你可能注意到了如果沒有給識別函數(shù)傳遞矩形,它會為整個圖像創(chuàng)建一個矩形,然后調(diào)用web服務(wù)。因此程序員需要做的只是創(chuàng)建一個簡單的按鈕事件處理器完成整個頁面的OCR。
var recognizeButton = document.getElementById('recognizeButton');
recognizeButton.addEventListener('click', function(e) {
// 發(fā)送一個空區(qū)域,識別整個圖像
_this._recognize$1(Leadtools.LeadRectD.get_empty());
}, false);
總結(jié)
LEADTOOLS為開發(fā)者提供了世界一流的穩(wěn)定圖像庫。易用的高級編程接口使業(yè)務(wù)關(guān)鍵型應(yīng)用程序的快速開發(fā)變?yōu)榭赡堋?/p>
HTML5和OCR RESTful Web服務(wù)是LEADTOOLS諸多功能中的一個。
標(biāo)簽:
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請郵件反饋至hey@evget.com
總結(jié)
以上是生活随笔為你收集整理的ocr文字识别html,LEADTOOLS 创建基于HTML5的零占用OCR文字识别的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: opencv 判断点在多边形内外
- 下一篇: 如何利用语音评测技术设计英语口语选择题