張飛宇,王美麗,2,3※,王正超
(1. 西北農(nóng)林科技大學(xué)信息工程學(xué)院,楊凌 712100; 2. 農(nóng)業(yè)農(nóng)村部農(nóng)業(yè)物聯(lián)網(wǎng)重點(diǎn)實(shí)驗(yàn)室,楊凌 712100;3. 陜西省農(nóng)業(yè)信息感知與智能服務(wù)重點(diǎn)實(shí)驗(yàn)室,楊凌 712100)
目前畜牧業(yè)存在養(yǎng)殖成本高、效率低等問題,規(guī)?;?、智能化圈養(yǎng)成為畜牧業(yè)發(fā)展的必然趨勢[1]。但隨著養(yǎng)殖密度增大,牲畜患病的概率也隨之加大。因此,有效的疾病預(yù)防是規(guī)?;B(yǎng)殖的重要環(huán)節(jié)。研究表明,牲畜行為與疾病之間存在一定的聯(lián)系[2],因此加強(qiáng)對牲畜行為的研究與分析,可以為其疾病預(yù)測提供研究思路和解決途徑。其中,骨骼關(guān)鍵點(diǎn)檢測作為動(dòng)作識別、行為分析的前置任務(wù),是實(shí)現(xiàn)動(dòng)物體況信息的無接觸判別和異常信息預(yù)警的關(guān)鍵步驟。同時(shí),骨骼關(guān)鍵點(diǎn)檢測還可以實(shí)現(xiàn)對動(dòng)物的跟蹤保護(hù)和身份識別[3]。
傳統(tǒng)方法研究動(dòng)物的行為或姿態(tài)時(shí),常常需要將物理標(biāo)記物或傳感器附著到動(dòng)物的關(guān)鍵部位以達(dá)到收集數(shù)據(jù)的目的[4-5],但是這種方法會(huì)帶來一定的創(chuàng)傷,且動(dòng)物本身的活動(dòng)會(huì)造成傳感器的丟失或位移,存在較大的局限性。
近年來,深度學(xué)習(xí)技術(shù)在畜禽養(yǎng)殖領(lǐng)域的應(yīng)用快速發(fā)展,大量學(xué)者研究畜禽行為識別[6-7]、個(gè)體檢測[8]等任務(wù)。研究人員發(fā)現(xiàn)動(dòng)物骨骼關(guān)鍵點(diǎn)檢測與人體姿態(tài)估計(jì)任務(wù)目標(biāo)相同。人體姿態(tài)估計(jì)的成功來源于大規(guī)模數(shù)據(jù)集[9],但手動(dòng)標(biāo)記數(shù)據(jù)需要耗費(fèi)大量的人力和成本。相比人體姿態(tài)數(shù)據(jù)集,動(dòng)物關(guān)鍵點(diǎn)數(shù)據(jù)集不僅更少,而且更難收集[10]。動(dòng)物由于毛發(fā)、姿態(tài)等原因更容易形成自身遮擋,而且其四肢比人體更對稱,導(dǎo)致識別難度更大[11]。Li 等[12]提出基于無監(jiān)督的動(dòng)物姿態(tài)估計(jì)方法,從CAD 圖像生成的偽標(biāo)簽在線更新到真實(shí)結(jié)果。該方法為解決動(dòng)物數(shù)據(jù)集不足問題提供思路,但是結(jié)果不夠準(zhǔn)確,無法應(yīng)對復(fù)雜情況。
目前,基于卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks, CNN)的姿態(tài)估計(jì)方法可以很好地學(xué)習(xí)特征檢測關(guān)鍵點(diǎn)[13]。Xiao 等[14]提出的SimpleBaseline 方法先檢測出圖片中每個(gè)人的區(qū)域框,然后獨(dú)立地去檢測單人區(qū)域的姿勢。Bao 等[15]基于神經(jīng)網(wǎng)絡(luò)搜索技術(shù)為姿勢估計(jì)任務(wù)設(shè)計(jì)特征提取器PoseNAS,該方法的搜索策略可以端到端地設(shè)計(jì)姿勢編碼器和解碼器。然而這些卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)復(fù)雜且參數(shù)量大,訓(xùn)練及推理會(huì)占用大量計(jì)算資源和時(shí)間,在實(shí)際應(yīng)用場景中受限。因此需要研究更實(shí)用高效的網(wǎng)絡(luò)結(jié)構(gòu)。Transformer 采用基于自注意力和多層感知器的編碼器-解碼器架構(gòu)[16],在各種視覺任務(wù)中顯示出巨大的潛力[17-19]。TokenPose 使用基于Token 的Transformer 結(jié)構(gòu)解決人體姿態(tài)估計(jì)問題,通過自注意力交互捕獲外觀線索和約束線索[20]。但是該方法需要大量的數(shù)據(jù)訓(xùn)練,并且對于動(dòng)物骨骼關(guān)鍵點(diǎn)的檢測性能不佳,無法直接應(yīng)用于本文任務(wù)。Sun 等[21]提出高分辨率姿態(tài)估計(jì)網(wǎng)絡(luò)(HRNet),該方法在特征提取過程中并行連接多個(gè)子網(wǎng),從而獲得更多的語義信息,使準(zhǔn)確率提升。
綜上所述,基于 HRNet 的特征提取優(yōu)勢與Transformer 結(jié)構(gòu)的全局建模特點(diǎn),本文提出了一種高效的動(dòng)物骨骼關(guān)鍵點(diǎn)檢測模型(HRNet-Transformer,HRTF)。使用改進(jìn)的Transformer 編碼器取代常規(guī)卷積網(wǎng)絡(luò)高維特征提取部分;加入多尺度融合,提升模型不同維度特征融合能力;使用Hardswish 激活函數(shù)[22]作為網(wǎng)絡(luò)的主激活函數(shù),進(jìn)一步提升網(wǎng)絡(luò)的檢測精度。為了更好的驗(yàn)證該方法的魯棒性和泛化能力,本文創(chuàng)建了一個(gè)包含養(yǎng)殖場與野外場景中多品種的羊關(guān)鍵點(diǎn)數(shù)據(jù)集,應(yīng)用該數(shù)據(jù)集和已有的動(dòng)物關(guān)鍵點(diǎn)數(shù)據(jù)集ATRW[23]進(jìn)行試驗(yàn),將本文算法和其他算法進(jìn)行對比分析。試驗(yàn)結(jié)果表明該網(wǎng)絡(luò)比主流卷積神經(jīng)網(wǎng)絡(luò)更高效,在動(dòng)物數(shù)據(jù)集上表現(xiàn)優(yōu)秀,且具有可解釋性。
使用單目相機(jī)拍攝陜西省楊凌區(qū)曹新莊試驗(yàn)站山羊圖像共1 600 張,并進(jìn)行預(yù)處理。為增加數(shù)據(jù)集魯棒性,從Cao 等[11]制作的開源動(dòng)物數(shù)據(jù)集中增選多場景羊的圖像,最終共收集1 800 張羊只圖像作為數(shù)據(jù)集。包含不同姿態(tài)、不同品種的羊圖像,如圖1 所示。體現(xiàn)了數(shù)據(jù)集的多樣性,充分考慮實(shí)際檢測時(shí)的復(fù)雜場景。該數(shù)據(jù)集按7∶3 的比例分為訓(xùn)練集和測試集。由于該數(shù)據(jù)集規(guī)模較小,為防止模型過擬合,對訓(xùn)練集采用五折交叉驗(yàn)證法進(jìn)行驗(yàn)證[24]。
本文采用輕量級的圖像標(biāo)注工具VIA[25]進(jìn)行人工標(biāo)注,17 個(gè)骨骼關(guān)鍵點(diǎn)標(biāo)注樣例如圖1e 所示。以羊骨骼關(guān)鍵點(diǎn)為例,1~3 號為面部關(guān)鍵點(diǎn),4~9 號為前腿關(guān)鍵點(diǎn),10~15 號為后腿關(guān)鍵點(diǎn),16 號為尾巴關(guān)鍵點(diǎn),17 號為身體中心關(guān)鍵點(diǎn)。每張圖片需要框選出羊只主體并標(biāo)注該羊只對應(yīng)的17 個(gè)關(guān)鍵點(diǎn)。在標(biāo)注關(guān)鍵點(diǎn)時(shí),嚴(yán)格按照1號至17 號關(guān)鍵點(diǎn)順序進(jìn)行標(biāo)注,相應(yīng)的關(guān)鍵點(diǎn)標(biāo)簽會(huì)被自動(dòng)對齊。
除了本文制作的羊數(shù)據(jù)集,為了進(jìn)一步驗(yàn)證模型的泛化性和遷移能力,試驗(yàn)訓(xùn)練集還加入與圖1e 定義一致的東北虎公開骨骼關(guān)鍵點(diǎn)數(shù)據(jù)集ATRW[23]。該數(shù)據(jù)集的圖像選自動(dòng)物園監(jiān)控視頻,包含92 頭東北虎個(gè)體,共4 124張圖像數(shù)據(jù)。每張圖片中包含一個(gè)東北虎主體及15 個(gè)關(guān)鍵點(diǎn),相比羊數(shù)據(jù)集缺少2 個(gè)前膝蓋關(guān)鍵點(diǎn),1~2 號關(guān)鍵點(diǎn)為耳朵。此外,在測試集中增加了VOC 數(shù)據(jù)集[26]的牛、馬等動(dòng)物圖像做跨域測試。為統(tǒng)一標(biāo)準(zhǔn),圖像數(shù)據(jù)均采用JPEG 格式,標(biāo)注格式采用COCO 格式[27]。
本文在 HRNet 模型的基礎(chǔ)上,引入優(yōu)化的Transformer 編碼器和多尺度融合模塊,提出了一種動(dòng)物骨骼關(guān)鍵點(diǎn)檢測模型HRTF,該模型由3 部分組成:1)以卷積神經(jīng)網(wǎng)絡(luò)作為主干用于提取圖像低級特征的特征提取器;2)用于捕捉全局跨位置信息,對高級語義特征進(jìn)行建模的Transformer 編碼器;3)用于輸出最終預(yù)測結(jié)果的回歸關(guān)鍵點(diǎn)熱圖模塊。HRTF模型結(jié)構(gòu)如圖2所示。本文模型可以從更高的分辨率直接獲得全局約束關(guān)系,并保留細(xì)粒度的局部特征信息。除此之外針對基于Transformer 結(jié)構(gòu)的TokenPose 模型計(jì)算效率低、在小數(shù)據(jù)集上訓(xùn)練效果不佳的問題,HRTF 模型不僅可以獲得更好性能,而且參數(shù)量較小。不同規(guī)模的模型適用于不同精度和運(yùn)行速度的需求。
HRNet 的并聯(lián)設(shè)計(jì)有助于進(jìn)行特征融合[21]。該網(wǎng)絡(luò)由多個(gè)子網(wǎng)絡(luò)并行連接而成,通常設(shè)置4 級子網(wǎng),當(dāng)前子網(wǎng)的分辨率是前一級的1/2。該網(wǎng)絡(luò)將高分辨率子網(wǎng)用作網(wǎng)絡(luò)的第一階段,通過添加較低分辨率子網(wǎng)來形成更多的階段。其中第一階段子網(wǎng)使用Bottleneck 模塊,其余子網(wǎng)使用BasicBlock 模塊[28]。下采樣時(shí),使用步長為2的3×3 卷積;上采樣時(shí),先使用1×1 卷積進(jìn)行通道數(shù)的匹配,再使用最近鄰差值;相同分辨率使用恒等映射。重復(fù)多次對不同尺度的特征進(jìn)行融合。然而,HRNet 需要堆疊多層才能得到全局信息,也很難捕捉關(guān)鍵點(diǎn)之間的約束關(guān)系,其復(fù)雜的并行結(jié)構(gòu)和較少的下采樣次數(shù)導(dǎo)致推理速度較慢,尤其是最后一級子網(wǎng)由于需要融合前3級子網(wǎng)的關(guān)鍵點(diǎn)特征信息,參數(shù)量占比超過整個(gè)網(wǎng)絡(luò)的70%。
為了提升網(wǎng)絡(luò)性能,本研究將HRNet 前3 級子網(wǎng)設(shè)計(jì)成并聯(lián)形式,增強(qiáng)模型對動(dòng)物圖像低維特征的獲取能力。優(yōu)化Transformer 編碼器使其替換最后一級子網(wǎng),在減少參數(shù)規(guī)模的同時(shí)有效的提取高維特征。然后通過特征融合模塊將高分辨率和低分辨率的特征信息進(jìn)行多尺度融合,提升對動(dòng)物骨骼關(guān)鍵點(diǎn)的定位準(zhǔn)確率。
引入Transformer 編碼器可以有效的解決HRNet 參數(shù)量大、高維特征提取能力差的問題,有助于遮擋、趴臥等復(fù)雜場景下對關(guān)鍵點(diǎn)的定位。但是,常規(guī)Transformer編碼器需要大量的訓(xùn)練集數(shù)據(jù),并且訓(xùn)練時(shí)收斂慢。因此,本文對Transformer 模塊進(jìn)行了改進(jìn),降低模型對數(shù)據(jù)量的要求,加快收斂速度。
優(yōu)化后的Transformer 編碼器由3 部分組成:正弦位置嵌入編碼(Sine Position Embedding, SPE)[16]、多頭注意力模塊(Multi-head Self-Attention, MSA)[18]和多層感知器模塊(Multi-layer Perceptron, MLP)[16],整體設(shè)計(jì)如圖3 所示。
假設(shè)特征提取器的輸出F∈Rf×H×W,H,W表示最后一個(gè)子網(wǎng)的輸出分辨率,f表示通道數(shù)。不同于ViT 將輸入圖像分割為相同大小的網(wǎng)格小塊,再將網(wǎng)格塊編碼為Token[18]。本文通過1×1 卷積和降維操作將特征圖F降維到序列F∈RL×d,式中分辨率L=H×W,d為通道數(shù),該操作復(fù)雜度低且可以保留特征信息。同時(shí),根據(jù)位置嵌入編碼模塊獲取位置信息SPE∈RL×d,使特征圖帶有必要的位置關(guān)系。最后F與SPE 一起進(jìn)入由多頭注意力模塊和多層感知器模塊串聯(lián)組成的編碼器中。Transformer 模塊整體過程可表示為
式中E是當(dāng)前Transformer 編碼器層的輸出序列,作為下一編碼器層或熱圖回歸模塊的輸入序列。
2.2.1 位置嵌入編碼
關(guān)鍵點(diǎn)檢測是對位置信息高度敏感的任務(wù),動(dòng)物骨骼相對于人體的對稱性更強(qiáng),點(diǎn)之間相似度高,檢測時(shí)易出現(xiàn)混淆。由于沒有引入循環(huán)結(jié)構(gòu)和卷積結(jié)構(gòu),Transformer 模塊本身是缺失位置信息的。SPE 給Transformer 編碼器的輸入加上位置編碼,讓特征向量保持空間位置關(guān)系[16]。但是SPE 是對降維后的向量序列直接編碼,而降維后再編碼會(huì)損失2D 空間上的信息。不同于SPE,針對關(guān)鍵點(diǎn)檢測這一任務(wù),位置信息在圖像的水平x和垂直y方向上是獨(dú)立的。本文對2D 圖像特征圖先進(jìn)行x和y方向的位置嵌入編碼再降維,以減少空間信息的損失,使網(wǎng)絡(luò)可以更為準(zhǔn)確的獲取骨骼點(diǎn)的位置信息。
本文改進(jìn)的位置編碼過程表示為
2.2.2 多頭注意力模塊
自注意力機(jī)制可以加強(qiáng)關(guān)鍵特征的表達(dá)能力,提取稀疏數(shù)據(jù)的重要特征。為了使網(wǎng)絡(luò)可以更好的捕捉骨骼關(guān)鍵點(diǎn)之間的內(nèi)部相關(guān)性,本文將帶有位置信息的特征圖輸入到帶有3 個(gè)權(quán)重參數(shù)矩陣W q,W k,W v?Rd×d的MSA 模塊中,Q,K,V?RL×d分別表示對應(yīng)的查詢量(query)、鍵(key)和值(value)。MSA 是帶有h個(gè)頭的自注意力操作,能以有限的層數(shù)進(jìn)行依賴內(nèi)容的全局交互,而不是僅關(guān)注圖像局部區(qū)域。通過將值矩陣Q中的每個(gè)值與W中的相應(yīng)權(quán)重進(jìn)行線性組合,實(shí)現(xiàn)對特征向量F的更新。因此,注意力圖可以被看作是動(dòng)態(tài)權(quán)重。然后,將得到的注意力圖與低維特征圖再次融合,以進(jìn)行不同尺度特征信息的交換。這種機(jī)制在捕捉最終關(guān)鍵點(diǎn)預(yù)測熱圖與上下文關(guān)系方面起著關(guān)鍵作用。
2.2.3 多層感知器模塊
多層感知器模塊MLP 可以更好的構(gòu)建出動(dòng)物骨骼關(guān)鍵點(diǎn)之間的空間位置聯(lián)系,提升模型的定位效率。為了節(jié)約計(jì)算成本并提高模型的健壯性,本文對MLP 模塊進(jìn)行了改進(jìn)。該模塊通常由2 個(gè)全連接層、一層ReLU 激活函數(shù)以及LayerNorm 組成。本文設(shè)計(jì)的MLP 先將維度din降維到dout再升維回din,采用Hardswish 激活函數(shù),數(shù)學(xué)表達(dá)為
與ReLU 激活函數(shù)相比,Hardswish 是非單調(diào)的,有助于緩解反向傳播期間的梯度消失問題,保證訓(xùn)練初期的穩(wěn)定性[22]。全連接層會(huì)使用大量參數(shù),本文的MLP 相比較于常規(guī)先升維再降維的操作可以節(jié)約計(jì)算成本而不會(huì)損失模型精度。
本文選擇回歸熱圖的方法預(yù)測關(guān)鍵點(diǎn)坐標(biāo),并設(shè)計(jì)輕量級熱圖回歸模塊。相比較于直接回歸點(diǎn)坐標(biāo),該方法結(jié)果更準(zhǔn)確更容易訓(xùn)練。首先將Transformer 模塊的輸出升維到E∈RC×d×d,通過 1×1 卷積生成預(yù)測熱圖M∈Rk×H’×W’,k為關(guān)鍵點(diǎn)個(gè)數(shù),H’和W’為輸入圖像尺寸的1/4。在坐標(biāo)與熱圖的轉(zhuǎn)換過程中,采用DARK 策略[29],以減少從小尺度熱圖進(jìn)行編解碼時(shí)的量化誤差,保證生成結(jié)果的準(zhǔn)確性。使用均方誤差(Mean Square Error)計(jì)算預(yù)測熱圖和目標(biāo)熱圖之間的損失。
本試驗(yàn)均在配置為Intel Xeon 8160T @ 2.1GHz 和NVIDIA TITAN RTX 的PC 上進(jìn)行,使用 PyTorch 深度學(xué)習(xí)框架構(gòu)建模型。試驗(yàn)選用Adam 優(yōu)化器,batch 大小設(shè)置為16,訓(xùn)練次數(shù)設(shè)置為200 次迭代,學(xué)習(xí)率從10-4下逐漸降到10-5。圖像主體的長寬比設(shè)為1:1,從原始圖像中剪裁出標(biāo)注主體然后輸入到模型中,輸入大小為256×256。熱圖大小設(shè)置為輸入大小的1/4。每張圖像都要經(jīng)過一系列的數(shù)據(jù)增強(qiáng)操作,包括翻轉(zhuǎn)、旋轉(zhuǎn)(±40°)和縮放(±30%)。對于數(shù)據(jù)規(guī)模較小的羊數(shù)據(jù),在訓(xùn)練時(shí)采用五折交叉驗(yàn)證法[24],將訓(xùn)練集隨機(jī)分為5 份,其中4 份進(jìn)行訓(xùn)練,余下的一份做驗(yàn)證,重復(fù)該過程5 次從中挑選最優(yōu)模型。在測試中,通過計(jì)算原始圖像和翻轉(zhuǎn)圖像的熱圖平均值計(jì)算最終得分。
試驗(yàn)采用基于OKS(Object Keypoint Similarity)[27]的平均準(zhǔn)確率(Average Precision, AP)、平均召回率(Average Recall, AR)[30]分?jǐn)?shù)作為評估指標(biāo)。采用十億次浮點(diǎn)運(yùn)算數(shù)(Giga Floating-point Operations Per Second,GFLOPs)描述模型的計(jì)算量,評估模型對硬件算力要求。
為了與特征提取器HRNet 的參數(shù)量相對應(yīng),本文設(shè)計(jì)3 個(gè)規(guī)模不同的網(wǎng)絡(luò)HRTF-S、HRTF-M 和HRTF-L,兼容更多的應(yīng)用場景。當(dāng)數(shù)據(jù)集規(guī)模較小時(shí),如本研究中的小規(guī)模羊數(shù)據(jù)集,可使用小規(guī)模網(wǎng)絡(luò)HRTF-S,不容易出現(xiàn)過擬合,且可以保證實(shí)時(shí)性;大規(guī)模網(wǎng)絡(luò)HRTF-L精度最佳,但是對硬件要求較高,檢測速度相比其它兩個(gè)規(guī)模的網(wǎng)絡(luò)較慢;中等規(guī)模網(wǎng)絡(luò)HRTF-M 介于HRTF-S和HRTF-L 之間,能在精度和速度之間達(dá)到一定的平衡。在實(shí)際應(yīng)用時(shí),可根據(jù)不同數(shù)據(jù)規(guī)模、硬件條件、實(shí)時(shí)性需求等選擇合適的網(wǎng)絡(luò)模型。參數(shù)設(shè)置如表1 所示。
表1 HRTF 不同規(guī)模網(wǎng)絡(luò)的參數(shù)設(shè)置Table 1 Parameter setting table of HRTF network
為了評價(jià)本文方法對動(dòng)物骨骼關(guān)鍵點(diǎn)的檢測性能,對比了姿態(tài)估計(jì)領(lǐng)域的方法SimpleBaseline[14]、HRNet[21]、PoseNAS[15]和TokenPose[20]。所有模型通過ImageNet 進(jìn)行預(yù)訓(xùn)練[31]。使用羊數(shù)據(jù)集作為訓(xùn)練集和測試集,本文算法HRTF 和其他算法的對比結(jié)果如表2 所示。
表2 羊數(shù)據(jù)集下各模型性能對比Table 2 The performance comparison of sheep dataset
從表2 中可以看出,與HRNet-48 相比,HRTF-L 參數(shù)量和計(jì)算量分別減少71%和42%,并獲得目前對比算法中的最優(yōu)結(jié)果,AP 達(dá)到77.1%,試驗(yàn)預(yù)測效果如圖4a 所示。改善了HRNet-48 在小數(shù)據(jù)集上容易出現(xiàn)過擬合的問題。HRTF-S與TokenPose-B 的性能接近而計(jì)算量要低的多,單張圖像的檢測時(shí)間為14 ms,實(shí)現(xiàn)了實(shí)時(shí)檢測,說明本文提出的混合結(jié)構(gòu)模型以更少的計(jì)算量和復(fù)雜度獲得了更好的檢測效果。
TokenPose-L 由于其Transformer 結(jié)構(gòu)設(shè)計(jì)復(fù)雜,收斂速度慢,在第200 次迭代時(shí)準(zhǔn)確率僅能到71.5%,在300次迭代時(shí)才趨于收斂。而HRTF有效改善了這一缺點(diǎn),在更少的訓(xùn)練次數(shù)下收斂就能趨于穩(wěn)定。
實(shí)際應(yīng)用中動(dòng)物圖像常來源于監(jiān)控?cái)z像頭,大部分的分辨率較低,特征提取難度增大,而且更大的輸入尺寸需要更大的計(jì)算量。如表2 所示,使用192×192 作為圖像輸入大小時(shí),SimpleBaseline 和HRNet 準(zhǔn)確率分別下降3.6 個(gè)百分點(diǎn)和3.9 個(gè)百分點(diǎn),說明它們對羊圖像輸入尺寸敏感,在小尺寸圖像上表現(xiàn)不佳。HRTF-L 仍能達(dá)到75%的結(jié)果,證明其檢測不同尺度的圖像時(shí)魯棒性更好,因此HRTF 在實(shí)際的養(yǎng)殖場中的適用性更強(qiáng)。
基于東北虎數(shù)據(jù)集的試驗(yàn)對比結(jié)果如表3 所示。當(dāng)數(shù)據(jù)集規(guī)模增大后,模型間差距縮??;關(guān)鍵點(diǎn)數(shù)量減少,整體結(jié)果上升,但HRTF-L 仍然獲得了最好的結(jié)果,準(zhǔn)確率達(dá)到89.7%,試驗(yàn)預(yù)測效果如圖4b 所示。對比HRNet-32和HRTF-S 結(jié)果可以發(fā)現(xiàn),盡管HRNet-32 有結(jié)構(gòu)更復(fù)雜的特征提取主干,但是結(jié)果比HRTF-S 低。這說明Transformer 編碼器對羊圖像中的高級語義信息的建模能力至關(guān)重要,相比較于卷積網(wǎng)絡(luò)可以從低維特征提取器中獲取更多有效信息。
表3 東北虎數(shù)據(jù)集下各模型性能對比Table 3 The performance comparison of Amur tiger dataset
以HRTF-M 為基準(zhǔn)模型在羊數(shù)據(jù)集上進(jìn)行消融試驗(yàn),與HRNet-32 對比,驗(yàn)證位置嵌入編碼模塊和多層感知器模塊的有效性,結(jié)果如表4 所示。
表4 消融試驗(yàn)結(jié)果Table 4 The results of ablation test
相比較于完整HRTF-M 模型,去掉位置嵌入編碼后準(zhǔn)確率下降了0.8 個(gè)百分點(diǎn),去掉多層感知器后準(zhǔn)確率下降了0.5 個(gè)百分點(diǎn)。說明SPE 提供的位置信息和MLP 提供的信息融合均對整個(gè)模型起到正向反饋,可以有效提升模型性能,證明了本文中各組成模塊的有效性。
動(dòng)物骨骼存在一定的對稱性和領(lǐng)域關(guān)聯(lián)性,比如腿部的骨骼關(guān)鍵點(diǎn)之間存在聯(lián)系。優(yōu)化后的Transformer 編碼器的能夠更精準(zhǔn)的建立關(guān)鍵點(diǎn)位置之間的依賴關(guān)系。將HRTF-L 的中間輸出層可視化,如圖5 所示,注意力模塊中的可視化熱圖明顯的反映出了關(guān)鍵點(diǎn)之間的聚集和聯(lián)系。而隨后的熱圖回歸模塊會(huì)進(jìn)一步細(xì)化關(guān)鍵點(diǎn)位置,輸出最終的預(yù)測位置。這說明注意力模塊可以有效的發(fā)現(xiàn)這些動(dòng)態(tài)特征,而不需要依賴圖像特征,證明了模型具有可解釋性,能夠用于解決遮擋、趴臥等復(fù)雜場景下對關(guān)鍵點(diǎn)定位困難的問題。
為進(jìn)一步說明模型的泛化性,本文選用VOC 數(shù)據(jù)集中的牛、馬和狗3 種動(dòng)物做測試集,使用以羊數(shù)據(jù)集為訓(xùn)練集的HRTF-L 模型進(jìn)行跨域試驗(yàn)。圖6 展示了這些試驗(yàn)的預(yù)測結(jié)果。不同動(dòng)物之間存在一定的骨骼空間關(guān)系相似性,但是外觀、體型存在很大差異。而結(jié)果顯示,使用羊骨骼模型在牛、馬和狗這些動(dòng)物身上均能較好地檢測出骨骼關(guān)鍵點(diǎn),證明了HRTF 模型具有良好的跨域性和泛化能力。
檢測動(dòng)物骨骼關(guān)鍵點(diǎn)是進(jìn)行動(dòng)物姿態(tài)識別和行為分析的前置任務(wù)。為實(shí)現(xiàn)準(zhǔn)確、高效的動(dòng)物骨骼關(guān)鍵點(diǎn)檢測,本文在HRNet 結(jié)構(gòu)基礎(chǔ)上引入了改進(jìn)的Transformer編碼器,增強(qiáng)了模型對動(dòng)物骨骼關(guān)鍵點(diǎn)的檢測性能,通過在自建的羊數(shù)據(jù)集和多種動(dòng)物數(shù)據(jù)集上試驗(yàn),證明了該方法的有效性和泛化性。主要結(jié)論如下:
1)通過改進(jìn)HRNet 的子網(wǎng)結(jié)構(gòu)并引入Transformer編碼器,使新模型可以從更高的分辨率直接獲得全局約束關(guān)系防止骨骼關(guān)鍵點(diǎn)錯(cuò)位,并保留細(xì)粒度的局部圖像特征信息。
2)改進(jìn)Transformer 編碼器結(jié)構(gòu),通過使用優(yōu)化的Transformer 編碼器替換模型中的最后一級子網(wǎng),模型獲得了更好檢測效果,同時(shí)參數(shù)量和計(jì)算量分別減少71%和42%。在小規(guī)模羊數(shù)據(jù)集和輸入小分辨率圖像的情況下準(zhǔn)確率達(dá)75%,適合實(shí)際場景應(yīng)用。
該模型可以提高動(dòng)物骨骼關(guān)鍵點(diǎn)檢測的準(zhǔn)確率,幫助更高效的完成動(dòng)物姿態(tài)識別和行為分析。在多種動(dòng)物數(shù)據(jù)集上進(jìn)行跨域測試,試驗(yàn)結(jié)果表明該模型具有較強(qiáng)的泛化能力和魯棒性。