李松柏,張衛(wèi)華,胡光亮
(1.四川大學 計算機學院,四川 成都 610065;2.四川大學 電子信息學院,四川 成都 610065)
實驗動物行為分析是研究高級中樞神經(jīng)功能的一種重要技術手段,現(xiàn)已廣泛應用于動物行為學、神經(jīng)科學、藥理學和遺傳學等學科[1]。行為絕望模型是指為動物提供一個無可回避的壓迫環(huán)境,使其極度不適應而掙扎,但又不能得以逃脫,從而出現(xiàn)間斷性的不動。動物表現(xiàn)出的這種典型的“不動狀態(tài)”(immobility),反映了一種被稱之為“行為絕望”的狀態(tài),這種行為絕望狀態(tài)與抑郁癥類似,因此該模型常被應用于抗抑郁藥、興奮藥、鎮(zhèn)靜藥等藥物藥效的評價。小鼠懸尾實驗(tail suspension test)是最常用的行為絕望模型實驗,由于嚙齒類動物極其不喜歡處于被倒懸的狀態(tài),因此,該實驗將小鼠尾部進行固定,使其頭部朝下,小鼠拼命掙扎一段時間后,當其發(fā)現(xiàn)無法逃脫這種狀態(tài),則會放棄掙扎進入“行為絕望”狀態(tài),其后會繼續(xù)掙扎,通過對比小鼠處于“不動狀態(tài)”的時長,可以得到某種藥物的實驗效果[2]。
動物行為分析最早采用人眼觀察法,其后一段時間采用傳感器檢測方法,如紅外傳感、壓力傳感器等[3];九十年代在動物行為實驗中采用了計算機視覺的方法,比起前兩種方法,該方法具有更好的靈活性與精確性。在計算機視覺方法應用于動物行為實驗后,隨著數(shù)字圖像處理技術的發(fā)展,基于計算機視覺的動物行為分析方法的效率與準確率也在不斷提高[4-6]。在基于視覺的小鼠觀察實驗中,Ishii等[7]通過尋找小鼠中心點、尾巴及體軸,可以得到“曠場實驗”中小鼠運動的方向、速度等信息,從而對小鼠的整體活動量進行記錄;Yuman等[8]將小鼠軀干分為四個區(qū)域,頭部、軀干左側、軀干右側與尾部,通過對這四部分區(qū)域的幀間差進行周期性監(jiān)測,從而識別小鼠行走、站立、抓撓等六種典型的行為;Jhuang等[9]利用SVM-HMM進行鼠籠行為實驗分析,提取小鼠軀干寬高、小鼠與鼠籠特殊點的距離等特征,通過這些特征對喝水、修飾、微動等八種行為進行訓練建模,最終利用訓練得到的模型來完成基本行為識別。
對于視頻序列的連續(xù)行為分析,在部分文獻中被分解為兩個過程:行為分割與行為分類。行為分割即是將視頻序列分割為多個只包含單一行為的視頻片段,然后再對每個視頻片段利用模板匹配等方法進行行為分類。Weinland等[10]綜述了基于計算機視覺的行為表達、分割與識別。此外,基于滑動窗口搜索也是常見的連續(xù)行為分析方法[11-13],對于有連續(xù)行為的視頻序列,由于各個單一行為之間的“邊界”比較模糊,利用“分割-分類”方法雖然理論上可行,但在實際應用中,效果不太理想。文中主要根據(jù)行為描述,從視頻中提取具有某種特征的視頻片段,從而實現(xiàn)行為分析。
在基于計算機視覺的小鼠懸尾實驗中,傳統(tǒng)方法是利用圖像幀間差技術來實現(xiàn)小鼠運動狀態(tài)的分析,這種方法很容易產(chǎn)生錯誤識別。當小鼠劇烈運動過后,其身體保持不動,但由于慣性擺動,其圖像幀間差仍然較大,因此將“慣性擺動”誤判為“主動掙扎”。針對這一問題,提出了一種基于輪廓不變矩特征的檢測方法,首先獲取小鼠運動區(qū)域,提取完整的小鼠輪廓,然后計算輪廓點的Hu不變矩特征,再計算時間間隔為t的兩幀其Hu特征距離,最后通過距離閾值來確定小鼠運動狀態(tài)。
行為絕望模型實驗大量用于評價抗抑郁一類藥物對動物行為的影響,一般選擇實驗老鼠進行實驗。這一類實驗主要包括強制游泳實驗(force swimming test)和懸尾實驗。
在小鼠懸尾實驗中,將小鼠尾巴3/4處固定在某一掛鉤上,離地面30厘米左右,并在與小鼠懸掛裝置水平方向放置攝像頭。實驗過程中,需要有“實驗組”與“控制組”,分別是用藥與未用藥小鼠,注射藥物一段時間后進行實驗(皮下注射需等待30分鐘,口服藥物則需要等待60分鐘)。實驗結束后,通過比較兩組實驗中小鼠處于“不動狀態(tài)”時間的多少,從而得到藥物的實驗效果。文中僅對如何更加準確地統(tǒng)計“不動狀態(tài)”的時間進行研究,不對具體某一藥物進行實驗。
在小鼠懸尾實驗中,由于實驗裝置固定,小鼠懸掛后其整體運動幅度較小,因此可以在實驗開始之前手動選取小鼠矩形區(qū)域。
由于在該實驗中,小鼠尾巴寬度相比軀干不算太小,因此進行更大幅度開運算的效果會比較好,也即連續(xù)兩次的腐蝕操作,再連續(xù)兩次膨脹操作。
O(x,y,t)=(((B'(x,y,t)Θb)Θb)⊕b)⊕b
(1)
其中,B'(x,y,t)為原始圖像;b為結構元;O(x,y,t)為連續(xù)腐蝕膨脹后的圖像。
矩是一個用于表征函數(shù)及捕捉函數(shù)重要特性的標量。多年來,矩在統(tǒng)計學中被用于描述概率密度模型,以及在經(jīng)典的剛體力學中被用于測定物體的質量,從數(shù)學角度來講,矩是一個把函數(shù)投影到多項式基底上的“映射”[14]。對于一幅圖像,認為它是擁有兩個變量、具有任意分片連續(xù)性的函數(shù)f(x,y),該函數(shù)定義在區(qū)間D∈R×R上,并且具有一個有限的非零積分。假設p、q為非負整數(shù),r=p+q稱為矩的階,圖像f(x,y)的廣義矩表達式定義為:
(2)
其中,ppq(x,y)是定義在區(qū)間D上的多項式基底,根據(jù)多項式基函數(shù)的不同,可以得到不同的矩。在數(shù)字圖像處理中,一般選擇冪函數(shù)為基函數(shù),也即ppq(x,y)=xpyq,因此得到幾何矩:
(3)
對于一幅M×N的數(shù)字圖像f(x,y),其p+q階幾何矩mpq表示為:
(4)
中心矩具有位置無關性,圖像f(x,y)的p+q階中心矩μpq為:
(5)

(6)
為了使圖像矩在圖像發(fā)生尺度變換時保持穩(wěn)定,還需要對中心矩進行歸一化,歸一化的中心矩μpq為:
(7)
幾何矩、中心矩及歸一化的中心矩雖然具有一定的平移、旋轉、縮放穩(wěn)定性,但在實際應用中其表達能力較為有限,因此需要通過高階矩的一些線性組合,來構成具有更高穩(wěn)定性的矩特征。
M.K.Hu在1962年利用代數(shù)不變量理論提出了幾何矩的概念和矩不變量理論[15]。矩不變量在圖像進行平移、旋轉和尺度變換時保持穩(wěn)定,因此被廣泛應用在目標識別、圖像分類等領域。Hu利用歸一化中心矩推導出了7個經(jīng)典的Hu不變量[16]。
(8)
圖像的p+q階矩,對于低階矩來說,其計算時間復雜度為O(N2),對于高階矩,其計算復雜度更高,因此在矩計算過程中,通常會尋求更快的計算方法。對于數(shù)字圖像的矩特征,即是計算數(shù)字圖像灰度的矩,在本實驗中,小鼠輪廓剪影二值圖,其所表達的信息與其輪廓基本相同,因此,可以將計算小鼠輪廓剪影二值圖的矩特征簡化為計算輪廓的矩特征。同時,理論上,利用格林定理可以將基于閉合區(qū)域的曲面積分化為對其邊界輪廓的曲線積分,從而將計算復雜度由O(N2)降為O(N)。
小鼠剪影輪廓區(qū)域為D,其輪廓邊緣為L,L是繞D的正向輪廓,并且f(x,y)=1,(x,y)∈D,f(x,y)=0,(x,y)?D,所以有:

(9)
或

(10)
基于圖像輪廓的Hu矩與基于圖像灰度的Hu矩均具有旋轉、平移、縮放穩(wěn)定性,此外,基于輪廓進行Hu矩的計算,其時間復雜度相比基于圖像灰度的Hu矩計算要小很多。
在小鼠懸尾實驗中,通常把小鼠所處運動狀態(tài)分為三類:完全靜止、慣性擺動、主動掙扎。實驗目的是記錄小鼠在一段時間內(nèi)分別處于這三種運動狀態(tài)的總體時長,因此在實驗過程中要較為準確地區(qū)分小鼠所處運動狀態(tài)。通過大量觀察小鼠實驗視頻發(fā)現(xiàn),小鼠在實驗過程中處于完全靜止狀態(tài)的時間很少,甚至可以忽略不計(因為從小鼠開始運動過后,后序即便沒有掙扎,慣性擺動仍然一直存在),所以可以將“完全靜止”合并到“慣性擺動”狀態(tài),統(tǒng)稱為“不動狀態(tài)”。
小鼠運動狀態(tài)分析即區(qū)分小鼠“不動狀態(tài)”與“主動掙扎”過程,可以簡化為狀態(tài)切換過程。因此,只要能夠找到實驗過程中狀態(tài)切換時刻,便可提取狀態(tài)切換過程,從而完成小鼠運動狀態(tài)的識別。把“不動狀態(tài)”定義為state0,把“主動掙扎狀態(tài)”定義為state1。
在以往的實驗中,通常利用圖像幀間差方法,通過判斷幀間圖像差值來確定小鼠的運動狀態(tài),也即差分圖像面積閾值來判斷小鼠處于某一狀態(tài)。實驗發(fā)現(xiàn),利用二值化后的圖片進行差分比直接原始圖像差分再進行二值化要更為準確,表示如下:
(11)
其中,函數(shù)SUM(x)表示得到圖像x的面積,在二值圖像中,該面積表示非零像素個數(shù);T表示差分圖像面積閾值。
通過差分圖像的面積閾值,能夠實現(xiàn)一部分的行為識別,但針對小鼠慣性擺動幅度較大的特殊情況,則不能準確判斷。小鼠劇烈掙扎過后,身體停止運動,但由于劇烈掙扎引起的慣性擺動,其幅度還較大,因此其差分圖像面積仍有可能超過面積閾值T,從而導致錯誤識別,影響最終的實驗結果。圖1為處于“不動狀態(tài)”的時間間隔Δt的相鄰兩幀。

圖1 處于“不動狀態(tài)”和“主動掙扎”的相鄰兩幀(1)
如圖1所示,根據(jù)式11有:
(12)
因此,利用差分閾值進行行為判斷,容易出現(xiàn)錯誤。
利用幀間差分進行小鼠行為判斷僅僅利用圖像像素空間位置變化特征,而在行為識別應用中,利用圖像輪廓特征往往效果更好。為了解決幀差法在運動狀態(tài)識別方面的不足,文中利用目標小鼠輪廓來實現(xiàn)小鼠行為識別。上一節(jié)詳細介紹了基于圖像輪廓的Hu不變矩,圖像輪廓Hu不變矩具有輪廓平移、旋轉、縮放穩(wěn)定性,利用這一特性,可以確定小鼠的“不動狀態(tài)”。
當小鼠處于“不動狀態(tài)”時,即便有較大幅度的慣性擺動,該過程中小鼠目標輪廓點仍然只是進行仿射變換,也即繞懸掛點旋轉。由于Hu不變矩能保持旋轉不變性,因此可以利用該特性來確定小鼠是否處于“不動狀態(tài)”。


圖2 處于“不動狀態(tài)”和“主動掙扎”的相鄰兩幀(2)
分別提取圖2中各目標小鼠圖像的輪廓,進而利用基于圖像輪廓的矩計算其輪廓的Hu不變量,結果如表1所示。

表1 圖2中小鼠目標輪廓的Hu不變量
從表1能夠看出,對于兩組測試對象,其組內(nèi)各個Hu不變量變化很小,而組間各個Hu不變量相比之下則有變化。同時,測試對象G1、G2均滿足特征:輪廓位置發(fā)生改變(旋轉),但輪廓形狀保持穩(wěn)定。所以,可以通過相鄰幀圖像輪廓之間的Hu不變量來判斷小鼠是否處于“不動狀態(tài)”。此外,相鄰幀若處于相同運動狀態(tài),則其Hu不變量改變較小,若處于不同運動狀態(tài),也即運動狀態(tài)改變,則其Hu不變量改變較為明顯。對于Hu七個經(jīng)典不變量,一部分表現(xiàn)更好,另一部分表現(xiàn)較差,因此,如何利用這七個不變量,度量Hu特征的距離變得尤為重要。距離度量也就是對七個經(jīng)典不變量進行組合、歸一,最終能夠得到兩個Hu不變量之間距離矢量值。
輪廓Hu特征不變量距離度量如下:
(13)

各連續(xù)幀目標輪廓Hu特征距離矢量見表2。
從表2能夠看出,當小鼠處于“不動狀態(tài)”時,其相鄰兩幀目標輪廓的Hu特征距離較小,而處于“主動掙扎”過程的相鄰幀目標輪廓的Hu特征距離矢量明顯偏大,因此,可以通過Hu特征距離矢量閾值Thu來判斷小鼠所處狀態(tài)。

表2 各連續(xù)幀目標輪廓Hu特征距離矢量
(14)
其中,H(ft,ft-1)表示時間間隔為Δt的相鄰兩幀圖像目標輪廓的Hu特征距離。
通過上一節(jié)的小鼠運動狀態(tài)分析,實驗中選取一段時長118 s的視頻錄像,計算其連續(xù)幀之間的Hu特征距離。
F(t)=H(It,It-1)
(15)
連續(xù)幀間Hu特征原始數(shù)據(jù)如圖3(a)所示。從中可以看出,雖然連續(xù)幀間的Hu特征呈現(xiàn)較為明顯的區(qū)域分布,但在某些細節(jié)方面仍然表現(xiàn)不夠明顯,因此,需要將原始數(shù)據(jù)進行濾波處理。在本實驗中,采用均值濾波方法,通過實驗對比,濾波窗口大小為5能夠得到較好的實驗結果。
濾波平滑過后的數(shù)據(jù)相比原始數(shù)據(jù)則更加規(guī)范,特征更加明顯,選取閾值,對Hu特征進行分類。
(16)
其中,Thu為Hu特征距離閾值。
因此,可以得到視頻錄像對應的0、1序列,結果如圖3(b)所示。從圖3(b)能夠看出小鼠運動狀態(tài)的改變過程,通過小鼠狀態(tài)的切換時刻,可以確定小鼠每個狀態(tài)的運動時長,連續(xù)的0或1則是一個持續(xù)的運動狀態(tài),得到小鼠運動狀態(tài)結果為MS(s1,s2,…,sn)。實驗結果中仍然有一些錯誤數(shù)據(jù),定義FS(i)表示過濾掉持續(xù)時間較短的狀態(tài)后的實驗結果,這里的過濾方法是將持續(xù)時間較短的運動狀態(tài)添加到前一個運動狀態(tài)。

圖3 數(shù)據(jù)分布
(17)
其中,d(si)表示狀態(tài)si持續(xù)的時間;Td表示小鼠運動狀態(tài)持續(xù)最小時間,也即運動狀態(tài)持續(xù)時間閾值。
處理后的實驗結果如圖3(c)所示,從中能夠非常明顯地看出小鼠的運動狀態(tài)持續(xù)過程,圖中橫軸上有五個時刻,分別如下:
(18)
因此最終實驗結果FS(i)包含五個運動狀態(tài),狀態(tài)與運動時間及通過人眼觀察實驗錄像,得到的狀態(tài)與時長如表3所示。

表3 實驗統(tǒng)計與人眼觀察的目標小鼠運動狀態(tài)
實驗結果與人眼觀察結果非常接近。在實驗統(tǒng)計中,通常利用小鼠整個過程的“不動時間”總長來判斷藥物藥效,實驗結果與人眼觀察結果中“不動時長”總長分別為:
(19)
“不動狀態(tài)”時間統(tǒng)計錯誤率為:

(20)
為了進一步確定文中算法在小鼠懸尾實驗中行為識別的準確率,需要對文中算法所得到的每個行為及其持續(xù)時間與人眼觀察結果進行對比。考慮到文中是對一段視頻錄像中行為進行識別,因此可以看成是兩個長度相同的時間序列進行相似度匹配,將文中算法統(tǒng)計結果與人眼觀察結果進行分割,均分割為時長1 s的子狀態(tài)序列,再對比兩個序列的相似度。

(21)
式21計算一段視頻利用文中算法進行運動提取的準確率R,通過對5段實驗視頻進行如表3所示的對比,最終得到文中算法提取的準確率平均為90%。
小鼠懸尾實驗是最為常見的行為絕望模型實驗,通過統(tǒng)計小鼠懸尾過程中“不動時間”長短,可以評價抗抑郁藥等藥物的藥效。利用計算機視覺處理技術完成實驗數(shù)據(jù)統(tǒng)計與分析,能夠避免人眼觀察的主觀性,以及減輕實驗人員的工作負擔,提高實驗效率。實驗證明,通過提取小鼠輪廓特征,分析小鼠運動狀態(tài)及其改變過程,從而準確提取小鼠“不動狀態(tài)”的持續(xù)過程及總時長,進而對藥物做出較為客觀的評價。
文中只對小鼠懸尾實驗進行了“慣性擺動”與“主動掙扎”的區(qū)分,未來會更為深入并細化小鼠的運動狀態(tài),例如爬升、身體軀干卷曲等,從而提取更多的實驗數(shù)據(jù)特征,為藥物測試等其他實驗提供更多的評價標準。此外,所有實驗圖像均是普通攝像頭采集,在后期可以利用深度攝像頭進行相關實驗,進而提高實驗的準確率。