周逸倫,李 軍,蔡 屹
(1.深圳市軟筑信息技術(shù)有限公司,廣東 深圳 518034;2.深圳市檢驗檢疫科學(xué)研究院,廣東 深圳 518033;3.深圳海關(guān)信息中心,廣東 深圳 518033)
利用紅外熱成像的方法對被測物進行溫度測量,不需要與被測物體進行接觸,對于具有高傳染性的流行性疾病具有很好的防治作用。通過紅外熱成像顯示的偽彩色圖像再結(jié)合軟件系統(tǒng)中的測溫模塊對疑似患者進行遠距離體溫測量,既可以發(fā)現(xiàn)密集人群中體溫偏高者,又可以在自身不被傳染的前提下對疑似患者進行體溫測定。
從紅外測溫的原理出發(fā),研究了紅外測溫儀測溫的原理,首先從理論上分析了影響紅外測溫精度的因素。通過一個現(xiàn)有的紅外測溫探頭設(shè)計了一個紅外測溫系統(tǒng),并依此系統(tǒng)實際分析了影響測溫精度的因素,設(shè)計了基于環(huán)境溫度變化補償?shù)募t外測溫系統(tǒng)。
根據(jù)文獻[1-3]中設(shè)計的體溫測量記錄系統(tǒng),本研究結(jié)合了自身的應(yīng)用場景,設(shè)計了主要由紅外攝像機、單片機、環(huán)境溫度傳感器、超聲波傳感器和模擬小黑體組成的紅外測溫系統(tǒng)。傳感器數(shù)據(jù)采集單片機作為控制單元,不僅需要控制紅外傳感器、DS18B20 環(huán)境溫度傳感器、模擬小黑體STS3x 傳感器和超聲波單元進行相應(yīng)的數(shù)據(jù)讀取和處理,還要將得到的溫度數(shù)據(jù)發(fā)送到工控機中,通信協(xié)議采用RS232。傳感器數(shù)據(jù)采集單片機將采集到的數(shù)據(jù)通過RS232 串口傳輸?shù)缴衔粰C中,上位機使用Python 進行數(shù)據(jù)接收并把數(shù)據(jù)存儲在文本文檔中。當(dāng)處理數(shù)據(jù)的時候,Python 能夠方便的進行相應(yīng)的數(shù)據(jù)處理。
Python 具有幾百個內(nèi)部函數(shù)還有三十幾種能夠?qū)崿F(xiàn)相應(yīng)專業(yè)的數(shù)據(jù)處理與分析的工具包。在串行通信中主要用到的是設(shè)備控制箱,這個工具箱提供了對RS-232/RS-485 通信標(biāo)準的串口通信的支持。
基于Co1texM4 內(nèi)核的STM32F407 傳感器數(shù)據(jù)采集單片機為下位機,工控機為上位機。工控機串口與單片機主通訊串口相連。系統(tǒng)工作時Python 首先調(diào)用設(shè)備控制工具箱中的serial 類及相關(guān)函數(shù)創(chuàng)建串口設(shè)備對象,設(shè)置與單片機相對應(yīng)的波特率、數(shù)據(jù)位等通信格式,打開串口設(shè)備文件,就可以用16 進制ascii 碼對串口進行相應(yīng)的操作。
傳感器數(shù)據(jù)采集單片機串口與工控機串口相連,工控機上我們使用了Python 語言在Pycharm 中開發(fā)了上位機,工控機通過串口向單片機發(fā)送數(shù)據(jù)采集指令,單片機的串口收到指令后,分別使用環(huán)境溫度傳感器DS18B20、超聲波傳感器AJ-SRO4M-T-X 和模擬小黑體STS3x 進行相應(yīng)的數(shù)據(jù)采集, 然后單片機將采集的數(shù)值送往串口, 上位機直接接收數(shù)據(jù)并打印輸出溫度數(shù)據(jù),并將采集到的數(shù)據(jù)插入數(shù)據(jù)庫進行保存。Python 為我們提供了串口操作的類, 使用較少代碼就可以實現(xiàn)從PC 的串口接收數(shù)據(jù), 將串口傳過來的溫度數(shù)據(jù)插入數(shù)據(jù)庫,也可以利用Python 的flask 框架進行數(shù)據(jù)的查詢展示,工作流程見圖1。
圖1 Python 串行數(shù)據(jù)采集流程圖
基于windows 工控機的圖像采集模塊:
通過LabView 編寫相應(yīng)的圖像采集和處理用戶程序,控制USB 接口的歐普士XI400 熱像儀和抓拍或者連續(xù)采集圖像,保存圖像文件,并對圖像進行壓縮和灰度、二值化及增強等圖像處理。
圖像采集和抓取程序包括兩個事件:一是抓取圖像并輸出到圖像顯示窗口;二是將抓取的圖像存儲到文件。程序執(zhí)行的過程是首先打開所選擇的歐普士XI400 熱像儀,啟動圖像抓取,LabView 會獲取歐普士XI400 熱像儀的當(dāng)前幀,獲取成功后會以“JEPG”格式保存到文件。
算法介紹:
理論依據(jù)來源于兩點測溫法,直接測量在同一物體表面的溫度,計算被測面上兩點的溫度差。需已知被測物體表面的發(fā)射率和環(huán)境溫度,可以由測量的輻射溫度計算出表面真實溫度。由于誤差累積,紅外測溫設(shè)備的局限性,采用以上方法誤差較大。
由上文可以看出,影響紅外測溫精度的因素有環(huán)境溫度和發(fā)射率,文獻[4-6]討論了其他因素對紅外熱像儀測溫準確度的影響,如環(huán)境溫度、大氣濕度、發(fā)射率等,文獻[7]討論了環(huán)境中高溫物體對紅外測溫精度產(chǎn)生的影響。
因此引入相對測溫法,測量不同表面的目標(biāo)與參考體的溫度、環(huán)境溫度(這里的環(huán)境是指從被測點到熱像儀的所經(jīng)過的環(huán)境)和發(fā)射率,所測溫度由參考溫度計算出來。通過引用相對測溫法,模擬小黑體與黑體輻射源當(dāng)成測量時的兩個點。選模擬小黑體為校準基準點,黑體輻射源作為被測點,小黑體上的溫度傳感器值即為已知溫度值,由于并非同一表面的溫度差,由計算式可知,自制小黑體的環(huán)境溫度要和人臉環(huán)境溫度接近,才能減少誤差。
圖2 熱像儀所測溫度比對圖
當(dāng)進行測溫校準時,需要在紅外相機內(nèi)標(biāo)定兩個區(qū)域,人體測溫區(qū)域設(shè)定為區(qū)域1,模擬小黑體校準參考區(qū)為區(qū)域2(如圖3 所示),模擬小黑體與人體測溫區(qū)當(dāng)成測量時的兩個點。根據(jù)文獻[8-9]所描述,人體額頭區(qū)域平坦,測溫面積大,有利于測溫,所以將人體的額頭部設(shè)為所述被測溫區(qū),使用紅外熱成像相機獲取所述被測溫區(qū)的目標(biāo)溫度,模擬小黑體校準參考區(qū)設(shè)在所述紅外熱成像相機的鏡頭前方,使用紅外熱成像相機溫度傳感器獲取所述校準區(qū)的參考溫度。由于模擬小黑體校準參考區(qū)溫度已知,那么通過兩點法公式的計算,區(qū)域2 可以實時的修正區(qū)域1 的測溫數(shù)值。
圖3 不同發(fā)射率下的溫度比對圖
圖4 紅外相機內(nèi)標(biāo)定模擬小黑體
根據(jù)文獻[10]中的人體額頭皮膚表面溫度與實際體溫對照表為基礎(chǔ),通過數(shù)據(jù)分析后優(yōu)化并補充了對照表,補充后的結(jié)果見表1,通過該對照表,測溫所得到的額頭溫度加上偏差值,最終就可以計算出人體的體溫。
表1 人體額頭皮膚表面溫度、實際體溫和偏差值關(guān)系表
本課題以非接觸人體溫度測量為主要內(nèi)容,進行了非接觸的誤差分析及補償。從軟件上解決了紅外溫度計測溫不精確的缺點。綜上所述可知:
(1) 誤差分析及補償 車輛駕駛員與乘客健康管理及快速驗放設(shè)備使用場合多為半室外或者全室外,環(huán)境較為復(fù)雜,在通道內(nèi)搭建黑體進行紅外相機測量的溫度進行校準。黑體能吸收所有波長的輻射能量,沒有能量的反射和透過。也就是說,絕對黑體只發(fā)射紅外電磁波,但不反射外界環(huán)境的電磁波,使其輻射情況只與溫度有關(guān),有效避免外界環(huán)境干擾以及自身材料影響,將黑體輻射源(校準裝置)設(shè)置在熱成像攝像機視野范圍內(nèi),建立灰度與溫度的準確對應(yīng)關(guān)系,進行測量溫度實時校正,將視頻畫面和個人體溫對應(yīng)顯示,可以大幅度提高人體測溫的精度,減少測溫誤差到±0.3 ℃。
(2) 現(xiàn)在已經(jīng)有了可變焦的紅外測溫儀,因此未來應(yīng)用在醫(yī)療上的紅外測溫儀將向可變焦、熱圖像感應(yīng)方向發(fā)展,本研究設(shè)計的系統(tǒng)只能作為過渡產(chǎn)品來使用,因此,從根本上提高測溫儀的精度才能解決問題,這是以后所需要研究并著力的地方。