999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Android的視力測試儀設計

2021-06-28 08:06:44姚遠高永培
電子測試 2021年6期
關鍵詞:人臉識別用戶

姚遠,高永培

(華中師范大學物理科學與技術學院,湖北武漢,430079)

0 引言

近年來中小學生由于課內外用眼過度、用眼不衛生,我國兒童青少年近視率居高不下[1],特別是隨著智能手機、平板電腦及電視的普及,新冠疫情下在線學習的大力開展,青少年近視問題越發嚴重,近視防控迫在眉睫。視力保護首先要測試視力,目前常用的視力檢測方法有視力表檢測法和驗光法。1990年我國將標準對數視力表確定為我國視力檢查的法定視力表;驗光法是檢查光線入射眼球后的聚集情況,以正眼狀態為標準,測出受檢眼與正視眼間的聚集差異程度,可以初步測出眼球變形情況[2]。目前的視力檢測方法存在許多限制,首先驗光法只能在醫院或眼睛配制中心等具有驗光設備的地點進行,花銷大且耗費時間;視力表檢測法通常需要別人的協助完成,效率較低,且人眼和視力表的距離難以把控,導致測試結果有一定的誤差。其次目前的視力檢測方法對歷史測試數據不能進行網絡化保存和管理,無法形成視力變化趨勢圖,用戶無法實時長期直觀地了解自己的視力變化情況,因此開展新型視力測試儀的研制具有重要意義和應用價值。

1 視力測試儀架構

基于Android的視力測試儀主要包括測試端APP、手機端APP和云端三部分。測試端由Android平板、USB攝像頭和超聲波測距模塊組成,其中USB攝像頭負責采集實時人臉圖像,超聲波測距模塊負責測量測試儀和用戶之間的距離;手機端APP是供用戶個人測試使用,在連接平板熱點后,實現測試距離、字符方向等信息的同步;云端負責存儲用戶賬號信息以及視力測試結果,系統架構如圖1所示。

圖1 視力測試儀架構

2 基于DLib的人臉識別

人臉識別技術廣泛運用于社會生活的身份驗證、視頻監控、人機交互等不同領域[3]。為保障視力測試數據的有效和可溯,測試儀采用人臉識別技術對用戶進行身份認證。人臉識別包含三個關鍵步驟:人臉檢測、特征提取和特征比對,本文使用Opencv+Dlib來實現人臉識別,Opencv是一個圖像處理和計算機視覺的開源庫,主要負責圖片的加載和灰度化等預處理操作;Dlib是一個包含機器學習算法的開源工具包,承擔主要的人臉識別工作。

人臉檢測是在一幀圖像中確定是否存在人臉,如果存在則給出人臉的個數、大小、位置等信息[4]。Opencv和Dlib自身都帶有人臉的分類器,我們可以使用它們方便快速地實現人臉檢測,也可以自己收集數據集訓練自己的分類器。Opencv的人臉分類器是使用經典的基于Harr特征的AdaBoost人臉檢測算法來訓練的,它的核心思想是首先由擴展的Harr特征生成一系列的弱分類器,然后將這些弱分類器組合成一個強分類器,最后再通過級聯的方式將多個強分類器連接起來。Dlib的人臉檢測器是使用基于HOG特征和svm的線性分類器進行訓練得到,HOG特征是一種局部特征描述符,通過計算和統計局部區域上的梯度方向直方圖得到圖像的特征信息,svm(支持向量機)是一種尋求最優分類線的機器學習方法。筆者對Opencv和Dlib自帶的人臉分類器進行了測試,Dlib人臉識別的速度比Opencv稍快,且效果較Opencv好,因此使用Dlib進行人臉的檢測。

人臉特征提取是在一張人臉中提取表征面部信息的特征點。Dlib中有68個人臉關鍵點的庫存文件,截取到人臉區域后,使用此模型提取目標人臉的68個特征點,之后Dlib會將68個特征點處理為51個特征點進行人臉對齊,其中對齊 函 數 get_face_chip_details(shape,size,padding)中有兩個關鍵參數:size指定對齊后的人臉大小,padding指定人臉對齊區域的比例,其值越高對齊后的人臉區域越收斂,本文分別設置為160和0.25。

完成人臉特征點的提取和人臉對齊后,接下來進行特征點的比對來找出最匹配的圖像。ResNet是一種卷積神經網絡,它引入了殘差網絡結構,解決了傳統CNN隨著網絡層數加深出現的梯度爆炸問題,使網絡的深度可以不斷增加,從而提高模型的精準度[5]。本文使用ResNet34神經網絡算法將特征點轉變為128維向量,然后計算與數據庫中樣本人臉的128維向量之間的歐式距離,計算公式為:

式中x1i,x2i是N維歐式空間的兩點。歐式距離越小,兩張人臉的相似度越高,當小于設定的閾值時,認為是同一張人臉,本文設定為0.5。

本文使用C++語言實現上述算法,然后使用Android ndk工具將C++代碼編譯成動態庫,將動態庫引入到Androird工程中供其調用。

3 超聲波測距

視力測試需要測量人眼到字符的相對距離,超聲波測距實現簡單、精度較高,是目前常用的測距方式之一[6],原理為:發射器向某一方向發射頻率在40KHz的超聲波,發射出去的超聲波在介質中傳播,當遇到障礙物時返回,接收器接收返回的超聲波,通過測得超聲波往返時間t,再根據超聲波在介質中的傳播速率c就可以計算出彼此之間的距離,計算公式為:

超聲波測距模塊由stm32單片機和HC-SR04超聲波模塊組成,HC-SR04有四個引腳:Vcc、Gnd、Trig、Echo,分別與單片機的Vcc、Gnd、兩個IO口相連,工作原理為:首先單片機給HC-SR04的Trig口一個10us以上的高電平,HCSR04自動向前方發送8個40KHz的方波,然后自動檢測是否有信號返回;如果有信號返回,HC-SR04的Echo口會向單片機輸出一個高電平,高電平的持續時間即為超聲波的往返時間,單片機根據式(2)計算距離,通過串口將結果傳輸到Andorid平板的串口。

4 視力測試儀設計與測試

測試端的硬件配置為:①Android平板:RK PX30,CPU主頻 1.3GHz,Android 8.0系 統,4路 TTL 3.3V電平串口,2路USB 口;②USB攝像頭:CAM5031-V5,分辨率為1280*720;③超聲波模塊:HC-SR04;④單片機:stm32f103RBT6。

測試端和手機端APP的開發平臺為Android Studio,軟件環境為JDK 1.8,Android SDK 8.0和Android ndk-r16。

4.1 測試端app設計

測試端app主界面分為四個功能區域:姓名和距離顯示區、人臉識別區、注冊和歷史記錄以及測試字符顯示區,如圖2所示。人臉識別區首先顯示預覽的圖像,如果有人臉則框出人臉,再跟數據庫存儲的特征信息進行比對,如果比對成功,則在右上角顯示匹配的人像,并顯示姓名;如果比對失敗,說明人臉還未注冊,則在下面的注冊區輸入姓名進行注冊。

圖2 測試端App界面

4.2 手機端App設計

手機端App的功能模塊包括用戶注冊、登錄模塊、視力測試模塊以及用戶信息模塊。注冊和登錄模塊負責用戶賬號的注冊和登錄;視力測試模塊供用戶視力測試使用;用戶信息模塊負責顯示用戶賬號信息、修改密碼和查詢視力測試記錄。由于本系統需要展現視力的變化情況,故采用折線圖的方式。登錄界面、視力測試界面和歷史記錄界面如圖3所示。

圖3 手機端App界面

在視力測試界面中,用戶根據顯示的距離調整到3m的測試位置,在上面選擇自己所看到的測試字符的方向。由于標準對數視力表制定的視力值的范圍為4.0-5.3,選取中間值4.7對應的字符作為平板初始顯示的字符。一個視力值對應的字符會顯示四次,方向隨機,用戶在手機上選擇看到的方向。如果選對3次或以上,認為用戶視力至少達到了此值,則將視力值提高一個水平,直到用戶選對的次數少于3次,測試結束;如果選對少于3次,則將視力值降低一個水平,直到用戶選對的次數在3次或以上,測試結束。

4.3 手機端APP和測試端APP的通信

測試過程中需要實現手機端APP和測試端APP的距離和測試字符等信息的同步,本文通過平板的熱點實現兩者之間的通信。測試前手機連接上平板的熱點,手機APP通過WifiManager類的getConnectionInfo()方法和getDhcpInfo()方法分別獲得本機和平板的IP地址,然后使用Socket套接字進行連接,連接成功后通過Socket類的getInputStream()和getOutputStream()獲得輸入流和輸出流后新建線程進行數據傳輸。

4.4 云端設計實現

云端作為系統的后臺,使用阿里云服務器,采用SSM(Spring+Spring MVC+Mybatis)設計模式,項目部署在Tomcat服務器上。SSM開發模式將系統劃分為表示層、業務層和數據持久層[7],邏輯清晰,開發和維護方便,是目前企業中常用的開發模式。表示層負責接收APP發送的請求和向APP返回響應;業務層負責進行相應的業務邏輯處理;數據持久層負責和mysql數據庫進行交互,對視力測試數據進行持久化操作。APP和云端的數據交互通過get/post網絡請求實現,APP中使用java.net包中的HttpURLConnection類向服務器發送請求,數據以json格式進行封裝,使用fastjson庫封裝和解析。

4.5 測試數據存儲

每次視力測試的結果都應該保存起來,方便人們掌握視力的變化情況。Andorid系統常用的數據存儲方式有Share Preferences存儲、文件存儲、SQLite數據庫存儲和網絡存儲等[8]。在開發過程中,要根據實際應用程序的特點合理地選擇存儲方式??紤]到本系統需要對歷史記錄頻繁地進行插入和查詢操作,因此選擇SqLite3數據庫將視力測試結果存儲到本地,并通過網絡傳輸發送至云端進行存儲。測試記錄表tb_records如表1所示。

表1 tb_records

uname varchar NOT NULL 姓名time date NOT NULL 時間result float NOT NULL 測試結果

4.6 測試

用戶在手機上安裝測試app后再連接上測試android平板的熱點進行通信,人臉識別的距離大概為0.5米,視力測試的測試距離為3m,根據對數視力表的標準等比例調節測試字符大小,測試的主要流程如圖4所示。

圖4 視力測試流程圖

本文選取了6名測試者進行系統的測試,均正確識別出了測試人員,人臉識別平均耗時1.3s,平均總用時35s,測試結果表明,系統使用方便,運行穩定,與傳統的視力測試相比,節省了人力、時間等資源。

5 結論

本文設計了一種基于Android平臺的視力測試儀,介紹了人臉識別和超聲波測距的實現方法、App的設計以及視力測試的流程,借助該系統用戶可以個人自主完成身份認證、視力測試以及測試結果的追朔。系統使用方便、界面友好,未來可應用到家庭、學校及醫院,實時跟蹤視力變化,對推動視力保護有一定的積極意義。

猜你喜歡
人臉識別用戶
人臉識別 等
作文中學版(2022年1期)2022-04-14 08:00:34
揭開人臉識別的神秘面紗
學生天地(2020年31期)2020-06-01 02:32:06
基于(2D)2PCA-LBP 的人臉識別方法的研究
電子制作(2017年17期)2017-12-18 06:40:55
人臉識別在高校安全防范中的應用
電子制作(2017年1期)2017-05-17 03:54:46
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
基于類獨立核稀疏表示的魯棒人臉識別
計算機工程(2015年8期)2015-07-03 12:19:07
Camera360:拍出5億用戶
創業家(2015年10期)2015-02-27 07:55:08
100萬用戶
創業家(2015年10期)2015-02-27 07:54:39
主站蜘蛛池模板: 亚洲精品成人7777在线观看| 国产男女免费视频| 久久人体视频| 久久人午夜亚洲精品无码区| 91精品国产麻豆国产自产在线| 无码精油按摩潮喷在线播放| 91探花在线观看国产最新| 国产精品亚洲一区二区三区z| 国产无套粉嫩白浆| 四虎成人精品在永久免费| 国产成人福利在线| 国产jizzjizz视频| 国产麻豆91网在线看| 色综合五月婷婷| 全色黄大色大片免费久久老太| 久久久久久久久亚洲精品| 毛片免费网址| 久热中文字幕在线观看| 久久99国产乱子伦精品免| 欧洲成人在线观看| 日韩高清成人| 日韩人妻无码制服丝袜视频| 一级福利视频| 国产精品午夜福利麻豆| 欧美精品H在线播放| 最新日本中文字幕| 波多野结衣在线一区二区| 国产欧美中文字幕| 丁香婷婷激情网| 亚洲色图综合在线| 国产亚洲精品va在线| 免费在线成人网| 国产99在线| 精品成人一区二区三区电影| 国产精品无码制服丝袜| 国产在线第二页| 国产青榴视频在线观看网站| 91国内外精品自在线播放| 亚洲人视频在线观看| 国产爽爽视频| 久久精品这里只有国产中文精品| 五月天久久综合国产一区二区| 精品国产成人三级在线观看| 国产福利在线免费| 亚洲欧洲自拍拍偷午夜色| 亚洲V日韩V无码一区二区| 亚洲中文字幕手机在线第一页| 精品无码人妻一区二区| 欧美性色综合网| 99无码熟妇丰满人妻啪啪 | 91免费片| 婷婷亚洲天堂| aaa国产一级毛片| 亚洲av综合网| 美女一级毛片无遮挡内谢| 丁香五月激情图片| 无码日韩精品91超碰| 国产欧美日韩va| 69免费在线视频| 日本人妻丰满熟妇区| 国产一级毛片在线| 国产精品人成在线播放| 国产凹凸视频在线观看| 国产无码精品在线播放| 日本久久网站| 高清欧美性猛交XXXX黑人猛交| 亚洲天堂在线免费| 亚洲综合极品香蕉久久网| 最近最新中文字幕在线第一页| 在线观看免费人成视频色快速| 久久永久免费人妻精品| 一级一级一片免费| 999国内精品视频免费| 亚洲日韩精品伊甸| 99激情网| 成人亚洲国产| 午夜a视频| 在线va视频| 国产精品亚欧美一区二区| 好吊色国产欧美日韩免费观看| 男人的天堂久久精品激情| 54pao国产成人免费视频|