Towards ambient intelligence in AI-assisted healthcare spaces - Dr Fei-Fei Li, Stanford University
來源:搜狐 作者:AI掘金志
每年死於院內感染的人數,比車禍死亡人數還多,這意味著你被送進醫院的時候,有三十分之一的機率,健康狀況會變得更加糟糕,這很值得警惕。
好在醫院可以透過改善衛生條件,來扭轉這一局面。無論在醫院、機場,還是餐館之類的公共場合,手部衛生都是預防傳染病傳播的第一道防線,這是一個簡單的常識。
問題的關鍵不在於人們無知,而在於缺乏警惕心,他們需要自動檢測技術,來檢查手部清潔情況。實際上,很多技術都可以解決這個問題,最簡單也最常用的,就是用電腦視覺技術,來檢測人們有沒有洗手。
史丹佛 PAC (The Stanford Partnership in AI-Assisted Care)中心,和眾多來自世界各地的合作夥伴,多年來一直在開發這項技術,雖然還有很多工作要做,但是我們希望這項技術,能幫助醫院降低感染率,並改善病人的健康。
為什麼選擇電腦視覺技術?
醫院們會透過醫學院課程、布告欄海報,和員工週會等方式,來加強手部衛生教育。世界衛生組織甚至提出「手部衛生五大時刻」,明確規定了醫療衛生工作者的洗手時間。
為了核查手部衛生落實情況,醫院使用 RFID 卡或員工徽章,來跟蹤手部衛生工作。在某種程度上,這些工具真的有用,但是也會碰到工作流程中斷的情況,比如當員工進入新房間時,肥皂盒會刷到 RFID 卡。
這其實是技術問題:一般的 RFID 技術覆蓋距離短,而較長距離的「主動型」RFID 也受到定向天線的限制,而且需要電池。很明顯,需要一種沒有 RFID 技術缺陷的新解決方案。
電腦視覺和醫院
我們在史丹佛大學與 Lucile Packard 兒童醫院合作,開發了一種全新的先進方案,來追蹤手部衛生工作:它使用前沿的電腦視覺技術,不需要臨床醫生來干預日常工作。
雖然電腦視覺已被用到醫學成像領域,但在醫院的物理空間中,還沒有太多用武之地。幸運的是,電腦視覺已經用到了實體空間的另一個問題裡:自動駕駛汽車,自動駕駛汽車使用大量感測器來瞭解環境,以此類推,我們能在醫院內,使用這些感測器,來更好地瞭解醫療環境嗎?
深度感測器
深度感測器(比如 Xbox Kinect )類似常見的攝影機,不過它不記錄顏色,而是記錄距離。在正常的彩色圖像中,每一個像素表示一個顏色;在深度圖像中,每一個像素表示真實世界中,該像素到感測器之間的「距離」,它通常是一個浮點數,比如1.337米。
(左)醫院的彩色照片,用手機拍攝。(右)天花板上傳感器拍攝的深度圖像。顏色越暗,物體越接近深度感測器。
在上面的深度圖像中,你雖然看不到人們的臉,仍然可以知道他們在做什麼。這保護了我們用戶的隱私,這在醫院裡很重要。為了證明和發展我們的電腦視覺技術,我們在兩家醫院的天花板上安裝了深度感測器,一個是兒童心血管病房,另一個是成人重症監護室(ICU)。
我們的深度感測器,安裝在一家兒童醫院的天花板上。
透過兩個不同的醫院裡,安裝的深度感測器,我們可以使用 3D 電腦視覺工具,自動監測手部衛生工作。這涉及三個步驟:
1.監測醫護人員。
2.追蹤在病房周圍走動的員工。
3.分類員工的手部衛生行為。
行人監測
繼續自動駕駛汽車的類比:為了瞭解環境,首先要做的就是檢測人。現在有很多物體檢測方法,但是大多數都是針對彩色 RGB 圖像開發的。
相反,我們選擇使用一個更古老的方法,該方法可以透過解決兩個方面的問題,而在任何類型的圖像上運行:通常,人們在給定的一個房間的圖像中,只佔據少量的空間;而且,在深度圖像中,人們通常看起來像「水滴」,和地板背景差別明顯。
詞典的條目。每個詞典條目都包含一個合成圖像,反應一個人站在某個位置時的樣子。
檢測人的一種方法,是確定一個地面上的佔用網格圖,該佔用網格圖是二進制矩陣,用來表示一個人是否佔用,地面上的某個特定位置。
透過將地面(比如,房間的地板)轉換為離散網格,我們就可以透過網格內的每一個,與人大致等高的水滴,「想像」出處於該位置的人。
我們可以在地面上的每個點上,都創建一個包含水滴的詞典(記住:因為我們人工合成了這些水滴,我們知道它們準確的 2D 和 3D 位置)。對於多人情景,我們可以在場景中,渲染出多個水滴。
在測試期間,我們需要的是一個「水滴」圖像,這可以用任何前景/背景減法,或物體分割算法來完成。現在,給出測試時的水滴圖像,我們就可以在這個詞典中,執行 K-nearest 搜索,來查找每個水滴的位置。
跨病房追蹤
為了建立一個真正的智慧醫院,我們需要使用遍布整個醫院病房的感測器。因為不是所有的事情都發生在一個感測器前面,所以我們也需要算法,來追蹤不同傳感器前面的人。這不僅可以提供,手部衛生落實情況的細節,它也可以被用來改善工作流程和空間分析。
一般的,我們希望找到一系列軌跡集合X,其中 x∈X 中的每條軌跡 x 都代表一個檢測序列集合,L_x=(l_x^{(1)},...,l_x^{(n)}),代表檢測到的行人座標。該問題可以歸為最大後驗(MAP)估計問題。
接下來,我們假設一個馬爾可夫鏈模型,它將軌跡X中的每個中間檢測l_x^{(i)}與後續檢測l_x^{(i+1)}以給出的機率P(l_x^{(i+1)}|l_x^{i})連接。現在我們可以透過尋找,能最小化成本 C 的流量f,來將 MAP思任務作為一個線性整數規劃來解決:
其中,f_i 是表示相應檢測是否為真的流量變量,f_ij 表示相應檢測是否鏈接到了一起。變量 β_ij表示 logP(l_i|l_j) 為檢測 l_i,l_j∈L 而給出的轉移成本。
局部成本 α_i 是一個中間檢測,為真的對數機率。為了簡單起見,我們假設所有的檢測,都具有相同的機率。這相當於流程優化問題,可以用 k-shortest 路徑即時求解。
手部衛行為分類
到現在為止,我們已經確定了病房裡所有行人的軌跡(比如,在全球醫院病房地面上的位置)。最後一步是檢測手部衛生行為,並將其鏈接到一個特定的軌道上。當一個人使用洗手液時,手衛生行為被定義為正,然後我們再將每個行人的軌跡,標記為乾淨或不乾淨。
在實際環境中,佈署感測器往往容易受到安裝約束。無論是有意還是無意,施工和維護的技術人員,安裝的感測器角度和位置,都各不相同,這意味著我們的模型,必須對這些變化具有更加強性性,以便它可以與任何傳感器視角一起工作。
由於傳統的卷積神經網路(CNN),一般都不是視角不變的,所以我們使用空間變換網路(STN)代替。
(左)一個人體分割的數據增強階段.(右)手部衛生行為分類:一個空間變換再加上一個密集的卷積神經網絡。
STN 的輸入是一個隨機圖像,輸出是一個扭曲的圖像。為了幫助我們的模型更快地學習,我們還提供了一個人體分割(即身體掩模)到 STN。
這個身體掩模,可以使用經典的前景-背景技術,或深度學習方法來提取。STN 將圖像扭曲成學習的「視角不變」形式。從這個扭曲的圖像看,我們使用一個標準的 CNN(比如,Dense Net )來執行,是否有人使用洗手液的二進制分類。
在這一點上,我們仍然需要將我們的軌跡集合,和單獨的手部衛生檢測集合結合起來,這就引入了兩個新變量:空間和時間。對於每一個手部衛生分類器檢測(比如,分配器正在被使用),我們就必須匹配它,到一個單一的軌道上。當軌道 mathcal{T}T 滿足兩個條件時,分類器和追蹤器之間,就會發生匹配:
1.在一定的容忍水準裡,軌跡T包含了(x,y),點 P 和手部衛生檢測事件 E 同時發生。
2.至少有一個點 p∈P 物理上,接近負責檢測事件E的感測器,這個臨界值定義在病房門口附近。
如果存在多條軌跡,滿足這些要求,則透過選擇與門最近的(x,y)位置來中斷聯繫。我們模式的最終輸出是一個軌跡的列表T,其中每一條軌跡由(t,x,y,a)元數組的一個有序列表組成,其中 t 表示時間標記,x、y表示 2D 地面平面坐標,a 表示最新的動作或事件標籤。透過 T,我們可以計算達標率,或佣金標準的評價指標,來進行比較。
該技術與人類審計師和 RFID 的比較
現在,許多醫院通過「神秘訪客」來衡量手部衛生的落實情況,訓練有素的個人在醫院病房四處走動,觀察工作人員私下是否在洗手。
這種「神秘訪客」可以是護士,醫生,甚至是一個參觀者。我們稱之為秘密觀察,不同於為審計而進行的公開觀察。隱性觀察的目的是最小化 Hawthorne 效應(比如,因為有人在看你,你改變了你的行為)。就像上文所討論的一樣,我們將電腦視覺,駐留在病房固定位置的多個審計員,在病房周圍走動的單個審計員和 RFID 標籤的使用進行了比較。
這種「神秘訪客」可以是護士,醫生,甚至是一個參觀者。我們稱之為秘密觀察,不同於為審計而進行的公開觀察。隱性觀察的目的是最小化 Hawthorne 效應(比如,因為有人在看你,你改變了你的行為)。就像上文所討論的一樣,我們將電腦視覺,駐留在病房固定位置的多個審計員,在病房周圍走動的單個審計員和 RFID 標籤的使用進行了比較。
對比結果
對比結果顯示,RFID 產生了大量的誤報,它只在 18% 的時間裡,正確預測了乾淨或骯髒軌跡。
人類審計師的效果要好得多,準確率為 63%,三個人的效果則更好,準確率可以達到 72%。然而,我們的算法甚至超過了人類審計員,具有 75% 的準確度。這並不讓人吃驚,因為審計師正在與具有「全球視野」的電腦視覺系統競爭。
既然真實標籤是人類標注的,為何人類觀察員比算法表現更差呢?原因是我們的真實標籤只是被遠端標記,而不是即時標記。遠端標注者可以訪問所有的感測器,並且可以及時向前向後地播放影像,以確保它們的注釋是正確的。
現場的審計員則無法「訪問」所有感測器,他們不能即時地回放事件。
既然真實標籤是人類標注的,為何人類觀察員比算法表現更差呢?原因是我們的真實標籤只是被遠端標記,而不是即時標記。遠端標注者可以訪問所有的感測器,並且可以及時向前向後地播放影像,以確保它們的注釋是正確的。
現場的審計員則無法「訪問」所有感測器,他們不能即時地回放事件。
不同時段的手部衛生檢測圖像。藍色方塊表示有人在使用手部衛生分配器。深藍色表示有更多同時發生的事件。底部顯示了真實標籤。一般來說,空白越多,結果越差。
除了數字之外,一個更有趣的結果是視覺效果。上面的圖片顯示了現場審計員,很少檢測手部衛生行為。注意到所有的空白部分了嗎?如果你查看真實標籤那一行,通常是沒有空白的。
這意味著觀察員,錯過了大量的手部衛生事件。這通常是因為觀察員分心了:他們可能在打瞌睡,在病房的其他地方,看無關的活動,或者只是沒有看到手部衛生事件的發生。
ICU內人員走動的時空熱圖,黃色/紅色意味著更多的人在那裡站/走。
最後,我們用一個動畫來做結論。上面的動畫展示了醫院病房的俯視視角。因為我們可以追蹤在整個醫院的人,所以我們一直瞭解他們的特定的(x,y,z)位置。
我們繪製了每個點,並創造了隨時間變化的熱圖。這種類型的空間分析,對辨識交通模式和跟蹤潛在的疾病傳播都很有效。這些總是黃色/紅色的區域,表示擁擠的空間。這些空間通常在走廊的交叉口,或者就在病人的病房外。如果你仔細看,你會發現靜止的審計師被標紅了。
未來方向
我們展示了如何使用電腦視覺和深度學習,來自動監控醫院的手部衛生工作。在史丹佛 PAC,手部衛生僅僅是一個電腦視覺在醫療行業中的應用案例。我們還在開發電腦視覺系統,來監測患者的移動情況,分析外科手術的品質,以及檢查老年人的異常情況等內容。
我們希望這項工作,能夠激發醫療人工智慧的潛力並擴大它的影響。
沒有留言:
張貼留言