王志斌,丁萬春,李永新
(1.南京理工大學機械工程學院,南京 210018;2.易泰博商業(yè)設施(中國)有限公司,蘇州 215000;3.南京理工大學機械工程學院,南京 210018)
近些年來,隨著互聯(lián)網(wǎng)的迅猛發(fā)展,實體商場面對電子商務的挑戰(zhàn)愈發(fā)艱巨。構(gòu)筑良好的購物體驗與提供貼心的線下購物服務作為實體商場對抗電子商務的有力競爭手段,在業(yè)內(nèi)越來越得到重視。但是,商場導引作為顧客線下購物體驗的重要一環(huán)卻一直沒有較大的發(fā)展[1]。同時,人臉識別技術作為一種方便快捷、非侵入性的智能識別技術,在人們的生活中得到了越來越多的運用。本項目作為智能商場系統(tǒng)的一部分,采用了人臉識別技術,通過智能設備對顧客提供全自動的導引服務,應用前景無比廣闊。
根據(jù)調(diào)查,現(xiàn)有的人臉識別系統(tǒng)大都需要對使用者的人臉圖片進行儲存,但近些年來,人們的法律意識越來越強,人們對自己的肖像權(quán)也愈發(fā)重視,杭州等甚至已經(jīng)擬定了地方相關條例來限制人臉識別技術的應用。所以民用人臉識別技術想要繼續(xù)發(fā)展下去,必須做出一定改變來保護人們的隱私和肖像權(quán)。
本節(jié)對智能商場導引系統(tǒng)的需求與方案設計做出重點的分析,核心需求包括廣告控制、智能導引、商品查詢和自助結(jié)賬四個要素,方案設計將系統(tǒng)分為人臉錄入終端、人臉識別模塊和云端服務器三個部分。
大型商場中由于商品種類較多通常有著較多的分類區(qū)域,但導引、導購的方式還僅僅依靠商場進口的平面圖和指示牌,大量消費者對于自身想要前往的區(qū)域完全沒有了解。為解決消費者在商場中購物困難、路向不清等問題,結(jié)合人臉識別技術,以期利用一種非接觸、全自動的商場導引系統(tǒng)來處理此類狀況,它的核心需求主要包括以下幾個方面:
(1)消費者可以利用商場入口與出口處的智能終端對超市內(nèi)進行的促銷活動內(nèi)容以及商品的各類信息進行及時性的了解;
(2)商場的導引系統(tǒng)可以在消費者不依賴智能手機等移動終端的情況下進行導引工作;
(3)為商場管理者提供相應接口,使其可以通過系統(tǒng)實時發(fā)布優(yōu)惠信息與商品廣告。
(4)利用第三方支付平臺實現(xiàn)商品的自助結(jié)賬與小票打印功能。
以上4個核心需求基本上概括了系統(tǒng)設計的核心思想,它既包含多個客戶端,也包含了服務器端,目的在于研制一種基于人臉識別技術的商場導引軟件。在對上述需求具體闡述后,系統(tǒng)設計的主要使用目標為商場顧客與商場管理員,主要包括以下兩個方面:
(1)商場顧客:商場顧客是使用導引系統(tǒng)的主要服務目標,商場顧客可以與人臉錄入終端進行交互,對商場內(nèi)不同商品的信息進行查詢。且當目標在商場中進行購物時,系統(tǒng)可以為其提供導引信息;
(2)商場管理員:商場管理員使用系統(tǒng)后臺管理系統(tǒng),通過系統(tǒng)可以管理商品的資料與廣告投放,從而提高銷量,并完成相關記錄,包括商品位置信息與銷售信息等。
根據(jù)前一小節(jié)的需求分析以及商場實際環(huán)境,提出了如圖1所示的系統(tǒng)功能框架,受限于篇幅本文只介紹主要功能需求。
圖1 系統(tǒng)功能框架圖
結(jié)合1.2小節(jié)中系統(tǒng)的功能要求,提出商場導引系統(tǒng)的整體設計方案,主要可以分為以下三個部分:
(1)放置在商場入口與出口處的人臉錄入終端,主要為顧客提供商品查詢、廣告播放、會員資料查詢等功能。顧客可以通過該終端在進入商場前就對這家商場的商品和特色有一個大概的了解,極大地方便了顧客在商城內(nèi)的購物活動。同時該終端集成了一個人臉錄入子系統(tǒng),它在有顧客開始查詢物品信息后錄入操作該終端的顧客人臉信息,之后與顧客查詢的商品位置信息綁定并上傳至云端數(shù)據(jù)庫進行存儲。
(2)遍布在商場內(nèi)部智能貨架上的人臉識別模塊,該模塊實時掃描貨架前的顧客人臉信息,并與數(shù)據(jù)庫中的人臉信息進行識別。然后對識別出的顧客信息檢索出結(jié)合綁定的商品信息,再通過與人臉識別模塊相連的顯示屏將導引信息傳達給顧客。
(3)云端服務器,智能終端和人臉識別模塊通過Wi-Fi接入互聯(lián)網(wǎng)實現(xiàn)數(shù)據(jù)的交互。
三個部分之間具體關系如圖2所示。
圖2 導引系統(tǒng)結(jié)構(gòu)圖
根據(jù)之前章節(jié)中的場景需要,人臉錄入終端需要擁有人臉錄入、商品查詢、廣告播放、自助結(jié)賬這四個功能,其中人臉錄入和商品查詢功能參與導引流程,廣告播放與自助結(jié)賬為輔助功能。它分為硬件和軟件兩個部分,硬件部分為RK3399商顯智能主板以及掃碼設備、熱敏打印機、外置攝像頭和觸摸顯示屏等各類外設,軟件部分為Android程序。
2.1.1 人臉錄入子系統(tǒng)
在人臉錄入部分中,當商場顧客在智能終端上查詢商品時,攝像頭會開始讀取視頻畫面。并采用Haar-like[2]特征以及AdaBoost[3]分類器進行人臉檢測,檢測到人臉區(qū)域后,系統(tǒng)會自動進行LBP[4]特征提取以及與商品信息進行關聯(lián)并刪除原始圖片,最后上傳至云端服務器,根據(jù)服務器中是否已存在相關信息決定錄入或更新數(shù)據(jù)庫。人臉檢測與錄入過程如圖3所示。
2.1.2 商品查詢子系統(tǒng)
在圖4中,可以看出商品查詢子系統(tǒng)的主要功能是為導引系統(tǒng)篩選顧客對象并提供商品對象,只有選擇了目標商品的顧客才會被錄入信息,同時商品查詢子系統(tǒng)自身作為顧客提供商品信息查詢功能,具體查詢流程如圖4所示。
圖3 人臉錄入系統(tǒng)流程圖
圖4 商品查詢流程圖
2.1.3 輔助功能系統(tǒng)
輔助功能系統(tǒng)包括廣告播放子系統(tǒng)與自助結(jié)賬子系統(tǒng),它們不直接參與導引工作,但能提高顧客購物體驗。其中廣告播放子系統(tǒng)主要有解析服務器指令和加載廣告資源兩個功能,使人臉錄入終端在無人操作時可以按照商場管理員的命令在不同時間段播放各類廣告。自助結(jié)賬子系統(tǒng)主要承擔商品掃碼、掃碼支付和小票打印等功能,分別通過掃碼設備外設、第三方支付平臺和打印機外設實現(xiàn)。
人臉識別模塊是導引系統(tǒng)的重要組成部分,主要承擔檢測與分辨人臉信息,并展示導引信息的工作需求。它由基于嵌入式的控制子系統(tǒng)、OpenMV[5]、導引信息顯示子系統(tǒng)和通訊子系統(tǒng)四部分組成。
OpenMV負責人臉檢測與特征提取,其中人臉檢測部分與人臉錄入子系統(tǒng)中相同,使用圖片特征與分類器為Haar-like特征以及AdaBoost分類器。不同之處在于OpenMV的攝像頭一直處于工作狀態(tài),實時檢測畫面中的人臉區(qū)域。在確定人臉區(qū)域后對目標人臉進行LBP特征提取。
基于嵌入式的控制子系統(tǒng)中燒寫了本文提出的改進后的SVM分類器[6],通過分類器進行人臉識別,以判斷是否為人臉錄入終端錄入過的人臉。如果是,就根據(jù)綁定的商品信息生成文字導引信息,導引信息顯示子系統(tǒng)傳遞給顧客;如果不是,則不做處理。以上過程中所有的圖片在LBP特征提取完畢后都會進行刪除,以保護顧客的個人信息安全。具體流程如圖5所示。
圖5 人臉檢測流程圖
云存儲平臺主要用于存儲特征數(shù)據(jù),本系統(tǒng)主要選取云存儲中大容量的對象存儲作為重點存儲采集得到的顧客人臉特征文件,在關系型數(shù)據(jù)庫中創(chuàng)建數(shù)據(jù)表來保存顧客與商品的他信息。本文采用百度云作為開發(fā)平臺,設計流程如圖6所示。
圖6 云平臺設計流程圖
為了實現(xiàn)系統(tǒng)要求中的人臉錄入、商品查詢、廣告播放以及自助結(jié)賬功能,我們需要選擇合適硬件設備。系統(tǒng)的硬件設備主要包括以下方面:
(1)RK3399商顯智能主板。該主板是標準3.5英寸工業(yè)級商顯主板,主頻高達1.4GHz,支持Type C的Display Port音視頻輸出板載HDMI2.0接口,支持HDCP1.4/2.2以及雙通道24bit LVDS、eDP。
(2)觸摸顯示屏。觸摸顯示屏是人與智能設備交互的重要設備。本文選擇RK3399商顯智能主板配套的10.1英寸液晶顯示屏帶電容觸摸屏RGB屏LVDS背光板工業(yè)顯示屏。
(3)外置攝像頭。外置攝像頭是系統(tǒng)采集圖像信息的關鍵設備,攝像頭的性能直接影響采集到圖像的質(zhì)量,從而影響到后續(xù)的圖像處理以及人臉檢測過程。本文采用SONY公司出品的無線USB Android監(jiān)控工業(yè)相機攝像頭模組,該攝像頭模組內(nèi)置了鏡頭正畸功能,能夠有效避免由于鏡頭畸變對采集圖像造成的影響。
(4)掃碼設備。掃碼設備是用來實現(xiàn)商品掃碼與查看商場會員信息功能的輔助設備,顧客可以通過出示手機上的二維碼來登錄賬號進行查詢。根據(jù)需求與實際情況,本文選擇采用USB二維碼掃碼模組來實現(xiàn)系統(tǒng)所需功能。
(5)熱敏打印機。熱敏打印機主要負責打印小票的功能,本文使用的工業(yè)熱敏打印機提供Android平臺SDK,軟件開發(fā)較為方便,同樣也通過USB接口與主板連接。
實際組裝效果如圖7所示。
圖7 智能終端硬件組裝圖
(1)主程序
表1 主程序功能描述
圖8 主程序執(zhí)行流程圖
(2)人臉檢測程序
表2 人臉檢測程序功能描述
圖9 人臉檢測程序執(zhí)行流程圖
(3)信息錄入程序
表3 信息錄入程序功能描述
圖10 信息錄入程序執(zhí)行流程圖
系統(tǒng)的交互界面由Android Studio[7]編寫,布局由超文本標記語言XML配置。程序被設定為啟動主板后自動打開,之前介紹過熱敏打印機的驅(qū)動文件是在程序內(nèi)的,所以僅在該主板第一次啟動程序時需要手動對驅(qū)動進行配置,配置完成將自動進入人機交互主界面,啟動流程如圖11所示。
圖11 程序首次啟動流程圖
人臉錄入終端的主要功能包括:商品查詢、自助結(jié)賬以及文字、圖片、視頻類型的廣告播放。其中人臉錄入過程在顧客進行商品查詢并選擇目標商品后完成,部分主要人機交互界面如圖12所示。
圖12 部分功能展示圖
與商場入口的人臉錄入系統(tǒng)相比,分布在商場智能貨架上的人臉識別系統(tǒng)數(shù)量更多,但是功能也較為單一。綜合考慮系統(tǒng)性能與成本因素本文選擇采用嵌入式開發(fā)平臺與OpenMV視覺模塊對系統(tǒng)進行開發(fā),并通過液晶顯示屏實現(xiàn)人機交互。人臉系別系統(tǒng)的軟件主要分為兩個部分,其中嵌入式軟件部分選擇使用Qt[8]進行編寫,OpenMV軟件部分選擇OpenMV配套IDE進行編寫。
(1)主程序
表4 主程序功能描述
圖13 主程序執(zhí)行流程圖
(2)回調(diào)程序
表5 回調(diào)程序功能描述
圖14 回調(diào)函數(shù)執(zhí)行流程圖
(3)識別程序
表6 識別程序功能描述
圖15 導引信息顯示程序執(zhí)行流程圖
(4)信息請求程序
表7 信息請求程序功能描述
圖16 信息請求程序執(zhí)行流程圖
為了方便說明,本文使用調(diào)試版交互界面進行功能講解,界面主要由圖像輸出框與導引信息提示框組成。正式版與之相比沒有圖像輸出框,只有導引信息提示框。以下是兩位測試人員對系統(tǒng)的測試結(jié)果,測試人員一號與二號分別在錄入終端上選擇了商品蘋果與洗發(fā)水,系統(tǒng)檢測到錄入人臉后給出提示信息;測試人員一號在未錄入人臉的情況下被系統(tǒng)檢測到人臉信息,系統(tǒng)不做提示;測試人員側(cè)臉模擬經(jīng)過顧客,系統(tǒng)未檢測到人臉。具體情況如圖17所示。
圖17 人臉識別模塊測試結(jié)果對比圖
在人臉識別技術蓬勃發(fā)展卻也飽受爭議的今天,將人臉識別技術應用于傳統(tǒng)的商場導引需求之中。解決了傳統(tǒng)商場導引中人力浪費、服務不及時等問題,有著不依賴便攜式智能設備的特點,并對人臉識別中顧客的個人隱私安全提出了一種解決方案。系統(tǒng)在嵌入式、Android平臺上進行開發(fā),計算資源有限但成本較低,現(xiàn)實中有很強的應用價值。