本技術(shù)涉及計算機(jī),尤其涉及自動駕駛,具體涉及一種頭部姿態(tài)識別方法、裝置、設(shè)備及存儲介質(zhì)。
背景技術(shù):
1、在自動駕駛領(lǐng)域,需處理好駕駛員和車輛的自動駕駛系統(tǒng)之間的關(guān)系,特別是當(dāng)駕駛員出現(xiàn)疲倦或分神等異常行為時,車輛的自動駕駛系統(tǒng)需接管車輛。其中,判斷駕駛員是否存在異常行為主要通過頭部姿態(tài)識別方法。傳統(tǒng)的頭部姿態(tài)識別方法只能對正臉或稍微側(cè)臉的頭部姿態(tài)進(jìn)行識別,通過再檢測人臉的關(guān)鍵點(diǎn),采用關(guān)鍵點(diǎn)對齊的方法識別人臉的姿態(tài)。這種方法,采用的模型不是端到端模型,每個步驟都存在誤差,誤差累積,導(dǎo)致最終的結(jié)果不準(zhǔn)確,另外人臉關(guān)鍵點(diǎn)的檢測對圖像的要求較高,光照條件較差的情況下,無法識別關(guān)鍵點(diǎn)。
2、相關(guān)技術(shù)中,通過將殘差網(wǎng)絡(luò)為深度殘差網(wǎng)絡(luò)34層(deep?residual?networkwith34layers,resnet-34)的多個通道的模擬成三維立方體,對三維分別進(jìn)行積分確定3個向量,構(gòu)成旋轉(zhuǎn)矩陣。該方法中,通過真實(shí)標(biāo)簽的旋轉(zhuǎn)矩陣和預(yù)測值的旋轉(zhuǎn)矩陣之間的損失對模型進(jìn)行訓(xùn)練,損失函數(shù)在模型訓(xùn)練階段會發(fā)生震蕩,并且三維空間的旋轉(zhuǎn)的自由度為3,而該模型需要回歸9個數(shù),使得模型回歸的自由度過高,導(dǎo)致旋轉(zhuǎn)矩陣的誤差較大,無法準(zhǔn)確地表示圖像中的頭部姿態(tài)。因此,如何降低旋轉(zhuǎn)矩陣的誤差,提高姿態(tài)識別模型的準(zhǔn)確度是目前亟待解決的技術(shù)問題。
技術(shù)實(shí)現(xiàn)思路
1、本技術(shù)提供一種頭部姿態(tài)識別方法、裝置、設(shè)備及存儲介質(zhì),以至少解決相關(guān)技術(shù)中旋轉(zhuǎn)矩陣的誤差較大,姿態(tài)識別模型的準(zhǔn)確度較低的技術(shù)問題。本技術(shù)的技術(shù)方案如下:
2、根據(jù)本技術(shù)涉及的第一方面,提供一種頭部姿態(tài)識別方法,該方法包括:獲取待處理的頭部圖像;將待處理的頭部圖像輸入姿態(tài)識別模型,得到旋轉(zhuǎn)矩陣;姿態(tài)識別模型基于回歸算法的損失函數(shù)訓(xùn)練得到;回歸算法的損失函數(shù)包括旋轉(zhuǎn)矩陣在李代數(shù)上的對數(shù)映射的旋轉(zhuǎn)軸向量的損失函數(shù),用于反映基于回歸算法訓(xùn)練姿態(tài)識別模型得到的預(yù)測旋轉(zhuǎn)矩陣和真實(shí)旋轉(zhuǎn)矩陣在對應(yīng)的李代數(shù)上的對數(shù)映射的旋轉(zhuǎn)軸向量之間的夾角;旋轉(zhuǎn)矩陣用于表征待處理的頭部圖像中的頭部在三維空間中的姿態(tài)。
3、根據(jù)上述技術(shù)手段,回歸算法可以提供精確的三維旋轉(zhuǎn)矩陣,在回歸算法的損失函數(shù)基礎(chǔ)上,增加了旋轉(zhuǎn)矩陣在李代數(shù)上的對數(shù)映射的旋轉(zhuǎn)軸向量的損失函數(shù),避免了相關(guān)技術(shù)中回歸算法的損失函數(shù)在訓(xùn)練過程中發(fā)生震蕩的情況,降低了姿態(tài)識別模型輸出的旋轉(zhuǎn)矩陣的誤差,提高了旋轉(zhuǎn)矩陣的準(zhǔn)確性,使得旋轉(zhuǎn)矩陣可以更精準(zhǔn)地表示待處理的頭部圖像中頭部的狀態(tài),從而姿態(tài)識別模型可以更準(zhǔn)確地識別待處理的頭部圖像中頭部在空間中的位置、方向以及旋轉(zhuǎn)角度。
4、在一種可能的實(shí)現(xiàn)方式中,回歸算法為6d回歸算法;回歸算法的損失函數(shù)還包括:旋轉(zhuǎn)矩陣在李代數(shù)上的對數(shù)映射角度的損失函數(shù)、姿態(tài)識別模型輸出的2個三維向量之間的夾角的損失函數(shù)以及均方差損失函數(shù)。
5、根據(jù)上述技術(shù)手段,還可以基于回歸算法中的旋轉(zhuǎn)矩陣在李代數(shù)上的對數(shù)映射角度的損失函數(shù)、姿態(tài)識別模型輸出的2個三維向量之間的夾角的損失函數(shù)以及均方差損失函數(shù)對姿態(tài)識別模型進(jìn)行訓(xùn)練,從而避免了回歸算法的損失函數(shù)在訓(xùn)練過程中收斂性較差的情況,提高了姿態(tài)識別模型的精度和穩(wěn)定性。
6、在另一種可能的實(shí)現(xiàn)方式中,姿態(tài)識別模型還基于歐拉角預(yù)測算法的損失函數(shù)訓(xùn)練得到;歐拉角預(yù)測算法的損失函數(shù)包括:歐拉角的角度整數(shù)部分的損失函數(shù)和歐拉角的角度余數(shù)部分的損失函數(shù)。
7、根據(jù)上述技術(shù)手段,還可以基于歐拉角預(yù)測算法的損失函數(shù)對姿態(tài)識別模型進(jìn)行輔助訓(xùn)練,提高了姿態(tài)識別模型在訓(xùn)練過程中損失函數(shù)的收斂性,從而提高了姿態(tài)識別模型的精度和穩(wěn)定性。并且,修改了歐拉角的角度的編碼方式,將歐拉角的角度劃分為整數(shù)部分和余數(shù)部分,分別基于歐拉角的角度整數(shù)部分的損失函數(shù)和歐拉角的角度余數(shù)部分的損失函數(shù)對姿態(tài)識別模型進(jìn)行訓(xùn)練,避免了歐拉角的角度的編碼方式引起的損失震蕩,提高了姿態(tài)識別模型的準(zhǔn)確度。
8、在又種可能的實(shí)施方式中,上述方法還包括:構(gòu)建初始姿態(tài)識別模型;獲取多個頭部圖像數(shù)據(jù)和多個頭部圖像數(shù)據(jù)對應(yīng)的旋轉(zhuǎn)矩陣;將多個頭部圖像數(shù)據(jù)作為樣本,多個頭部圖像數(shù)據(jù)對應(yīng)的旋轉(zhuǎn)矩陣作為樣本標(biāo)簽,得到多個樣本數(shù)據(jù);對多個樣本數(shù)據(jù)進(jìn)行圖像增強(qiáng)處理,得到訓(xùn)練數(shù)據(jù);基于訓(xùn)練數(shù)據(jù)對初始姿態(tài)識別模型進(jìn)行訓(xùn)練,得到姿態(tài)識別模型。
9、根據(jù)上述技術(shù)手段,將多個樣本數(shù)據(jù)進(jìn)行圖像增強(qiáng)處理,使得姿態(tài)識別模型可以識別不同狀態(tài)的圖像,增強(qiáng)了姿態(tài)識別模型的泛化能力,并且,基于多個樣本數(shù)據(jù)對初始姿態(tài)識別模型進(jìn)行訓(xùn)練,使得姿態(tài)識別模型可以學(xué)習(xí)頭部圖像與旋轉(zhuǎn)矩陣之間的復(fù)雜關(guān)系,從而提高了姿態(tài)識別模型識別的準(zhǔn)確性。
10、在又一種可能的實(shí)施方式中,初始姿態(tài)識別模型包括:骨干網(wǎng)絡(luò)、特征轉(zhuǎn)換層和輸出層;構(gòu)建初始姿態(tài)識別模型,包括:基于重參數(shù)化視覺幾何組(re-parameterization?ofvisual?geometry?group,repvgg)網(wǎng)絡(luò),構(gòu)建初始姿態(tài)識別模型的骨干網(wǎng)絡(luò);基于平均池化層,構(gòu)建初始姿態(tài)識別模型的特征轉(zhuǎn)化層;基于回歸算法和歐拉角預(yù)測算法,構(gòu)建初始姿態(tài)識別模型的輸出層。
11、根據(jù)上述技術(shù)手段,repvgg網(wǎng)絡(luò)可以在模型的訓(xùn)練和推理階段進(jìn)行網(wǎng)絡(luò)結(jié)構(gòu)的優(yōu)化,從而使得姿態(tài)識別模型在保持計算效率的同時,提取出更加豐富的特征,平均池化層可以降低圖像的空間維度,并保留重要的信息,將repvgg網(wǎng)絡(luò)作為初始姿態(tài)識別模型的骨干網(wǎng)絡(luò),平均池化層作為初始姿態(tài)識別模型的特征轉(zhuǎn)化層,減少了姿態(tài)識別模型的參數(shù)量、降低了姿態(tài)識別模型對算力的需求,并且保證了姿態(tài)識別模型的精度,使得姿態(tài)識別模型更加輕量化。
12、在又一種可能的實(shí)施方式中,基于訓(xùn)練數(shù)據(jù)對初始姿態(tài)識別模型進(jìn)行訓(xùn)練,得到姿態(tài)識別模型,包括:基于訓(xùn)練數(shù)據(jù),分別確定初始姿態(tài)識別模型中回歸算法的第一輸出數(shù)據(jù)和歐拉角預(yù)測算法的第二輸出數(shù)據(jù);基于第一輸出數(shù)據(jù)確定回歸算法的第一損失值;基于第二輸出數(shù)據(jù)確定歐拉角預(yù)測算法的第二損失值;基于第一損失值和第二損失值,調(diào)整初始姿態(tài)識別模型,并訓(xùn)練調(diào)整后的初始姿態(tài)識別模型;基于訓(xùn)練后的初始姿態(tài)識別模型,構(gòu)建姿態(tài)識別模型;初始姿態(tài)識別模型的輸出層包括:回歸分支和歐拉角預(yù)測分支;姿態(tài)識別模型的輸出層包括:回歸分支和/或歐拉角預(yù)測分支。
13、根據(jù)上述技術(shù)手段,姿態(tài)識別模型可以基于回歸分支和歐拉角預(yù)測分支進(jìn)行訓(xùn)練,使得姿態(tài)識別模型可以識別頭部的旋轉(zhuǎn),以及頭部的歐拉角,提高了姿態(tài)識別模型對復(fù)雜姿態(tài)的識別能力。并且,同時基于回歸分支和歐拉角預(yù)測分支的損失值調(diào)整初始姿態(tài)識別模型,提高了姿態(tài)識別模型在關(guān)鍵特征上的識別精度。另外,姿態(tài)識別模型的輸出層可以根據(jù)需求選擇性地包含回歸分支和/或歐拉角預(yù)測分支,以便姿態(tài)識別模型適應(yīng)不同的應(yīng)用場景,提高了姿態(tài)識別模型的靈活性。
14、在又一種可能的實(shí)施方式中,基于第一損失值和第二損失值,調(diào)整初始姿態(tài)識別模型,并訓(xùn)練調(diào)整后的初始姿態(tài)識別模型,包括:基于第一損失值和第二損失值,采用sgd優(yōu)化器對初始姿態(tài)識別模型進(jìn)行迭代優(yōu)化;在迭代次數(shù)滿足第一預(yù)設(shè)閾值或者初始姿態(tài)識別模型收斂的情況下,停止優(yōu)化初始姿態(tài)識別模型,基于訓(xùn)練數(shù)據(jù)訓(xùn)練優(yōu)化后的初始姿態(tài)識別模型。
15、根據(jù)上述技術(shù)手段,基于第一損失值和第二損失值對初始姿態(tài)識別模型進(jìn)行迭代優(yōu)化,從而提高了姿態(tài)識別模型的精度和穩(wěn)定性。使用sgd優(yōu)化器對初始姿態(tài)識別模型進(jìn)行優(yōu)化,以便根據(jù)具體問題調(diào)整學(xué)習(xí)率和參數(shù),以適應(yīng)不同的訓(xùn)練需求。并且,通過監(jiān)測損失值和迭代次數(shù),在姿態(tài)識別模型收斂時停止訓(xùn)練,避免了資源浪費(fèi)。
16、在又一種可能的實(shí)施方式中,將待處理的頭部圖像輸入姿態(tài)識別模型,得到2個三維向量;2個三維向量用于表示待處理的頭部圖像中頭部的位置信息和方向信息;以2個三維向量的方向?yàn)榛鶞?zhǔn),將2個三維列向量轉(zhuǎn)化為第一旋轉(zhuǎn)矩陣和第二旋轉(zhuǎn)矩陣;對第一旋轉(zhuǎn)矩陣和第二旋轉(zhuǎn)矩陣進(jìn)行插值正交處理,得到旋轉(zhuǎn)矩陣。
17、根據(jù)上述技術(shù)手段,以姿態(tài)識別模型輸出的2個三維向量的方向?yàn)榛鶞?zhǔn),將2個三維向量轉(zhuǎn)化為第一旋轉(zhuǎn)矩陣和第二旋轉(zhuǎn)矩陣,并通過插值正交處理,得到旋轉(zhuǎn)矩陣,插值處理可以減少由于圖像噪聲或不完美姿態(tài)估計引起的誤差,通過插值處理,將第一旋轉(zhuǎn)矩陣和第二旋轉(zhuǎn)矩陣進(jìn)行平滑過渡,得到旋轉(zhuǎn)矩陣,從而旋轉(zhuǎn)矩陣可以更加準(zhǔn)確地表示待處理的頭部圖像中頭部的姿態(tài)。并且,通過插值處理,可以減少對高頻率更新的需求,降低計算負(fù)擔(dān),提高處理速度。
18、在又一種可能的實(shí)施方式中,方法還包括:確定旋轉(zhuǎn)矩陣在李代數(shù)上的對數(shù)映射的旋轉(zhuǎn)軸向量;至少基于旋轉(zhuǎn)矩陣在李代數(shù)上的對數(shù)映射的旋轉(zhuǎn)軸向量,確定待處理的頭部圖像中的頭部姿態(tài)是否處于異常狀態(tài)。
19、根據(jù)上述技術(shù)手段,通過旋轉(zhuǎn)矩陣在李代數(shù)上的對數(shù)映射的旋轉(zhuǎn)軸向量,判斷待處理的頭部圖像中的頭部姿態(tài)是否處于異常狀態(tài),以便在待處理的頭部圖像中的頭部姿態(tài)處于異常狀態(tài)的情況下,發(fā)出相應(yīng)的告警信息。
20、在又一種可能的實(shí)施方式中,方法還包括:確定旋轉(zhuǎn)矩陣在李代數(shù)上的對數(shù)映射角度;至少基于旋轉(zhuǎn)矩陣在李代數(shù)上的對數(shù)映射的旋轉(zhuǎn)軸向量,確定待處理的頭部圖像中的頭部姿態(tài)是否處于異常狀態(tài),包括:基于旋轉(zhuǎn)矩陣在李代數(shù)上的對數(shù)映射的角度和旋轉(zhuǎn)軸向量,確定待處理的頭部圖像中的頭部姿態(tài)是否處于異常狀態(tài)。
21、根據(jù)上述技術(shù)手段,還可以通過旋轉(zhuǎn)矩陣在李代數(shù)上的對數(shù)映射的角度和旋轉(zhuǎn)軸向量,判斷待處理的頭部圖像中的頭部姿態(tài)是否處于異常狀態(tài),以便在待處理的頭部圖像中的頭部姿態(tài)處于異常狀態(tài)的情況下,發(fā)出相應(yīng)的告警信息。
22、在又一種可能的實(shí)施方式中,基于旋轉(zhuǎn)矩陣在李代數(shù)上的對數(shù)映射角度和旋轉(zhuǎn)軸向量,確定待處理的頭部圖像中的頭部姿態(tài)是否處于異常狀態(tài),包括:基于旋轉(zhuǎn)矩陣在李代數(shù)上的對數(shù)映射的角度和旋轉(zhuǎn)軸向量,確定由標(biāo)準(zhǔn)正常姿態(tài)旋轉(zhuǎn)至待處理的頭部圖像中頭部姿態(tài)所需的目標(biāo)對數(shù)映射角度和目標(biāo)旋轉(zhuǎn)軸向量;在滿足以下至少一種情況時,確定待處理的頭部圖像的頭部姿態(tài)為異常姿態(tài):目標(biāo)對數(shù)映射角度位于第一角度范圍內(nèi)、目標(biāo)對數(shù)映射角度位于第二角度范圍外、目標(biāo)旋轉(zhuǎn)軸向量位于第一向量范圍內(nèi)、目標(biāo)旋轉(zhuǎn)軸向量位于第二向量范圍外。
23、根據(jù)上述技術(shù)手段,將目標(biāo)對數(shù)映射角度和目標(biāo)旋轉(zhuǎn)軸向量分別與第一角度范圍、第二角度范圍、第一向量范圍、第二向量范圍進(jìn)行比較,判斷待處理的頭部圖像中的頭部姿態(tài)是否異常,從而可以及時發(fā)現(xiàn)異常行為,發(fā)出告警并采取相應(yīng)的安全措施,減少事故發(fā)生。
24、在又一種可能的實(shí)施方式中,基于旋轉(zhuǎn)矩陣在李代數(shù)上的對數(shù)映射角度和旋轉(zhuǎn)軸向量,確定待處理的頭部圖像中的頭部姿態(tài)是否處于異常狀態(tài),包括:在旋轉(zhuǎn)矩陣在李代數(shù)上的對數(shù)映射角度與標(biāo)準(zhǔn)正常姿態(tài)的對數(shù)映射角度的差值不滿足第二預(yù)設(shè)閾值,或者旋轉(zhuǎn)軸向量與標(biāo)準(zhǔn)正常姿態(tài)的旋轉(zhuǎn)軸向量的差值不滿足第三預(yù)設(shè)閾值的情況下,確定待處理的頭部圖像的頭部姿態(tài)為異常姿態(tài)。
25、根據(jù)上述技術(shù)手段,將旋轉(zhuǎn)矩陣在李代數(shù)上的對數(shù)映射角度和旋轉(zhuǎn)軸向量分別與標(biāo)準(zhǔn)正常姿態(tài)的對數(shù)映射角度、標(biāo)準(zhǔn)正常姿態(tài)的旋轉(zhuǎn)軸向量進(jìn)行比較,判斷頭部姿態(tài)是否異常,從而可以及時發(fā)現(xiàn)異常行為,發(fā)出告警并采取相應(yīng)的安全措施,減少事故發(fā)生。
26、在又一種可能的實(shí)施方式中,待處理的頭部圖像為車輛駕駛員的頭部圖像,或者車輛的圖像采集范圍內(nèi)的行人的頭部圖像;方法還包括:確定預(yù)設(shè)周期內(nèi)多張待處理的頭部圖像中異常姿態(tài)的待處理的頭部圖像的比值;在比值大于第四預(yù)設(shè)閾值的情況下,發(fā)出告警信息;告警信息用于通知車輛的自動駕駛系統(tǒng)接管車輛,并發(fā)出危險駕駛的報警信息。
27、根據(jù)上述技術(shù)手段,通過監(jiān)測和識別駕駛員或行人的頭部姿態(tài),以便及時發(fā)現(xiàn)駕駛員或行人的異常行為,例如:駕駛員打瞌睡或行人突然進(jìn)入車輛行駛路徑,發(fā)出告警,減少了事故發(fā)生的風(fēng)險。并且,在檢測到異常姿態(tài)時,通知車輛的自動駕駛系統(tǒng)接管車輛,以便自動駕駛系統(tǒng)采取相應(yīng)措施,如減速、停車或改變行駛路線,避免發(fā)生事故,提高了車輛的安全性。
28、根據(jù)本技術(shù)提供的第二方面,提供一種頭部姿態(tài)識別裝置,該裝置包括:獲取模塊和處理模塊;獲取模塊,用于獲取待處理的頭部圖像;處理模塊,用于將待處理的頭部圖像輸入姿態(tài)識別模型,得到旋轉(zhuǎn)矩陣;姿態(tài)識別模型基于回歸算法的損失函數(shù)訓(xùn)練得到;回歸算法的損失函數(shù)包括旋轉(zhuǎn)矩陣在李代數(shù)上的對數(shù)映射的旋轉(zhuǎn)軸向量的損失函數(shù),用于反映基于回歸算法訓(xùn)練姿態(tài)識別模型得到的預(yù)測旋轉(zhuǎn)矩陣和真實(shí)旋轉(zhuǎn)矩陣在對應(yīng)的李代數(shù)上的對數(shù)映射的旋轉(zhuǎn)軸向量之間的夾角;旋轉(zhuǎn)矩陣用于表征待處理的頭部圖像中的頭部在三維空間中的姿態(tài)。
29、在一種可能的實(shí)施方式中,回歸算法為6d回歸算法;回歸算法的損失函數(shù)還包括:旋轉(zhuǎn)矩陣在李代數(shù)上的對數(shù)映射角度的損失函數(shù)、姿態(tài)識別模型輸出的2個三維向量之間的夾角的損失函數(shù)以及均方差損失函數(shù)。
30、在另一種可能的實(shí)施方式中,姿態(tài)識別模型還基于歐拉角預(yù)測算法的損失函數(shù)訓(xùn)練得到;歐拉角預(yù)測算法的損失函數(shù)包括:歐拉角的角度整數(shù)部分的損失函數(shù)和歐拉角的角度余數(shù)部分的損失函數(shù)。
31、在又一種可能的實(shí)施方式中,上述裝置還包括:構(gòu)建模塊和訓(xùn)練模塊。構(gòu)建模塊,用于構(gòu)建初始姿態(tài)識別模型;獲取模塊,還用于獲取多個頭部圖像數(shù)據(jù)和多個頭部圖像數(shù)據(jù)對應(yīng)的旋轉(zhuǎn)矩陣;處理模塊,還用于將多個頭部圖像數(shù)據(jù)作為樣本,多個頭部圖像數(shù)據(jù)對應(yīng)的旋轉(zhuǎn)矩陣作為樣本標(biāo)簽,得到多個樣本數(shù)據(jù);處理模塊,還用于對多個樣本數(shù)據(jù)進(jìn)行圖像增強(qiáng)處理,得到訓(xùn)練數(shù)據(jù);訓(xùn)練模塊,用于基于訓(xùn)練數(shù)據(jù)對初始姿態(tài)識別模型進(jìn)行訓(xùn)練,得到姿態(tài)識別模型。
32、在又一種可能的實(shí)施方式中,初始姿態(tài)識別模型包括:骨干網(wǎng)絡(luò)、特征轉(zhuǎn)換層和輸出層;構(gòu)建模塊,具體用于基于repvgg網(wǎng)絡(luò),構(gòu)建初始姿態(tài)識別模型的骨干網(wǎng)絡(luò);基于平均池化層,構(gòu)建初始姿態(tài)識別模型的特征轉(zhuǎn)化層;基于回歸算法和歐拉角預(yù)測算法,構(gòu)建初始姿態(tài)識別模型的輸出層。
33、在又一種可能的實(shí)施方式中,訓(xùn)練模塊,具體用于基于訓(xùn)練數(shù)據(jù),分別確定初始姿態(tài)識別模型中回歸算法的第一輸出數(shù)據(jù)和歐拉角預(yù)測算法的第二輸出數(shù)據(jù);基于第一輸出數(shù)據(jù)確定回歸算法的第一損失值;基于第二輸出數(shù)據(jù)確定歐拉角預(yù)測算法的第二損失值;基于第一損失值和第二損失值,調(diào)整初始姿態(tài)識別模型,并訓(xùn)練調(diào)整后的初始姿態(tài)識別模型;基于訓(xùn)練后的初始姿態(tài)識別模型,構(gòu)建姿態(tài)識別模型;初始姿態(tài)識別模型的輸出層包括:回歸分支和歐拉角預(yù)測分支;姿態(tài)識別模型的輸出層包括:回歸分支和/或歐拉角預(yù)測分支。
34、在又一種可能的實(shí)施方式中,訓(xùn)練模塊,具體用于基于第一損失值和第二損失值,采用sgd優(yōu)化器對初始姿態(tài)識別模型進(jìn)行迭代優(yōu)化;在迭代次數(shù)滿足第一預(yù)設(shè)閾值或者初始姿態(tài)識別模型收斂的情況下,停止優(yōu)化初始姿態(tài)識別模型,基于訓(xùn)練數(shù)據(jù)訓(xùn)練優(yōu)化后的初始姿態(tài)識別模型。
35、在又一種可能的實(shí)施方式中,處理模塊,具體用于將待處理的頭部圖像輸入姿態(tài)識別模型,得到2個三維向量;所述2個三維向量用于表示所述待處理的頭部圖像中頭部的位置信息和方向信息;以所述2個三維向量的方向?yàn)榛鶞?zhǔn),將所述2個三維列向量轉(zhuǎn)化為第一旋轉(zhuǎn)矩陣和第二旋轉(zhuǎn)矩陣;對所述第一旋轉(zhuǎn)矩陣和所述第二旋轉(zhuǎn)矩陣進(jìn)行插值正交處理,得到所述旋轉(zhuǎn)矩陣。
36、在又一種可能的實(shí)施方式中,上述裝置還包括:確定模塊。確定模塊,用于確定所述旋轉(zhuǎn)矩陣在李代數(shù)上的對數(shù)映射的旋轉(zhuǎn)軸向量;確定模塊,還用于至少基于所述旋轉(zhuǎn)矩陣在李代數(shù)上的對數(shù)映射的旋轉(zhuǎn)軸向量,確定所述待處理的頭部圖像中的頭部姿態(tài)是否處于異常狀態(tài)。
37、在又一種可能的實(shí)施方式中,確定模塊,還用于確定所述旋轉(zhuǎn)矩陣在李代數(shù)上的對數(shù)映射角度;確定模塊,具體用于基于所述旋轉(zhuǎn)矩陣在李代數(shù)上的對數(shù)映射的角度和所述旋轉(zhuǎn)軸向量,確定所述待處理的頭部圖像中的頭部姿態(tài)是否處于異常狀態(tài)。
38、在又一種可能的實(shí)施方式中,確定模塊,具體用于基于所述旋轉(zhuǎn)矩陣在李代數(shù)上的對數(shù)映射的角度和所述旋轉(zhuǎn)軸向量,確定由標(biāo)準(zhǔn)正常姿態(tài)旋轉(zhuǎn)至待處理的頭部圖像中頭部姿態(tài)所需的目標(biāo)對數(shù)映射角度和目標(biāo)旋轉(zhuǎn)軸向量;在滿足以下至少一種情況時,確定待處理的頭部圖像的頭部姿態(tài)為異常姿態(tài):目標(biāo)對數(shù)映射角度位于第一角度范圍內(nèi)、目標(biāo)對數(shù)映射角度位于第二角度范圍外、目標(biāo)旋轉(zhuǎn)軸向量位于第一向量范圍內(nèi)、目標(biāo)旋轉(zhuǎn)軸向量位于第二向量范圍外。
39、在又一種可能的實(shí)施方式中,確定模塊,具體用于在所述旋轉(zhuǎn)矩陣在李代數(shù)上的對數(shù)映射角度與標(biāo)準(zhǔn)正常姿態(tài)的對數(shù)映射角度的差值不滿足第二預(yù)設(shè)閾值,或者旋轉(zhuǎn)軸向量與標(biāo)準(zhǔn)正常姿態(tài)的旋轉(zhuǎn)軸向量的差值不滿足第三預(yù)設(shè)閾值的情況下,確定待處理的頭部圖像的頭部姿態(tài)為異常姿態(tài)。
40、在又一種可能的實(shí)施方式中,待處理的頭部圖像為車輛駕駛員的頭部圖像,或者車輛的圖像采集范圍內(nèi)的行人的頭部圖像;上述裝置還包括:告警模塊。確定模塊,還用于確定預(yù)設(shè)周期內(nèi)多張待處理的頭部圖像中異常姿態(tài)的待處理的頭部圖像的比值;告警模塊,用于在比值大于第四預(yù)設(shè)閾值的情況下,發(fā)出告警信息;告警信息用于通知車輛的自動駕駛系統(tǒng)接管車輛,并發(fā)出危險駕駛的報警信息。
41、根據(jù)本技術(shù)提供的第三方面,提供一種電子設(shè)備,包括:處理器;用于存儲處理器可執(zhí)行指令的存儲器;其中,處理器被配置為執(zhí)行指令,以實(shí)現(xiàn)上述第一方面及其任一種可能的實(shí)施方式的方法。
42、根據(jù)本技術(shù)提供的第四方面,提供一種計算機(jī)可讀存儲介質(zhì),當(dāng)計算機(jī)可讀存儲介質(zhì)中的指令由電子設(shè)備的處理器執(zhí)行時,使得電子設(shè)備能夠執(zhí)行上述第一方面中及其任一種可能的實(shí)施方式的方法。
43、根據(jù)本技術(shù)提供的第五方面,提供一種計算機(jī)程序產(chǎn)品,計算機(jī)程序產(chǎn)品包括計算機(jī)指令,當(dāng)計算機(jī)指令在電子設(shè)備上運(yùn)行時,使得電子設(shè)備執(zhí)行上述第一方面及其任一種可能的實(shí)施方式的方法。
44、由此,本技術(shù)的上述技術(shù)特征具有以下有益效果:
45、(1)回歸算法可以提供精確的三維旋轉(zhuǎn)矩陣,在回歸算法的損失函數(shù)基礎(chǔ)上,增加了旋轉(zhuǎn)矩陣在李代數(shù)上的對數(shù)映射的旋轉(zhuǎn)軸向量的損失函數(shù),避免了相關(guān)技術(shù)中回歸算法的損失函數(shù)在訓(xùn)練過程中發(fā)生震蕩的情況,降低了姿態(tài)識別模型輸出的旋轉(zhuǎn)矩陣的誤差,提高了旋轉(zhuǎn)矩陣的準(zhǔn)確性,使得旋轉(zhuǎn)矩陣可以更精準(zhǔn)地表示待處理的頭部圖像中頭部的狀態(tài),從而姿態(tài)識別模型可以更準(zhǔn)確地識別待處理的頭部圖像中頭部在空間中的位置、方向以及旋轉(zhuǎn)角度。
46、(2)還可以基于回歸算法中的旋轉(zhuǎn)矩陣在李代數(shù)上的對數(shù)映射角度的損失函數(shù)、姿態(tài)識別模型輸出的2個三維向量之間的夾角的損失函數(shù)以及均方差損失函數(shù)對姿態(tài)識別模型進(jìn)行訓(xùn)練,從而避免了回歸算法的損失函數(shù)在訓(xùn)練過程中收斂性較差的情況,提高了姿態(tài)識別模型的精度和穩(wěn)定性。
47、(3)還可以基于歐拉角預(yù)測算法的損失函數(shù)對姿態(tài)識別模型進(jìn)行輔助訓(xùn)練,提高了姿態(tài)識別模型在訓(xùn)練過程中損失函數(shù)的收斂性,從而提高了姿態(tài)識別模型的精度和穩(wěn)定性。并且,修改了歐拉角的角度的編碼方式,將歐拉角的角度劃分為整數(shù)部分和余數(shù)部分,分別基于歐拉角的角度整數(shù)部分的損失函數(shù)和歐拉角的角度余數(shù)部分的損失函數(shù)對姿態(tài)識別模型進(jìn)行訓(xùn)練,避免了歐拉角的角度的編碼方式引起的損失震蕩,提高了姿態(tài)識別模型的準(zhǔn)確度。
48、(4)將多個樣本數(shù)據(jù)進(jìn)行圖像增強(qiáng)處理,使得姿態(tài)識別模型可以識別不同狀態(tài)的圖像,增強(qiáng)了姿態(tài)識別模型的泛化能力,并且,基于多個樣本數(shù)據(jù)對初始姿態(tài)識別模型進(jìn)行訓(xùn)練,使得姿態(tài)識別模型可以學(xué)習(xí)頭部圖像與旋轉(zhuǎn)矩陣之間的復(fù)雜關(guān)系,從而提高了姿態(tài)識別模型識別的準(zhǔn)確性。
49、(5)repvgg網(wǎng)絡(luò)可以在模型的訓(xùn)練和推理階段進(jìn)行網(wǎng)絡(luò)結(jié)構(gòu)的優(yōu)化,從而使得姿態(tài)識別模型在保持計算效率的同時,提取出更加豐富的特征,平均池化層可以降低圖像的空間維度,并保留重要的信息,將repvgg網(wǎng)絡(luò)作為初始姿態(tài)識別模型的骨干網(wǎng)絡(luò),平均池化層作為初始姿態(tài)識別模型的特征轉(zhuǎn)化層,減少了姿態(tài)識別模型的參數(shù)量、降低了姿態(tài)識別模型對算力的需求,并且保證了姿態(tài)識別模型的精度,使得姿態(tài)識別模型更加輕量化。
50、(6)姿態(tài)識別模型可以基于回歸分支和歐拉角預(yù)測分支進(jìn)行訓(xùn)練,使得姿態(tài)識別模型可以識別頭部的旋轉(zhuǎn),以及頭部的歐拉角,提高了姿態(tài)識別模型對復(fù)雜姿態(tài)的識別能力。并且,同時基于回歸分支和歐拉角預(yù)測分支的損失值調(diào)整初始姿態(tài)識別模型,提高了姿態(tài)識別模型在關(guān)鍵特征上的識別精度。另外,姿態(tài)識別模型的輸出層可以根據(jù)需求選擇性地包含回歸分支和/或歐拉角預(yù)測分支,以便姿態(tài)識別模型適應(yīng)不同的應(yīng)用場景,提高了姿態(tài)識別模型的靈活性。
51、(7)基于第一損失值和第二損失值對初始姿態(tài)識別模型進(jìn)行迭代優(yōu)化,從而提高了姿態(tài)識別模型的精度和穩(wěn)定性。使用sgd優(yōu)化器對初始姿態(tài)識別模型進(jìn)行優(yōu)化,以便根據(jù)具體問題調(diào)整學(xué)習(xí)率和參數(shù),以適應(yīng)不同的訓(xùn)練需求。并且,通過監(jiān)測損失值和迭代次數(shù),在姿態(tài)識別模型收斂時停止訓(xùn)練,避免了資源浪費(fèi)。
52、(8)以姿態(tài)識別模型輸出的2個三維向量的方向?yàn)榛鶞?zhǔn),將2個三維向量轉(zhuǎn)化為第一旋轉(zhuǎn)矩陣和第二旋轉(zhuǎn)矩陣,并通過插值正交處理,得到旋轉(zhuǎn)矩陣,插值處理可以減少由于圖像噪聲或不完美姿態(tài)估計引起的誤差,通過插值處理,將第一旋轉(zhuǎn)矩陣和第二旋轉(zhuǎn)矩陣進(jìn)行平滑過渡,得到旋轉(zhuǎn)矩陣,從而旋轉(zhuǎn)矩陣可以更加準(zhǔn)確地表示待處理的頭部圖像中頭部的姿態(tài)。并且,通過插值處理,可以減少對高頻率更新的需求,降低計算負(fù)擔(dān),提高處理速度。
53、(9)通過旋轉(zhuǎn)矩陣在李代數(shù)上的對數(shù)映射的旋轉(zhuǎn)軸向量,判斷待處理的頭部圖像中的頭部姿態(tài)是否處于異常狀態(tài),以便在待處理的頭部圖像中的頭部姿態(tài)處于異常狀態(tài)的情況下,發(fā)出相應(yīng)的告警信息。
54、(10)還可以通過旋轉(zhuǎn)矩陣在李代數(shù)上的對數(shù)映射的角度和旋轉(zhuǎn)軸向量,判斷待處理的頭部圖像中的頭部姿態(tài)是否處于異常狀態(tài),以便在待處理的頭部圖像中的頭部姿態(tài)處于異常狀態(tài)的情況下,發(fā)出相應(yīng)的告警信息。
55、(11)將目標(biāo)對數(shù)映射角度和目標(biāo)旋轉(zhuǎn)軸向量分別與第一角度范圍、第二角度范圍、第一向量范圍、第二向量范圍進(jìn)行比較,判斷待處理的頭部圖像中的頭部姿態(tài)是否異常,從而可以及時發(fā)現(xiàn)異常行為,發(fā)出告警并采取相應(yīng)的安全措施,減少事故發(fā)生。
56、(12)將旋轉(zhuǎn)矩陣在李代數(shù)上的對數(shù)映射角度和旋轉(zhuǎn)軸向量分別與標(biāo)準(zhǔn)正常姿態(tài)的對數(shù)映射角度、標(biāo)準(zhǔn)正常姿態(tài)的旋轉(zhuǎn)軸向量進(jìn)行比較,判斷頭部姿態(tài)是否異常,從而可以及時發(fā)現(xiàn)異常行為,發(fā)出告警并采取相應(yīng)的安全措施,減少事故發(fā)生。
57、(13)通過監(jiān)測和識別駕駛員或行人的頭部姿態(tài),以便及時發(fā)現(xiàn)駕駛員或行人的異常行為,例如:駕駛員打瞌睡或行人突然進(jìn)入車輛行駛路徑,發(fā)出告警,減少了事故發(fā)生的風(fēng)險。并且,在檢測到異常姿態(tài)時,通知車輛的自動駕駛系統(tǒng)接管車輛,以便自動駕駛系統(tǒng)采取相應(yīng)措施,如減速、停車或改變行駛路線,避免發(fā)生事故,提高了車輛的安全性。
58、需要說明的是,第二方面至第五方面中的任一種實(shí)現(xiàn)方式所帶來的技術(shù)效果可參見第一方面中對應(yīng)實(shí)現(xiàn)方式所帶來的技術(shù)效果,此處不再贅述。
59、應(yīng)當(dāng)理解的是,以上的一般描述和后文的細(xì)節(jié)描述僅是示例性和解釋性的,并不能限制本技術(shù)。