羅桂林 何燕南 李治國(guó) 張勇 公安部第一研究所
在我國(guó),機(jī)場(chǎng)安檢部門(mén)依照有關(guān)民航法律法規(guī)對(duì)旅客托運(yùn)的行李實(shí)施安全檢查工作,防止危及航空安全的危險(xiǎn)品、違禁品進(jìn)入民用航空器,以保障民用航空器及其所載人員、財(cái)產(chǎn)的安全。據(jù)不完全統(tǒng)計(jì),2018年中國(guó)某市航空旅客吞吐量達(dá)到近9000萬(wàn)人次,該市旅客托運(yùn)行李開(kāi)包率累計(jì)達(dá)到10%,換而言之,機(jī)場(chǎng)開(kāi)包進(jìn)行安全檢查的旅客行李數(shù)約數(shù)百萬(wàn)次,而開(kāi)包檢出打火機(jī)、火柴、鋰電池、刀具等各類(lèi)違禁品總數(shù)高達(dá)數(shù)十萬(wàn)件。
操作員與開(kāi)包員在機(jī)場(chǎng)行李安全檢查分層管理系統(tǒng)中扮演著非常重要的角色,而對(duì)講機(jī)是機(jī)場(chǎng)操作員與開(kāi)包員之間常見(jiàn)的溝通工具。操作員位于安檢集中判讀室,集中判斷旅客行李的X光機(jī)掃描圖像是否需要開(kāi)包檢查;若操作員判讀行李可疑,則開(kāi)包員需對(duì)旅客行李是否攜帶違禁品進(jìn)行行李開(kāi)包安全檢查[1,4,8]。在整個(gè)行李違禁品安檢過(guò)程中,操作員通過(guò)研讀行李的X射線掃描圖像,判定行李中是否攜帶違禁品。當(dāng)行李中有違禁品時(shí),開(kāi)包員工作站顯示有危險(xiǎn)區(qū)的行李X射線圖像,開(kāi)包員通過(guò)對(duì)講機(jī)與操作員確認(rèn)其畫(huà)出的違禁品的種類(lèi)和位置。在開(kāi)包之前根據(jù)操作員的描述,開(kāi)包員需要與旅客確認(rèn)是否攜帶違禁品。
為了改善操作員與開(kāi)包員之間的溝通方式,提高開(kāi)包員的開(kāi)包效率,同時(shí)避免與旅客之間因開(kāi)包引起的糾紛,本文設(shè)計(jì)的音視頻對(duì)講軟件,首次實(shí)現(xiàn)了機(jī)場(chǎng)分層管理系統(tǒng)操作員與開(kāi)包員之間的可視化對(duì)講功能。該軟件一方面能夠協(xié)助操作員、開(kāi)包員識(shí)別和確認(rèn)機(jī)場(chǎng)旅客托運(yùn)行李攜帶違禁品的種類(lèi)、位置等信息,另一方面為機(jī)場(chǎng)、公安、海關(guān)、檢驗(yàn)檢疫等有關(guān)部門(mén)建立違禁品信息化管理平臺(tái)提供重要的數(shù)據(jù)支撐。
音視頻對(duì)講軟件的核心技術(shù)為對(duì)講技術(shù),表現(xiàn)為可視化對(duì)講產(chǎn)品應(yīng)用。上世紀(jì)80年代,對(duì)講系統(tǒng)興起于日本和歐美。最早進(jìn)入國(guó)內(nèi)市場(chǎng)的對(duì)講產(chǎn)品是智能樓宇對(duì)講產(chǎn)品,該產(chǎn)品功能單一,簡(jiǎn)單地實(shí)現(xiàn)了訪客確認(rèn)對(duì)話的功能[2,7]。隨著音視頻對(duì)講產(chǎn)品新技術(shù)的不斷引入,對(duì)講產(chǎn)品的功能也日趨多元化,如采用音頻和視頻數(shù)字化技術(shù)[6]、ARM嵌入式技術(shù)可以使系統(tǒng)直接接入寬帶網(wǎng)絡(luò)[3],采用Bluetooth便可以實(shí)現(xiàn)免布線的對(duì)講系統(tǒng)[5]等。
目前,對(duì)講機(jī)或內(nèi)通電話是機(jī)場(chǎng)行李安全檢查分層管理系統(tǒng)中開(kāi)包員與操作員主要的工具。對(duì)講機(jī)或內(nèi)通電話只能實(shí)現(xiàn)語(yǔ)音對(duì)講,功能單一。通過(guò)使用可視化的對(duì)講軟件,不僅改善了開(kāi)包員與操作員的溝通方式,縮減開(kāi)包安檢處理時(shí)間,優(yōu)化開(kāi)包的處理流程,而且還能改善乘機(jī)旅客的開(kāi)包體驗(yàn)。因此,可以預(yù)見(jiàn),在使用分層管理系統(tǒng)進(jìn)行旅客托運(yùn)行李安檢的大中型機(jī)場(chǎng),操作員開(kāi)包員使用可視化的對(duì)講軟件替代對(duì)講機(jī)將成為優(yōu)化旅客行李開(kāi)包流程的必然之選。
音視頻對(duì)講軟件功能結(jié)構(gòu)示意圖如圖1所示,共有四大功能模塊組成。
第一部分是數(shù)據(jù)采集功能。該功能用于采集操作員與開(kāi)包員的音頻和視頻數(shù)據(jù)。當(dāng)操作員(開(kāi)包員)未與開(kāi)包員(操作員)建立對(duì)講連接時(shí),操作員(開(kāi)包員)無(wú)需采集音頻數(shù)據(jù),但仍需采集視頻數(shù)據(jù)并進(jìn)行本地回放。當(dāng)操作員與開(kāi)包員建立連接后,采集本站點(diǎn)音頻、視頻數(shù)據(jù)。
第二部分是數(shù)據(jù)協(xié)議功能。根據(jù)數(shù)據(jù)類(lèi)型和使用用途不同,實(shí)現(xiàn)操作員與開(kāi)包員之間的音視頻數(shù)據(jù)傳輸及對(duì)講通信控制協(xié)議。
第三部分是音視頻播放功能,即播放源端站點(diǎn)采集的音視頻數(shù)據(jù)。
第四部分是警報(bào)功能。當(dāng)操作員判斷旅客行李安檢X光圖像為需要開(kāi)包檢查后,操作員端軟件會(huì)自動(dòng)向開(kāi)包員發(fā)送開(kāi)包檢查報(bào)警。開(kāi)包員收到報(bào)警后,對(duì)旅客及旅客行李中的違禁品進(jìn)行拍照,所拍攝的照片與開(kāi)包檢查錄入結(jié)果對(duì)應(yīng)存儲(chǔ)到安檢分層管理數(shù)據(jù)庫(kù)中。
音視頻對(duì)講軟件基于已有的機(jī)場(chǎng)分層管理系統(tǒng)和機(jī)場(chǎng)安檢網(wǎng)絡(luò),其軟件解決方案如圖2所示。
音視頻對(duì)講軟件架構(gòu)解決方案是基于組件模塊化的軟件架構(gòu)。其核心設(shè)計(jì)思想是將基于UDP的對(duì)講通信控制協(xié)議、音頻對(duì)講、視頻對(duì)講等功能進(jìn)行模塊化設(shè)計(jì)與實(shí)現(xiàn)。
機(jī)場(chǎng)音視頻對(duì)講軟件,是基于UDP傳輸協(xié)議實(shí)現(xiàn)的對(duì)講軟件,需要傳輸音頻、視頻以及通信控制命令共三類(lèi)數(shù)據(jù)。其中,音、視頻類(lèi)數(shù)據(jù)對(duì)對(duì)講實(shí)時(shí)性要求不高,且允許傳輸1~2秒的時(shí)延,也能容忍一定數(shù)據(jù)報(bào)文丟失;通信控制命令數(shù)據(jù)則用于控制操作員與開(kāi)包員之間的視頻連接建立、音視頻通話中直至通話掛斷。為了保障對(duì)講軟件能夠正確地運(yùn)行,對(duì)講軟件對(duì)傳輸控制命令的實(shí)時(shí)性、有效性有著較高的要求。基于UDP的對(duì)講通信控制協(xié)議實(shí)現(xiàn)了以下功能:
1. 自定義可靠UDP傳輸協(xié)議
建立多個(gè)監(jiān)聽(tīng)時(shí)鐘,必要地實(shí)現(xiàn)報(bào)文丟失、報(bào)文超時(shí)重傳機(jī)制。防止因UDP報(bào)文丟失、系統(tǒng)異常、網(wǎng)絡(luò)異常等原因造成操作員或者開(kāi)包員對(duì)講軟件無(wú)限等待。
2. 自動(dòng)構(gòu)建各個(gè)站點(diǎn)在線、空閑、繁忙等狀態(tài)維護(hù)表
維護(hù)各站點(diǎn)最新的視頻在線、繁忙、空閑以及異常等狀態(tài)表,避免正在建立連接以及建立連接后的操作員與開(kāi)包員受到其他工作站的視頻請(qǐng)求干擾。在機(jī)場(chǎng)實(shí)際應(yīng)用環(huán)境中,為了保障操作員與開(kāi)包員之間正常的開(kāi)包檢查流程不受影響,雙方在建立通信、音視頻通話過(guò)程中拒絕任何其他音視頻建立的請(qǐng)求。同時(shí)為了避免雙方由于各種原因或者異常導(dǎo)致的死等,在雙方的通信過(guò)程中加入超時(shí)檢測(cè)與超時(shí)自動(dòng)處理機(jī)制。
如圖3所示,該圖描述了音視頻對(duì)講軟件設(shè)計(jì)與實(shí)現(xiàn)的初步方案,經(jīng)與機(jī)場(chǎng)用戶(hù)方研討后基本能夠滿(mǎn)足機(jī)場(chǎng)用戶(hù)使用需求。簡(jiǎn)而言之,實(shí)現(xiàn)音視頻對(duì)講方案通信機(jī)制要求如下:
(1)僅允許開(kāi)包員與操作員之間建立音視頻連接;
(2)操作員A向開(kāi)包員B發(fā)送視頻請(qǐng)求后,站點(diǎn)A和站點(diǎn)B既不能向其他用戶(hù)站點(diǎn)發(fā)送視頻請(qǐng)求連接,也不能接受其他站點(diǎn)用戶(hù)發(fā)送過(guò)來(lái)的視頻連接請(qǐng)求;
(3)如果站點(diǎn)用戶(hù)正在接受其他類(lèi)型的站點(diǎn)發(fā)送過(guò)來(lái)的視頻請(qǐng)求或者正在視頻會(huì)話中,該站點(diǎn)收到其他站點(diǎn)的視頻請(qǐng)求后,則直接拒絕其請(qǐng)求;
(4)為防止網(wǎng)絡(luò)交換機(jī)、站點(diǎn)主機(jī)宕機(jī)、數(shù)據(jù)庫(kù)離線等異常情況,站點(diǎn)用戶(hù)在更新其他站點(diǎn)實(shí)時(shí)狀態(tài)的同時(shí),通過(guò)向其他站點(diǎn)實(shí)時(shí)廣播發(fā)送自身站點(diǎn)工作狀態(tài),以保持站點(diǎn)空閑時(shí)可用。
開(kāi)包員與操作員通過(guò)控制命令類(lèi)數(shù)據(jù)發(fā)送視頻請(qǐng)求、建立視頻連接直至中斷視頻連接,主要包括請(qǐng)求命令、上線通知命令、下線通知命令、超時(shí)響應(yīng)命令、拒絕視頻命令、關(guān)機(jī)命令等。如圖4所示,該圖為通信數(shù)據(jù)消息格式協(xié)議規(guī)范。
(1)通信數(shù)據(jù)消息類(lèi)型
數(shù)據(jù)類(lèi)型包括音頻類(lèi)型數(shù)據(jù)、視頻類(lèi)型數(shù)據(jù)、控制命令類(lèi)型數(shù)據(jù),其字段含義如表1所示。
?
(2)通信對(duì)講消息命令
對(duì)講命令主要包括請(qǐng)求命令、上線通知命令、下線通知命令、超時(shí)響應(yīng)命令、拒絕視頻命令、關(guān)機(jī)命令等,其字段含義如表2所示。
images/BZ_48_295_2015_325_2045.pngimages/BZ_48_461_2015_492_2045.pngimages/BZ_48_557_2015_620_2046.pngimages/BZ_48_653_2015_683_2045.png
(3)通信對(duì)講消息長(zhǎng)度
通信對(duì)講消息長(zhǎng)度是用于通信過(guò)程中對(duì)講消息內(nèi)容的數(shù)據(jù)量。一般而言,對(duì)講消息內(nèi)容最終數(shù)據(jù)格式為字節(jié)數(shù)據(jù),故而通信對(duì)講消息長(zhǎng)度即為字節(jié)數(shù)組長(zhǎng)度。數(shù)據(jù)消息長(zhǎng)度可能為0,也有可能大于0,但不應(yīng)超過(guò)UDP的最大傳輸單元(Max Transfer Unit, MTU)規(guī)定的長(zhǎng)度。
(4)通信對(duì)講消息內(nèi)容
對(duì)講消息內(nèi)容最終數(shù)據(jù)格式為字節(jié)數(shù)據(jù),程序語(yǔ)言通過(guò)拓展軟件接口實(shí)現(xiàn)將站點(diǎn)客戶(hù)端采集的音頻數(shù)據(jù)、視頻數(shù)據(jù)以及站點(diǎn)之間通信的控制命令語(yǔ)句轉(zhuǎn)換成字節(jié)數(shù)組。數(shù)據(jù)傳達(dá)至目標(biāo)客戶(hù)端后,可將字節(jié)數(shù)組類(lèi)型消息格式按照協(xié)議規(guī)范約定轉(zhuǎn)換為對(duì)應(yīng)消息類(lèi)型的消息格式。
音視頻對(duì)講軟件的使用場(chǎng)景尤其依賴(lài)于現(xiàn)場(chǎng)具體使用環(huán)境。所有操作員均處于同一房間,彼此之間可能會(huì)產(chǎn)生聲音干擾或串?dāng)_,開(kāi)包檢查工作站為安檢現(xiàn)場(chǎng)一線業(yè)務(wù),現(xiàn)場(chǎng)旅客和行李傳送帶會(huì)對(duì)客戶(hù)端造成聲音干擾。為解決操作員與開(kāi)包員對(duì)講過(guò)程中的聲音干擾或串?dāng)_問(wèn)題,具體方案如下:
(1)操作員使用頭戴式耳機(jī),而開(kāi)包員使用音響播放聲音;
(2)DirectSound組件實(shí)現(xiàn)了音頻數(shù)據(jù)采集隊(duì)列和音頻數(shù)據(jù)播放隊(duì)列的雙緩沖隊(duì)列機(jī)制,解決了操作員與操作員之間的音頻相互干擾,在優(yōu)化成循環(huán)緩沖隊(duì)列的基礎(chǔ)上,操作員與開(kāi)包員之間能清晰地進(jìn)行音頻溝通。
DirectSound是微軟提供的DirectX API的一部分。它能夠以極低的時(shí)延播放聲音,使應(yīng)用程序可以高度利用硬件資源,其特性如下:
(1)按照WAV格式播放聲音;
(2)可同時(shí)播放多種聲音;
(3)支持將高優(yōu)先級(jí)的聲音分配給由硬件控制的緩沖區(qū);
(4)將普通的聲音融入3D環(huán)境中,以便添加不同聲音效果,如回聲等。
視頻對(duì)講是音視頻對(duì)講軟件的核心功能之一,其本質(zhì)是實(shí)現(xiàn)雙方現(xiàn)場(chǎng)畫(huà)面的可視化展現(xiàn)。從技術(shù)上講,視頻對(duì)講功能包括了視頻幀畫(huà)面的采集、傳輸及播放等基本視頻功能操作。
1. 視頻采集
視頻采集利用羅技攝像頭,將開(kāi)包員(操作員)周?chē)默F(xiàn)場(chǎng)環(huán)境保存下來(lái)并通過(guò)UDP傳輸協(xié)議發(fā)送給操作員(開(kāi)包員)客戶(hù)端站點(diǎn)用戶(hù),為保證視頻畫(huà)面的流暢性,本文實(shí)現(xiàn)的視頻對(duì)講功能的采集頻率為每秒24幀,這一采集頻率設(shè)置值符合人類(lèi)視覺(jué)需求。視頻對(duì)講模塊基于
AForge.Video設(shè)計(jì)與實(shí)現(xiàn)的。AForge.NET專(zhuān)門(mén)為開(kāi)發(fā)者和研究者基于C#框架設(shè)計(jì),包括計(jì)算機(jī)視覺(jué)與人工智能、圖像處理、神經(jīng)網(wǎng)絡(luò)、遺傳算法、機(jī)器學(xué)習(xí)、模糊系統(tǒng)、機(jī)器人控制等領(lǐng)域。
在封裝AForge.Video的基礎(chǔ)上,視頻對(duì)講模塊設(shè)計(jì)與實(shí)現(xiàn)了VideoCapture視頻捕獲類(lèi)。VideoCapture類(lèi)主要功能有設(shè)置視頻采集所用攝像頭、設(shè)置采集視頻幀分辨率、事件訂閱方式獲取圖片以及開(kāi)啟和關(guān)機(jī)視頻采集功能。
VideoCapability為視頻攝像頭類(lèi),封裝了VideoCapture類(lèi)訪問(wèn)攝像頭采集分辨率、幀率等基本屬性。
2. 視頻播放
站點(diǎn)客戶(hù)端視頻數(shù)據(jù)采集后,根據(jù)用戶(hù)需求,一方面需要將采集到的視頻幀數(shù)據(jù)進(jìn)行本地回放,另一方面需要將這些數(shù)據(jù)通過(guò)UDP協(xié)議發(fā)送至對(duì)方站點(diǎn)客戶(hù)端處播放。兩處視頻播放的原理是一致的,不一致的地方在于視頻幀數(shù)據(jù)的轉(zhuǎn)換與傳輸。前者無(wú)需將數(shù)據(jù)轉(zhuǎn)換為字節(jié)數(shù)組,直接在本地視頻控件上顯示播放;而后者需要在網(wǎng)絡(luò)中傳輸,這就要求首先需要將采集的視頻幀轉(zhuǎn)換為字節(jié)數(shù)組;然后通過(guò)
UDP協(xié)議發(fā)送至目的站點(diǎn)客戶(hù)端,目的站點(diǎn)客戶(hù)端收到數(shù)據(jù)后,將收到的字節(jié)數(shù)組反序列化視頻幀數(shù)據(jù);最后,在目的站點(diǎn)客戶(hù)端的視頻控件上顯示源端站點(diǎn)客戶(hù)端采集發(fā)送過(guò)來(lái)的視頻畫(huà)面信息。
3. 違禁品拍照與管理
機(jī)場(chǎng)行李安全檢查分層管理系統(tǒng)中包括了開(kāi)包工作站、違禁品管理工作站等站點(diǎn)。音視頻對(duì)講軟件提供開(kāi)包員站點(diǎn)客戶(hù)端違禁品拍照功能。本文在實(shí)現(xiàn)對(duì)違禁品拍照的過(guò)程中,實(shí)現(xiàn)了音視頻對(duì)講軟件與開(kāi)包工作站之間內(nèi)部接口功能。開(kāi)包員對(duì)違禁品拍照獲取違禁品實(shí)物照片,然后進(jìn)行本地存儲(chǔ)。該接口要求存儲(chǔ)違禁品照片時(shí),其文件名需遵循接口協(xié)議規(guī)定文件命名規(guī)范。違禁品照片命名規(guī)范如下:
(1)開(kāi)包工作站存儲(chǔ)違禁品圖像存儲(chǔ)目錄為網(wǎng)絡(luò)共享目錄
(2)開(kāi)包工作站存儲(chǔ)違禁品圖像存儲(chǔ)目錄為本地存儲(chǔ)目錄images/BZ_49_343_2348_371_2376.pngimages/BZ_49_399_2348_426_2375.pngimages/BZ_49_646_2349_661_2370.pngimages/BZ_49_930_2349_947_2370.pngimages/BZ_49_950_2349_966_2370.pngimages/BZ_49_236_2560_266_2591.pngimages/BZ_49_307_2563_336_2590.pngimages/BZ_49_339_2560_369_2590.pngimages/BZ_49_402_2561_432_2590.pngimages/BZ_49_435_2561_465_2590.pngimages/BZ_49_465_2560_497_2591.pngimages/BZ_49_497_2561_529_2590.pngimages/BZ_49_530_2560_560_2591.pngimages/BZ_49_562_2560_592_2590.pngimages/BZ_49_596_2562_623_2590.pngimages/BZ_49_657_2560_720_2591.pngimages/BZ_49_721_2561_752_2590.pngimages/BZ_49_787_2561_816_2590.pngimages/BZ_49_818_2561_845_2590.pngimages/BZ_49_849_2561_881_2591.pngimages/BZ_49_881_2561_912_2590.pngimages/BZ_49_913_2560_944_2591.pngimages/BZ_49_944_2561_976_2590.pngimages/BZ_49_1010_2561_1040_2590.pngimages/BZ_49_1041_2560_1072_2591.pngimages/BZ_49_1073_2562_1103_2590.pngimages/BZ_49_1105_2560_1135_2591.pngimages/BZ_49_259_2621_287_2648.pngimages/BZ_49_315_2621_342_2648.pngimages/BZ_49_343_2621_370_2648.pngimages/BZ_49_626_2621_640_2642.pngimages/BZ_49_343_2667_371_2695.pngimages/BZ_49_399_2668_426_2694.pngimages/BZ_49_639_2668_653_2689.pngimages/BZ_49_923_2668_939_2689.pngimages/BZ_49_943_2668_959_2689.png
開(kāi)包員工作站可通過(guò)文件名規(guī)范的第一個(gè)字符來(lái)獲取目標(biāo)存儲(chǔ)路徑類(lèi)型——網(wǎng)絡(luò)集中存儲(chǔ)或本地分散存儲(chǔ),將音頻對(duì)講軟件開(kāi)包員違禁品拍照獲取的違禁品照片存放至照片命名規(guī)范的文件路徑下。
在轉(zhuǎn)移存儲(chǔ)違禁品照片后,開(kāi)包員工作站將所獲取的照片記錄以及旅客行李信息存放至數(shù)據(jù)庫(kù),以便違禁品管理工作站對(duì)違禁品信息進(jìn)行日常維護(hù)管理。
機(jī)場(chǎng)音視頻對(duì)講軟件設(shè)計(jì)與實(shí)現(xiàn)的關(guān)鍵點(diǎn)在于音視頻數(shù)據(jù)的采集、傳輸、接收及播放,從而實(shí)現(xiàn)操作員與開(kāi)包員之間的音視頻通信。通過(guò)使用機(jī)場(chǎng)音視頻對(duì)講軟件,較大地優(yōu)化了操作員、開(kāi)包員處理旅客行李開(kāi)包的流程,改善了開(kāi)包服務(wù)效率和體驗(yàn)。該軟件已在石家莊正定國(guó)際機(jī)場(chǎng)、上海虹橋國(guó)際機(jī)場(chǎng)、上海浦東國(guó)際機(jī)場(chǎng)等國(guó)內(nèi)多個(gè)機(jī)場(chǎng)部署并使用,為機(jī)場(chǎng)行李安全檢查提供優(yōu)質(zhì)的對(duì)講服務(wù),有效減少了旅客開(kāi)包檢查等待時(shí)間,提高了機(jī)場(chǎng)安全檢查效率。