OCR的百度定義(Optical Character Recognition,光學字符識別)是指電子設備(例如掃描儀或數碼相機)檢查紙上打印的字符,通過檢測暗、亮的模式確定其形狀,然後用字符識別方法將形狀翻譯成電腦文字的過程;即,針對印刷體字符,採用光學的方式將紙質文檔中的文字轉換成為黑白點陣的圖像文件,並通過識別軟體將圖像中的文字轉換成文本格式,供文字處理軟體進一步編輯加工的技術。
作為一個工程師,在實際程式設計中,可能需要把圖片中的文字顯示出來,這就需要用到ocr技術。因為php開發,所以優先選擇php,找了php的ocr擴充測試了下,結果發現不可用(網址:http://sourceforge.net/projects/phpocr.berlios)? 網路上也看了很多朋友的demo,基本上原理都是對圖片分解成0,1矩陣,然後根據特徵,轉換成對應的字串。測試幾個都是不可行的。然後看到別人說PHP 搞OCR的很少,也不適合,語言效率太低,這種演算法需要很高的效率。可以嘗試C,MATLAB 等的OCR演算法。搞matlab的玩OCR這類偏演算法的很多。
無奈才虛學淺,不會C。無意中卻發現百度有ocr的api提供:http://apistore.baidu.com/apiworks/servicedetail/146.html。
寫了個玩下:
<?php header("Content-type: text/html; charset=utf-8"); function curl($img){ $ch = curl_init(); $url ='http://apis.baidu.com/apistore/idlocr/ocr';//百度ocr api $header = array( 'Content-Type:application/x-www-form-urlencoded', 'apikey:69c2ace1ef297ce88869f0751cb1b618', ); $data_temp = file_get_contents($img); $data_temp = urlencode(base64_encode($data_temp)); //封装必要参数 $data="fromdevice=pc&clientip=127.0.0.1&detecttype=LocateRecognize&languagetype=CHN_ENG&imagetype=1&image=".$data_temp; curl_setopt($ch, CURLOPT_HTTPHEADER , $header);// 添加apikey到header curl_setopt($ch, CURLOPT_POST,1); curl_setopt($ch, CURLOPT_POSTFIELDS, $data);// 添加参数 curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); curl_setopt($ch , CURLOPT_URL , $url);// 执行HTTP请求 $res = curl_exec($ch); if($res === FALSE){ echo "cURL Error: ". curl_error($ch); } curl_close($ch); $temp_var = json_decode($res,true); return $temp_var; } $wordArr = curl('4.jpg'); if($wordArr['errNum']==0){ var_dump($wordArr); }else{ echo "识别出错:".$wordArr["errMsg"]; }

aphpdepentioncontiveContainerIsatoolThatManagesClassDeptions,增強codemodocultion,可驗證性和Maintainability.itactsasaceCentralHubForeatingingIndections,因此reducingTightCightTightCoupOulplingIndeSingantInting。

選擇DependencyInjection(DI)用於大型應用,ServiceLocator適合小型項目或原型。 1)DI通過構造函數注入依賴,提高代碼的測試性和模塊化。 2)ServiceLocator通過中心註冊獲取服務,方便但可能導致代碼耦合度增加。

phpapplicationscanbeoptimizedForsPeedAndeffificeby:1)啟用cacheInphp.ini,2)使用preparedStatatementSwithPdoforDatabasequesies,3)3)替換loopswitharray_filtaray_filteraray_maparray_mapfordataprocrocessing,4)conformentnginxasaseproxy,5)

phpemailvalidation invoLvesthreesteps:1)格式化進行regulareXpressecthemailFormat; 2)dnsvalidationtoshethedomainhasavalidmxrecord; 3)

tomakephpapplicationsfaster,關注台詞:1)useopcodeCachingLikeLikeLikeLikeLikePachetoStorePreciledScompiledScriptbyTecode.2)MinimimiedAtabaseSqueriSegrieSqueriSegeriSybysequeryCachingandeffeftExting.3)Leveragephp7 leveragephp7 leveragephp7 leveragephpphp7功能forbettercodeefficy.4)

到ImprovephPapplicationspeed,關注台詞:1)啟用opcodeCachingwithapCutoredUcescriptexecutiontime.2)實現databasequerycachingingusingpdotominiminimizedatabasehits.3)usehttp/2tomultiplexrequlexrequestsandreduceconnection.4 limitesclection.4.4

依赖注入(DI)通过显式传递依赖关系,显著提升了PHP代码的可测试性。1)DI解耦类与具体实现,使测试和维护更灵活。2)三种类型中,构造函数注入明确表达依赖,保持状态一致。3)使用DI容器管理复杂依赖,提升代码质量和开发效率。

DatabasequeryoptimizationinPHPinvolvesseveralstrategiestoenhanceperformance.1)Selectonlynecessarycolumnstoreducedatatransfer.2)Useindexingtospeedupdataretrieval.3)Implementquerycachingtostoreresultsoffrequentqueries.4)Utilizepreparedstatementsforeffi


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具

SublimeText3 Linux新版
SublimeText3 Linux最新版

WebStorm Mac版
好用的JavaScript開發工具

ZendStudio 13.5.1 Mac
強大的PHP整合開發環境