本申請適用于圖像處理,尤其涉及一種直播相機中圖像渲染方法、裝置、設(shè)備及介質(zhì)。
背景技術(shù):
1、目前,美顏功能主要包括美膚(美白、美黑、磨皮等),美妝(口紅、腮紅、眼影等),美型(大眼、瘦臉、瘦鼻等),美體(長腿、瘦腰、豐胸等)以及風(fēng)格妝(多項美妝組合而成)等。這些功能的實現(xiàn)主要是基于輸入的yuv圖進行模型檢測,吐出檢測結(jié)果,再根據(jù)吐出的結(jié)果,綜合上層傳入的同一幀的紋理進行渲染。
2、在現(xiàn)有技術(shù)中,為保證輸入給模型檢測的yuv圖和后續(xù)進行渲染的texture是同一幀,從而選擇串行去執(zhí)行模型檢測和美顏渲染。但是當(dāng)開啟多種不同的美顏功能時,需要不同的模型進行檢測,然后再進行渲染,此時,原有串行的設(shè)計方案就會疊加多種功能對應(yīng)模型和渲染的耗時,導(dǎo)致性能大幅下降,人臉越多,模型需要檢測耗時越長,性能下降越厲害。
3、因此,如何在疊加多種功能渲染的情況下避免串行導(dǎo)致的處理阻塞的同時,保證渲染幀的同步成為亟待解決的問題。
技術(shù)實現(xiàn)思路
1、有鑒于此,本申請實施例提供了一種直播相機中圖像渲染方法、裝置、設(shè)備及介質(zhì),以解決如何在疊加多種功能渲染的情況下避免串行導(dǎo)致的處理阻塞的同時,保證渲染幀的同步的問題。
2、第一方面,本申請實施例提供一種直播相機中圖像渲染方法,所述直播相機中圖像渲染方法應(yīng)用于至少模型檢測線程和渲染線程構(gòu)成的圖像渲染系統(tǒng)中,包括:
3、在當(dāng)前時刻獲取到當(dāng)前幀圖像時,將所述當(dāng)前幀圖像的像素格式數(shù)據(jù)發(fā)送給所述模型檢測線程,并將復(fù)制的所述當(dāng)前幀圖像對應(yīng)的紋理格式數(shù)據(jù)發(fā)送給所述渲染線程,所述模型檢測線程用于在所述模型檢測線程為可用時對輸入的像素格式數(shù)據(jù)進行檢測處理并輸出人臉檢測結(jié)果,在輸出人臉檢測結(jié)果之前所述模型檢測線程為不可用;
4、在下一時刻獲取到下一幀圖像時,將所述下一幀圖像的像素格式數(shù)據(jù)發(fā)送給所述模型檢測線程,若所述模型檢測線程為不可用,則等待所述模型檢測線程為可用時對所述下一幀圖像的像素格式數(shù)據(jù)進行檢測處理;
5、若等待后獲取到所述模型檢測線程輸出的人臉檢測結(jié)果,則確定所述模型檢測線程為可用,并將所述人臉檢測結(jié)果發(fā)送給所述渲染線程,所述渲染線程用于對所述紋理格式數(shù)據(jù)和所述人臉檢測結(jié)果進行渲染處理;
6、在所述渲染線程中渲染處理完成后,將所述下一幀圖像作為所述當(dāng)前幀圖像,返回執(zhí)行所述將復(fù)制的所述當(dāng)前幀圖像對應(yīng)的紋理格式數(shù)據(jù)發(fā)送給所述渲染線程。
7、第二方面,本申請實施例提供一種直播相機中圖像渲染裝置,所述直播相機中圖像渲染裝置應(yīng)用于至少模型檢測線程和渲染線程構(gòu)成的圖像渲染系統(tǒng)中,包括:
8、當(dāng)前幀圖像處理模塊,用于在當(dāng)前時刻獲取到當(dāng)前幀圖像時,將所述當(dāng)前幀圖像的像素格式數(shù)據(jù)發(fā)送給所述模型檢測線程,并將復(fù)制的所述當(dāng)前幀圖像對應(yīng)的紋理格式數(shù)據(jù)發(fā)送給所述渲染線程,所述模型檢測線程用于在所述模型檢測線程為可用時對輸入的像素格式數(shù)據(jù)進行檢測處理并輸出人臉檢測結(jié)果,在輸出人臉檢測結(jié)果之前所述模型檢測線程為不可用;
9、下一幀圖像處理模塊,用于在下一時刻獲取到下一幀圖像時,將所述下一幀圖像的像素格式數(shù)據(jù)發(fā)送給所述模型檢測線程,若所述模型檢測線程為不可用,則等待所述模型檢測線程為可用時對所述下一幀圖像的像素格式數(shù)據(jù)進行檢測處理;
10、渲染模塊,用于若等待后獲取到所述模型檢測線程輸出的人臉檢測結(jié)果,則確定所述模型檢測線程為可用,并將所述人臉檢測結(jié)果發(fā)送給所述渲染線程,所述渲染線程用于對所述紋理格式數(shù)據(jù)和所述人臉檢測結(jié)果進行渲染處理;
11、循環(huán)執(zhí)行模塊,用于在所述渲染線程中渲染處理完成后,將所述下一幀圖像作為所述當(dāng)前幀圖像,返回執(zhí)行所述將復(fù)制的所述當(dāng)前幀圖像對應(yīng)的紋理格式數(shù)據(jù)發(fā)送給所述渲染線程。
12、第三方面,本申請實施例提供一種計算機設(shè)備,所述計算機設(shè)備包括處理器、存儲器以及存儲在所述存儲器中并可在所述處理器上運行的計算機程序,所述處理器執(zhí)行所述計算機程序時實現(xiàn)如第一方面所述的直播相機中圖像渲染方法。
13、第四方面,本申請實施例提供一種計算機可讀存儲介質(zhì),所述計算機可讀存儲介質(zhì)存儲有計算機程序,所述計算機程序被處理器執(zhí)行時實現(xiàn)如第一方面所述的直播相機中圖像渲染方法。
14、本申請實施例與現(xiàn)有技術(shù)相比存在的有益效果是:本申請在當(dāng)前時刻獲取到當(dāng)前幀圖像時,將對應(yīng)的像素格式數(shù)據(jù)發(fā)送給模型檢測線程,并將復(fù)制的對應(yīng)的紋理格式數(shù)據(jù)發(fā)送給渲染線程,模型檢測線程用于在可用時對輸入的像素格式數(shù)據(jù)進行檢測處理并輸出人臉檢測結(jié)果,在輸出人臉檢測結(jié)果之前模型檢測線程為不可用,在下一時刻獲取到下一幀圖像時,將對應(yīng)的像素格式數(shù)據(jù)發(fā)送給模型檢測線程,若模型檢測線程為不可用,則等待模型檢測線程為可用時對下一幀圖像的像素格式數(shù)據(jù)進行檢測處理,若等待后獲取到模型檢測線程輸出的人臉檢測結(jié)果,則確定模型檢測線程為可用,并將人臉檢測結(jié)果發(fā)送給渲染線程,渲染線程用于對紋理格式數(shù)據(jù)和人臉檢測結(jié)果進行渲染處理,在渲染線程中渲染處理完成后,將下一幀圖像作為當(dāng)前幀圖像,返回執(zhí)行將復(fù)制的對應(yīng)的紋理格式數(shù)據(jù)發(fā)送給渲染線程。其中,當(dāng)前幀圖像和下一幀圖像能夠依次進入到模型檢測線程,無需等待渲染線程處理完成,即下一幀圖像無需等待當(dāng)前幀圖像渲染完成才執(zhí)行檢測,能夠在一定程度上實現(xiàn)并行,從而縮短執(zhí)行耗時,且渲染線程等待模型檢測線程輸出人臉檢測結(jié)果,保證人臉檢測和渲染的圖像幀同步。
1.一種直播相機中圖像渲染方法,其特征在于,所述直播相機中圖像渲染方法應(yīng)用于至少模型檢測線程和渲染線程構(gòu)成的圖像渲染系統(tǒng)中,包括:
2.根據(jù)權(quán)利要求1所述的直播相機中圖像渲染方法,其特征在于,所述像素格式數(shù)據(jù)為yuv格式數(shù)據(jù);
3.根據(jù)權(quán)利要求2所述的直播相機中圖像渲染方法,其特征在于,在所述模型檢測線程用于在所述模型檢測線程為可用時對輸入的像素格式數(shù)據(jù)進行檢測處理并輸出人臉檢測結(jié)果之后,還包括:
4.根據(jù)權(quán)利要求1所述的直播相機中圖像渲染方法,其特征在于,所述直播相機中圖像渲染方法還包括:
5.根據(jù)權(quán)利要求4所述的直播相機中圖像渲染方法,其特征在于,在所述從所述圖像輸入中拷貝數(shù)據(jù),得到當(dāng)前幀圖像之前,還包括:
6.根據(jù)權(quán)利要求1至5任一項所述的直播相機中圖像渲染方法,其特征在于,所述渲染線程部署于gpu中。
7.根據(jù)權(quán)利要求6所述的直播相機中圖像渲染方法,其特征在于,所述模型檢測線程部署于dsp、cpu或者所述gpu中。
8.一種直播相機中圖像渲染裝置,其特征在于,所述直播相機中圖像渲染裝置應(yīng)用于至少模型檢測線程和渲染線程構(gòu)成的圖像渲染系統(tǒng)中,包括:
9.一種計算機設(shè)備,其特征在于,所述計算機設(shè)備包括處理器、存儲器以及存儲在所述存儲器中并可在所述處理器上運行的計算機程序,所述處理器執(zhí)行所述計算機程序時實現(xiàn)如權(quán)利要求1至7任一項所述的直播相機中圖像渲染方法。
10.一種計算機可讀存儲介質(zhì),所述計算機可讀存儲介質(zhì)存儲有計算機程序,其特征在于,所述計算機程序被處理器執(zhí)行時實現(xiàn)如權(quán)利要求1至7任一項所述的直播相機中圖像渲染方法。