田曉宇
(中國計量大學 計量測試工程學院,浙江 杭州 310018)
自2019年12月以來,由新型冠狀病毒引起的新冠肺炎疫情在全球蔓延,目前已導致近4億人感染,近600萬人死亡。為遏制疫情擴散,許多國家采取檢測、隔離措施,但集中檢測效率低下,且伴有交叉感染的風險。天津等地在疫情發生后,當地企業提出“核酸測試(診斷)+家庭自測(篩查)”(1+1)相結合的方案阻斷病毒傳播,引起公眾對自測試劑盒的關注。自測儀器具有快速、便捷等特點,對病毒速查幫助極大。
目前,新冠病毒的實驗室檢測主要依賴核酸檢測。逆轉錄聚合酶鏈式反應技術(RT-PCR)是目前最常用的新冠肺炎感染檢測手段,雖然該方法的靈敏度和特異性很高,但其檢測耗時較長,且只能在專業實驗室中由專業技術人員進行檢測操作,無法用于快速檢測。而且現有試劑盒中的試劑和測試條件沒有得到進一步優化,這將會影響檢測的靈敏度和特異性,出現“假陽性”和“假陰性”結果。此外,免疫學檢測方法中,免疫膠體金層析技術也是常用手段之一,該方法目前已有試劑盒采用。通過肉眼觀察的方法,只需一滴血清、血漿或全血即可在10 min內完成所有測試,無需任何設備,操作簡單,可快速篩查可疑患者。但是此方法靈敏性較低,如果材料等質量存在誤差,會影響檢測結果,也會因病人感染時間較短或者采樣部位不同導致病毒含量較低,出現假陰性。為追求更靈敏、更準確的檢測手段,人們逐漸重視熒光免疫層析技術,相關實驗表明,與傳統的膠體金免疫試紙相比,量子點熒光免疫試紙的靈敏度至少提高了1個數量級。
本文設計了一種基于Arduino的便攜式熒光分析儀,采用熒光免疫層析法,配合相應試劑條,只需一滴血樣即可在10 min鐘內完成檢測,操作簡單,可實現快速定性、定量檢測,對新冠肺炎診斷有很大的指導和幫助,對輔助檢測和緩解醫療壓力有很大作用。
本文設計的基于Arduino的便攜式熒光分析儀,下位機使用搭載安信可OV2640高清攝像頭模塊的ESP32-CAM開發板,作為圖像采集模塊。上位機由服務端和客戶端組成。將血樣滴至試劑條,并滴上稀釋液,待10 min后血樣通過毛細作用向試劑條上方移動,經紫外光照射后會反射熒光,反射圖像由ESP32-CAM獲取,并傳輸至服務端。服務端接收圖像采集模塊上傳的圖像,并對圖像進行處理,處理后根據圖樣繪出量化的光強-坐標圖像,與閾值比較后產生定性結果,最終通過客戶端手機APP將定量結果光強-坐標圖像及定性結果反饋給用戶。系統整體架構如圖1所示。

圖1 系統整體架構
熒光免疫層析技術是基于抗原抗體特異性免疫反應的新型膜檢測技術。該技術以固定檢測線T(包被有抗體)和質控線C(包被有抗體)的條狀纖維層析材料為固定相,測試液為流動相,熒光標記抗體或抗原固定于連接墊,通過毛細管作用使待分析物在層析條上移動。對于帶有多個抗原決定簇的大分子抗原(蛋白、病毒、致病菌等),通常采用“三明治”型雙抗夾心免疫層析方法。
在新冠病毒的檢測過程中,待測物在流動相作用下先與連接墊處的熒光示蹤物標記的新冠病毒抗原結合,當到達檢測線T時再與鼠抗人IgG(IgM)抗體結合形成雙抗夾心的“三明治”型復合物,其中熒光標記物會在紫外線照射下反射出熒光。在質控線C處,連接墊處的熒光示蹤物標記的鼠IgG(IgM)與羊抗鼠IgG(IgM)結合,熒光標記物在紫外線照射下也會反射出熒光。若質控線C處無熒光,則檢測失敗;若質控線C處有熒光,檢測線T處無熒光則結果為陰性,有熒光則結果為陽性。紫外線照射下試紙如圖2所示。

圖2 紫外線照射下的熒光免疫層析試紙
通過量化反射熒光的光強可從圖中得出新冠病毒濃度的定量結果,比較閾值可得出是否感染病毒的定性結果。檢測結果如圖3所示。

圖3 檢測結果示意圖
本方案在攝像頭和試劑條卡槽之間的密閉黑暗空間中搭載了紫外線照明模塊,采用紫外線LED,紫外線激發波長為365 nm,熒光波長為612 nm。LED前安置濾光片,截取對應波段波長的反射光,減少噪聲干擾。該照明模塊的設計減少了外界環境的光線對系統產生的噪聲,使得檢測儀器的準確性和靈敏度得以提高。同時具有體積小、能耗低等優點,滿足了使用者方便、快捷的使用需求。照明模塊光路圖如圖4所示。

圖4 照明模塊光路示意圖
基于Arduino的ESP32是樂鑫發布的新一代WiFi芯片,具有性能穩定、高度集成、超低功耗等特性,采用體積小的803.11b/g/n WiFi+BT/BLE Soc模塊,其低功耗雙核 CPU 主頻可達240 MHz,可滿足高清圖像的傳輸需求。ESP32-CAM開發板搭載了4MPSRAM和200 W像素OV2640高清攝像頭,可實現高清圖像的采集。
圖像采集及上傳過程中,首先,OV2640攝像模塊將采集的圖像存儲在PSRAM中,然后通過wifi.begin()函數啟動ESP32的網絡服務,初始化相機后再通過esp_camera_fb_get()函數拍攝圖片,經http.begin()函數請求url、通過http.addHeader()函數請求頭部信息,最后完成圖像上傳。程序串口調試如圖5所示。

圖5 程序串口調試界面
用于接收的服務端采用巴法云服務器。巴法云物聯網平臺支持多模式數據交互,協議規范,兼容性強,能保證低功耗下數據的完整性。同時支持發布/訂閱模式,方便通信設備間的耦合,且支持微信小程序,為后續手機APP的開發帶來便利。圖片上傳調試如圖6所示。

圖6 圖片上傳調試界面
由于拍攝時光照具有不確定性,攝像頭的采集環境難以達到理想狀態,將對檢測結果造成巨大影響。因此,我們對攝像頭采集的圖像進行處理:首先,將原圖像進行灰度圖轉換;其次,通過對二值化圖進行開運算以消除灰度圖中的噪聲點,再對待測區域進行提取;最后,把待測區域中對應位置的光強轉化為數值,通過比較質控線C處參考峰與檢測線T處的峰值確定已知樣本的檢測情況,具體步驟如下:
(1)首先將采集的圖像進行灰度化和二值化處理。采用加權平均值法將彩色圖像轉化為灰度圖像,使得彩色的,,分量值相等,且灰度化處理時灰度值的范圍為[0,255]。先將圖像進行歸一化處理,通過對,,統一歸一化以去除光照和陰影的影響,其歸一化模型可以表示為:

灰度處理后,由于所收到的熒光光強不均勻,因此還需要對圖像進行二值化分割。傳統的OSTU法只能在一定程度上移除光照信息,效果不佳,這里我們引入基于OTSU法的分塊閾值法。
該算法中,圖像被分割成若干塊,考察這些分塊中像素灰度的變化情況,計算所有像素的平均絕對偏差,一塊圖像區域的平均絕對偏差代表該區域內的灰度變化是劇烈或平坦。分塊示意圖如圖7所示。

圖7 分塊示意圖
為判斷灰度變化是否平坦,取當前區域周邊比該區域大的部分,比較該區域和周圍區域的像素灰度變化,判斷當前區域的灰度變化是否平坦。算法如下:
局部窗口在整張圖像中移動時,每個子塊對應的絕對偏差通過加權后得到閾值,公式為:

式中:為子塊落入局部窗口的個數;為子塊標號;為第個子塊的平均絕對偏差;k為落入窗口中的比例因子。

式中:sum為第個子塊落入滑動窗口的像素數;sum為像素總數。
比較滑動窗口的平均絕對偏差,比較和來判斷灰度的變化情況:

式中,為經過大量樣本得到的實驗數據,取0.5最佳。
對平坦變化區域的處理:
將圖像分割成若干塊,用OTSU算法計算每個小塊的二值化閾值,再統計不同子塊落入局部窗口中面積的比例,得到比例因子,最終通過加權得到閾值:

式中,為第個子塊對應的OTSU閾值。當窗口內灰度變化平坦時,比較中心像素灰度值和計算的閾值,并進行二值化操作:

對劇烈變化區域的處理:
在灰度變化劇烈的情況下,圖像中可能包含一定數量的灰度值和局部窗口閾值非常接近的像素。因此我們分別討論灰度值遠離閾值和接近閾值的情況。
當局部中心窗口像素灰度遠離閾值“”時:

式中,為中心窗口灰度值和閾值的距離,本文中取0.5。
當局部中心窗口像素接近閾值“”時:

式中,Mean和為局部窗口像素灰度平均值和平均絕對偏差。
通過OSTU單閾值法和分塊閾值法得到不同的二值圖,如圖8所示。

圖8 2種算法得到的二值圖
(2)對二值圖像進行形態學處理。灰度化和二值化處理后的圖像仍帶有大量噪聲點,為濾除噪聲,本文采用開運算去除二值圖中的細小顆粒,實現圖像骨干信息的提取。開運算是對同一圖片先腐蝕后膨脹的操作。
Step1.腐蝕
針對二值化圖像中值為非“0”的像素進行操作,以像素為中心,附近九宮格內若含值為“0”的像素,則將像素置“0”。腐蝕在數學形態學運算中的作用是消除物體的邊界點。在數字圖像處理中,對于確定的結構元素,通過腐蝕運算可以消除小于結構元素的噪聲點、消除物體邊界點、去除小于結構元素的物體、清除兩個物體間的細小連通等。設為圖像集合,為結構元素,腐蝕用集合的方式可表示為:

Step2.膨脹
針對二值化圖像中值為“0”的像素進行操作,以像素為中心,附近九宮格內若含值為非“0”的像素,則將像素置“1”(或255)。對于灰度圖像,將取“1”的位置賦值以特定結構重合部位的灰度值的最大值。通過膨脹,可以將與物體接觸的所有背景點合并到物體中,使目標增大,添補目標中的空洞。用集合語言定義膨脹運算的定義形式為:

開運算后的二值圖如圖9所示。

圖9 開運算后的二值圖
(3)對于攝像頭采集的圖像,需要對質控線C、檢測線T進行定位,以在曲線圖繪制過程中確定各檢測線對應的光強值。首先通過找到C線前的矩形和T線后的矩形,確定二者重心,二者之間的長度為待識別的長度,通過二重心來確定待測區域。區域選擇如圖10所示。

圖10 區域選擇示意圖
(4)將灰度處理和形態學處理后的圖像灰度值進行平均值處理。對圖像軸方向灰度值數據求取平均值,可以得到圖像軸方向的光強變化,并做出以圖像軸方向為橫坐標,試劑條上光強為縱坐標的光強-坐標曲線圖。最終檢測所用圖像如圖11所示,做出的光強-坐標圖像如圖12所示。

圖11 最終用于檢測的灰度圖

圖12 經過分析后的光強-坐標圖
(5)對曲線圖進行處理比較,得到最終結果。對試紙條上兩種檢測線對應位置處的光強大小進行量化,通過光強和坐標軸的對應圖可以得到代表試劑條上質控線C、檢測線T的峰,其中質控線對應的峰為參考峰。比較曲線圖中檢測線T與質控線C處圖像峰值。對于做出的圖像,設定有峰閾值,并求出每個峰的峰值。對于峰值大于設定閾值的峰認為是有效峰。最終有效峰的個數為1,且僅存在參考峰時,說明檢測結果為陰性;峰個數為2時,代表檢測結果為陽性。同時根據光強量化值可得出對應新冠病毒濃度的定量檢測結果。整體的圖像處理流程如圖13所示。

圖13 圖像處理流程
利用巴法云發布/訂閱模式設置主題,通過ESP32-CAM模塊向設置好的主題發送消息,已訂閱該主題的微信小程序接收信息,顯示檢測得到的定量光強-坐標圖像和定性檢測結果。微信小程序界面如圖14所示。

圖14 微信小程序界面
本文針對新冠肺炎病毒檢測精度低、檢測繁瑣、效率低下、便捷儀器匱乏等諸多問題,設計并實現了基于Arduino的便攜式熒光分析儀,實現了新冠肺炎病毒的快速、便捷檢測。同時,本文設計的便攜式熒光分析儀理論上可完成對于相同檢測原理的病毒、病菌、蛋白等的檢測,隨著熒光免疫層析技術逐漸得到應用,相關儀器日漸完善,應用前景和市場潛力巨大。