国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

用虛谷號搭建文檔高拍儀原型

2021-11-14 13:17羅亮王盼盼
中國信息技術教育 2021年21期
關鍵詞:原型開源文檔

羅亮 王盼盼

浙教版高中信息技術教材《數據與計算》,有一個答題卡填圖識別算法解析示例,因為貼近生活,學生們都很感興趣。這個案例可以進一步拓展,如通過文檔高拍儀對答題卡數據進行采集,那就能實現一個真實的答題卡識別工具。當然,最好的拓展莫過于自己搭建一個功能更加強大的智能文檔高拍儀原型,那樣不僅可以識別答題卡,還可以識別文字、二維碼之類。

文檔高拍儀原型的功能分析

文檔高拍儀的基本功能是圖像采集,增強功能是光學字符識別、條碼識別等。圖像采集分辨率是決定高拍儀型號的重要依據,像素太高,對圖片的處理速度和傳輸會提出新的要求,一般來說,500W像素比較合適??梢?,文檔高拍儀的原型在硬件方面要求很低,選擇任何一款迷你電腦再結合攝像頭即可。

在學校眾多的開源硬件中,學生選擇虛谷號作為核心硬件。虛谷號是一個面向人工智能教學和Python編程學習的開源硬件平臺,板內集成高性能處理器和通用單片機、兼容Arduino,可掛載攝像頭等各種通用外設,可以外接鍵盤顯示器成為獨立主機,也可以自帶電源獨立運行Arduino、Python程序進行相應信息處理。想象一下,虛谷、充電寶、攝像頭組合在一個外殼之中,形成手持設備,隨走隨拍,是多么方便的事情啊。

圖像采集完成以后,可以嘗試使用開源的光學字符識別軟件進行字符識別或者使用百度大腦AI開放平臺的圖片文本識別功能??晒┻x擇的基于Python的開源光學字符識別軟件有darknet-ocr、Pyocr、pytesser、Tesseract OCR、CNOCR。這些開源軟件各有擅長之處,CNOCR適合識別圖片中的中文,但該開源軟件需要在Windows平臺下進行識別,所以筆者最終還是采用調用百度AI功能實現文檔高拍儀的增強功能。

使用高拍儀肯定需要了解當前工作狀態(tài),虛谷號自帶的LED燈則派上了用場。當然,也可以加一塊小型的OLED顯示屏。經過以上分析,可以得到文檔高拍儀原型所需軟硬件,如圖1所示,對應處理流程如圖2所示。

文檔高拍儀原型功能實現

筆者采用模塊化思想將高拍儀功能分解細化,逐一實現,然后合并功能,大致分成圖片采集、啟動處理、狀態(tài)表示、OCR識別、結果呈現五大方面。

1.圖片采集

圖片采集是視覺處理Opencv模塊的一個基本功能。筆者將USB攝像頭通過USB連接上虛谷號之后,就完成了硬件準備。frame代表攝像頭采集的像素內容,后期需要對frame進行集中處理。在“測試場景”窗口為當前活動窗口的情況下,按'q'鍵退出圖片采集,按's'鍵將采集的圖像以文件形式保存。在后期功能合成時,如cv.imshow、cv. destroyAllWindows這些與目標功能達成不一致且耗費資源的代碼可以略過不予使用。相關關鍵性程序代碼如圖3所示。

2.啟動圖片采集識別

一般情況下,高拍儀通過按鍵方式實現拍照。虛谷號自身沒有按鍵,只是預留有相關接口。若要啟動圖片采集功能,可以采取使用虛谷號擴展板或通過攝像頭采集識別圖片或聲音中的特殊標志來實現。由于已經采用攝像頭來采集圖片而且OpenCV視覺處理可以涉及輪廓檢測,因此可以劃過與被采集場景背景對比強烈的純色物品,只要虛谷號識別出該物品輪廓面積在一定范圍內,就表示開始啟動拍照采集。相關關鍵性程序代碼如圖4所示。

3.工作狀態(tài)顯示

虛谷號兼容Arduino,自帶一個可程序控制的LED。從虛谷號開機到準備進入圖片采集狀態(tài)再到圖片采集進行中都可以借助該LED的不同頻率的亮和滅來表示對應的狀態(tài)。實現狀態(tài)顯示的程序代碼與借助pinpong庫來實現基本一致,亮燈滅燈的次數、亮燈持續(xù)時間、滅燈持續(xù)時間,可以通過一個自定義函數實現。例如,ledstatus(led,5,0.2,0.2)表示等待啟動;ledstatus(led,3,1,1)表示已采集1張圖片;ledstatus(led,2,2,0.5)表示圖片識別完成,可通過客戶端查看識別結果。狀態(tài)顯示相關模塊代碼使用簡單通用適應各類開源硬件的pinpong庫完成,如上頁圖5所示。

4.OCR識別

圖片采集后,可以考慮文檔高拍儀增強功能實現。從實現途徑便捷性與OCR識別效果角度考慮,最終決定還是使用調用百度API的方式來實現OCR識別。訪問百度AI開放平臺,注冊成為百度開發(fā)者并創(chuàng)建應用后就能得到相應的AppID、API Key、Secret Key信息。根據圖6所示的調用百度AI文本識別示例代碼可以完成單張圖片中的文字識別。

經過測試,在同等條件下,采用百度API調用方式識別效率比使用開源OCR軟件識別效率更高。

5.識別結果呈現

每次文字識別結果可以直接累加存儲在單個文本文件中,也可以格式化為網頁文件。針對該存儲識別結果的文件可以通過建立Http服務,讓任何一臺與虛谷迷你電腦聯網的客戶端查閱。

虛谷自帶WIFI而且安裝了Python,建立Http服務的代碼很簡單而且實用,格式如下:

python3 -m http.server 8000

該代碼含義為指定虛谷迷你電腦當前文件夾為Http服務根目錄,指定訪問端口為8000。

與虛谷迷你電腦聯網的任何一臺客戶端都可以打開瀏覽器,輸入訪問網址(http://虛谷迷你電腦IP:8000/)查閱識別結果。

文檔高拍儀原型功能改進

經過測試,以虛谷號為核心完成的文檔高拍儀原型能夠基本完成預設的功能,但在調試過程中還發(fā)現存在一些問題,還需要不斷迭代完善,如:

①攝像頭的分辨率不高而且變焦過慢,導致抓拍圖像并不清晰;

②缺少補光功能導致被拍攝對象本身呈現的亮度不一致,影響后期的文字識別;

③適當增加虛谷號的傳感控制與狀態(tài)表示,更有利于操作者理解操作進程;

④運用OPENCV視覺處理能力有待進一步加強,如調整對比度、銳化、降噪等。

運用虛谷號結合攝像頭實現文檔高拍儀功能,是一個典型的開源硬件項目,雖然解決的過程有些坎坷,但收獲很多。教師在學生的技術基礎上,給予學生觸手可及的創(chuàng)意方案庫,充分調動學生的創(chuàng)意,結合實際場景,讓他們不斷提出新的需求,不斷挑戰(zhàn)新的難題,做出實踐性很強的解決方案。類似虛谷號的迷你電腦能玩的項目其實非常多,如視覺處理眼睛控制鼠標實現媒體互動、視覺處理無人機禁飛區(qū)域判斷等,希望有更多的老師帶著學生一起探究。

猜你喜歡
原型開源文檔
淺談Matlab與Word文檔的應用接口
校園武術“學、練、賽”一體化實踐探索
一起來探案
有人一聲不吭向你扔了個文檔
輕松編輯PDF文檔
包裹的一切
五毛錢能買多少頭牛
2019(第十四屆)開源中國開源世界
2019開源杰出貢獻獎
人人敬愛的圣人成為了 傳說人物的原型
乐至县| 乾安县| 太保市| 诸暨市| 林甸县| 沅江市| 岑溪市| 威信县| 巢湖市| 德兴市| 东乡| 龙州县| 上犹县| 时尚| 来安县| 镇坪县| 宁波市| 阳江市| 鲜城| 甘南县| 隆回县| 和政县| 湾仔区| 涞水县| 吕梁市| 凭祥市| 石阡县| 遵义县| 新邵县| 休宁县| 扎鲁特旗| 松原市| 和硕县| 保靖县| 定兴县| 达孜县| 黄山市| 砚山县| 阿瓦提县| 夏邑县| 六枝特区|