亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種特效圖調(diào)度方法

文檔序號:7896242閱讀:307來源:國知局
專利名稱:一種特效圖調(diào)度方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種特效圖調(diào)度方法,屬于計(jì)算機(jī)視頻圖像處理領(lǐng)域,特別地,適用于視頻后期特效處理與合成軟件中。
背景技術(shù)
在視頻后期特效處理與合成軟件中往往用特效圖的方式對視頻及圖像進(jìn)行處理,特效圖中的基本處理單位為節(jié)點(diǎn),一個(gè)節(jié)點(diǎn)往往有多個(gè)輸入與一個(gè)輸出,這些輸入與輸出稱之為管腳,這些節(jié)點(diǎn)的輸入與輸出管腳互連構(gòu)成了整個(gè)特效圖,特效圖是有向無環(huán)圖,其方向?yàn)橐曨l流在圖中的流向,一個(gè)節(jié)點(diǎn)向其視頻流流向所連接的節(jié)點(diǎn)稱之為其下游節(jié)點(diǎn),而相反則為上游節(jié)點(diǎn)。假如在某一個(gè)時(shí)刻一個(gè)用戶想要看某個(gè)節(jié)點(diǎn)的輸出管腳,則特效圖的調(diào)度器會從這個(gè)節(jié)點(diǎn)的輸出管腳開始向其上游方向進(jìn)行遞歸的調(diào)度,其調(diào)度出來的上游節(jié)點(diǎn)的圖像(也即輸入管腳的圖像)則在這個(gè)節(jié)點(diǎn)內(nèi)進(jìn)行處理后作為節(jié)點(diǎn)的輸出,如果一個(gè)節(jié)點(diǎn)沒有任何輸入管腳則無需向上游繼續(xù)這一處理,這也就是遞歸的結(jié)束條件。一個(gè)能夠?qū)嶋H工作的特效圖往往包含成百上千個(gè)節(jié)點(diǎn),這些節(jié)點(diǎn)互連的情況非常復(fù)雜,尤其是這種連接會出現(xiàn)菱形連接如附圖1所示,從某個(gè)節(jié)點(diǎn)A出發(fā)從兩個(gè)不同的視頻流來使用同一個(gè)節(jié)點(diǎn)B的輸出管腳的情況。為了避免重復(fù)的調(diào)度,我們必須將在節(jié)點(diǎn)B的輸出管腳上已經(jīng)調(diào)度出來的圖像緩存起來,這樣當(dāng)再次調(diào)度到節(jié)點(diǎn)B的輸出管腳的時(shí)候就無須再向其上游進(jìn)行調(diào)度從而提高效率。但這樣一來又引發(fā)了一個(gè)問題,由于一個(gè)特效圖可能很龐大,如果我們無條件地將所有節(jié)點(diǎn)的輸出管腳圖像都進(jìn)行緩存就可能造成內(nèi)存使用量過大,從能引發(fā)更嚴(yán)重的問題,而且并非所有節(jié)點(diǎn)的輸出管腳圖像都需要緩存,事實(shí)上一般只有少數(shù)的節(jié)點(diǎn)需要緩存。

發(fā)明內(nèi)容
針對現(xiàn)有技術(shù)中所存在的缺陷,本發(fā)明就是提供一種以避免重復(fù)調(diào)度的情況下盡可能少的緩存圖像為目的一種高效的特效圖調(diào)度機(jī)制。為了實(shí)現(xiàn)上述發(fā)明目的,本發(fā)明提供一種特效圖調(diào)度方法,該方法包括步驟1,分析視頻流分析,步驟2,對視頻流進(jìn)行調(diào)度。在步驟所述1中,確定節(jié)點(diǎn)中需要緩存的輸出管腳;在所述步驟2中,根據(jù)步驟1產(chǎn)生的數(shù)據(jù)進(jìn)行遞歸調(diào)度。在上述方法中,所述步驟1進(jìn)一步包括步驟1. 1,為每一個(gè)節(jié)點(diǎn)建立一個(gè)鏈表,該鏈表存儲多個(gè)二元組,該二元組的第一維數(shù)據(jù)為該節(jié)點(diǎn)某個(gè)下游節(jié)點(diǎn)的指針,該二元組的第二維數(shù)據(jù)為上游節(jié)點(diǎn)訪問該節(jié)點(diǎn)時(shí)的輸入管腳號;步驟1. 2,從要觀察的節(jié)點(diǎn)的輸出管腳開始向上游進(jìn)行遞歸遍歷。更進(jìn)一步,所述步驟1.2所述的向上游遞歸遍歷的過程中,首先,建立一個(gè)二元組,該二元組的第一維數(shù)據(jù)的初始化數(shù)值為NULL,第二維數(shù)據(jù)初始化為0 ;其次,檢查當(dāng)前節(jié)點(diǎn)的鏈表里面是否含有二元組,如果有,則終止遞歸遍歷;如果沒有,則將二元組添加到當(dāng)前節(jié)點(diǎn)的鏈表里。對于當(dāng)前節(jié)點(diǎn)的每一個(gè)輸入管腳所連接的上游節(jié)點(diǎn)繼續(xù)進(jìn)行遍歷,對于每一個(gè)管腳所連接的上游節(jié)點(diǎn),創(chuàng)建二元組,并將該二元組的第一維數(shù)據(jù)設(shè)置為自身節(jié)點(diǎn)的指針,第二維數(shù)據(jù)設(shè)置為輸入管腳的編號;上述遞歸過程全部結(jié)束后,凡是節(jié)點(diǎn)的鏈表中的二元組數(shù)量大于1個(gè),則該節(jié)點(diǎn)被標(biāo)記為需要緩存圖像。所述步驟2種的所述遞歸規(guī)則如下如果當(dāng)前節(jié)點(diǎn)已經(jīng)緩存了輸出圖像則直接將輸出圖像返回,終止遞歸。如果當(dāng)前節(jié)點(diǎn)已經(jīng)沒有輸入管腳,則對當(dāng)前節(jié)點(diǎn)進(jìn)行處理然后返回其結(jié)果圖像;如果當(dāng)前節(jié)點(diǎn)需要緩存則將結(jié)果圖像緩存在該節(jié)點(diǎn)上,終止遞歸。對當(dāng)前節(jié)點(diǎn)的輸入管腳進(jìn)行調(diào)度,將調(diào)度出來的圖像給當(dāng)前節(jié)點(diǎn)進(jìn)行處理后,返回其結(jié)果圖像,如果當(dāng)前節(jié)點(diǎn)需要緩存則將結(jié)果圖像緩存在該節(jié)點(diǎn)上。本發(fā)明的效果采用本發(fā)明所述的方法,可以在一些復(fù)雜的特效圖的調(diào)度中大量地節(jié)省處理時(shí)間并節(jié)省內(nèi)存的占用。


附圖1為具有菱形連接的特效圖;附圖2為從要觀察的節(jié)點(diǎn)的輸出管腳開始向上游進(jìn)行遞歸遍歷流程圖;附圖3為數(shù)據(jù)進(jìn)行調(diào)度的流程圖。
具體實(shí)施例方式下面結(jié)合附圖和具體實(shí)施方式
對本發(fā)明作進(jìn)一步描述。參見附圖1,附圖1為具有菱形連接的特效圖。從圖1可以看出,如果用戶想要觀察節(jié)點(diǎn)D的輸出圖像,則特效圖的調(diào)度器會兩次調(diào)度到節(jié)點(diǎn)B的輸出管腳(分別從其輸入管腳0與輸入管腳1),而同理節(jié)點(diǎn)A的輸出管腳則會被調(diào)度三次,因此可以看出節(jié)點(diǎn)A,B的輸出管腳圖像是需要緩存的,而節(jié)點(diǎn)C,D是不需要緩存的。本發(fā)明提供的特效圖調(diào)度方法包括兩個(gè)步驟步驟1,分析視頻流分析,步驟2,對視頻流進(jìn)行調(diào)度。本實(shí)施例中,在步驟1中,確定節(jié)點(diǎn)中需要緩存的輸出管腳。本發(fā)明一個(gè)優(yōu)選的實(shí)施方式中,為每一個(gè)節(jié)點(diǎn)建立一個(gè)鏈表,該鏈表存儲多個(gè)二元組(upStream_node_ptr, inpUt_pin_indX),該二元組的第一維數(shù)據(jù)為該節(jié)點(diǎn)某個(gè)下游節(jié)點(diǎn)的指針,如果沒有下游節(jié)點(diǎn)則這個(gè)指針可以為NULL(例如,對于節(jié)點(diǎn)D而言,其不存在下游節(jié)點(diǎn),則該指針為NULL), 該二元組的第二維數(shù)據(jù)為上游節(jié)點(diǎn)訪問該節(jié)點(diǎn)時(shí)的輸入管腳號。如圖2所示,從要觀察的節(jié)點(diǎn)的輸出管腳開始向上游進(jìn)行遞歸遍歷。在該向上游遞歸遍歷的過程中,首先,建立一個(gè)二元組(upstream_node_ptr, input_pin_indx)。該二元組的第一維數(shù)據(jù)的初始化數(shù)值為NULL,第二維數(shù)據(jù)初始化為0。其次,檢查當(dāng)前節(jié)點(diǎn)的鏈表里面是否含有二元組(upstream_node_ptr,input_pin_idx),如果有,則終止遞歸遍歷。如果沒有,則將二元組(upStream_node_ptr,input_pin_idx)添加到當(dāng)前節(jié)點(diǎn)的鏈表里。而后,對于該節(jié)點(diǎn)的每一個(gè)輸入管腳所連接的上游節(jié)點(diǎn)繼續(xù)進(jìn)行遍歷,對于每一個(gè)管腳所連接的上游節(jié)點(diǎn),創(chuàng)建二元組,并將該二元組的第一維數(shù)據(jù)設(shè)置為自身節(jié)點(diǎn)的指針,第二維數(shù)據(jù)設(shè)置為輸入管腳的編號。上述遞歸過程全部結(jié)束后,凡是節(jié)點(diǎn)的鏈表中的二元組數(shù)量大于1個(gè),則該節(jié)點(diǎn)被標(biāo)記為需要緩存圖像。如附圖3所示,在步驟2中,根據(jù)步驟1產(chǎn)生的數(shù)據(jù)進(jìn)行有條件的遞歸調(diào)度,遞歸規(guī)則如下如果當(dāng)前節(jié)點(diǎn)已經(jīng)緩存了輸出圖像則直接將輸出圖像返回,終止遞歸。如果當(dāng)前節(jié)點(diǎn)已經(jīng)沒有輸入管腳,則對當(dāng)前節(jié)點(diǎn)進(jìn)行處理然后返回其結(jié)果圖像;如果當(dāng)前節(jié)點(diǎn)需要緩存則將結(jié)果圖像緩存在該節(jié)點(diǎn)上,終止遞歸。對當(dāng)前節(jié)點(diǎn)的輸入管腳進(jìn)行調(diào)度,將調(diào)度出來的圖像給當(dāng)前節(jié)點(diǎn)進(jìn)行處理后,返回其結(jié)果圖像,如果當(dāng)前節(jié)點(diǎn)需要緩存則將結(jié)果圖像緩存在該節(jié)點(diǎn)上。通過上述實(shí)施例可以看出,本發(fā)明可帶來以下技術(shù)效果對已經(jīng)調(diào)度的圖像進(jìn)行緩存來節(jié)省處理時(shí)間,利用二元組鏈表的方式分析出真正需要緩存的節(jié)點(diǎn)從而節(jié)省內(nèi)存的處理方式。可以在一些復(fù)雜的特效圖的調(diào)度中大量地節(jié)省處理時(shí)間并節(jié)省內(nèi)存的占用。本發(fā)明所述的方法和系統(tǒng)并不限于具體實(shí)施方式
中所述的實(shí)施例,本領(lǐng)域技術(shù)人員根據(jù)本發(fā)明的技術(shù)方案得出其他的實(shí)施方式,同樣屬于本發(fā)明的技術(shù)創(chuàng)新范圍。
權(quán)利要求
1.一種特效圖調(diào)度方法,該方法包括步驟1,分析視頻流分析,步驟2,對視頻流進(jìn)行調(diào)度,其特征在于在所述步驟1中,確定節(jié)點(diǎn)中需要緩存的輸出管腳;在所述步驟2中,根據(jù)步驟1產(chǎn)生的數(shù)據(jù)進(jìn)行遞歸調(diào)度。
2.如權(quán)利要求1所述的特效圖調(diào)度方法,其特征在于所述步驟1進(jìn)一步包括步驟1. 1,為每一個(gè)節(jié)點(diǎn)建立一個(gè)鏈表,該鏈表存儲多個(gè)二元組,該二元組的第一維數(shù)據(jù)為該節(jié)點(diǎn)某個(gè)下游節(jié)點(diǎn)的指針,該二元組的第二維數(shù)據(jù)為上游節(jié)點(diǎn)訪問該節(jié)點(diǎn)時(shí)的輸入管腳號;步驟1. 2,從要觀察的節(jié)點(diǎn)的輸出管腳開始向上游進(jìn)行遞歸遍歷。
3.如權(quán)利要求2所述的特效圖調(diào)度方法,其特征在于所述步驟1.2所述的向上游遞歸遍歷的過程中,首先,建立一個(gè)二元組,該二元組的第一維數(shù)據(jù)的初始化數(shù)值為NULL,第二維數(shù)據(jù)初始化為0 ;其次,檢查當(dāng)前節(jié)點(diǎn)的鏈表里面是否含有二元組,如果有,則終止遞歸遍歷;如果沒有,則將二元組添加到當(dāng)前節(jié)點(diǎn)的鏈表里。
4.如權(quán)利要求3所述的特效圖調(diào)度方法,其特征在于所述步驟1.2進(jìn)一步包括以下步驟對于當(dāng)前節(jié)點(diǎn)的每一個(gè)輸入管腳所連接的上游節(jié)點(diǎn)繼續(xù)進(jìn)行遍歷,對于每一個(gè)管腳所連接的上游節(jié)點(diǎn),創(chuàng)建二元組,并將該二元組的第一維數(shù)據(jù)設(shè)置為自身節(jié)點(diǎn)的指針,第二維數(shù)據(jù)設(shè)置為輸入管腳的編號;上述遞歸過程全部結(jié)束后,凡是節(jié)點(diǎn)的鏈表中的二元組數(shù)量大于1個(gè),則該節(jié)點(diǎn)被標(biāo)記為需要緩存圖像。
5.如權(quán)利要求1至4之一所述的特效圖調(diào)度方法,其特征在于所述步驟2種的所述遞歸規(guī)則如下如果當(dāng)前節(jié)點(diǎn)已經(jīng)緩存了輸出圖像則直接將輸出圖像返回,終止遞歸。如果當(dāng)前節(jié)點(diǎn)已經(jīng)沒有輸入管腳,則對當(dāng)前節(jié)點(diǎn)進(jìn)行處理然后返回其結(jié)果圖像;如果當(dāng)前節(jié)點(diǎn)需要緩存則將結(jié)果圖像緩存在該節(jié)點(diǎn)上,終止遞歸;對當(dāng)前節(jié)點(diǎn)的輸入管腳進(jìn)行調(diào)度,將調(diào)度出來的圖像給當(dāng)前節(jié)點(diǎn)進(jìn)行處理后,返回其結(jié)果圖像,如果當(dāng)前節(jié)點(diǎn)需要緩存則將結(jié)果圖像緩存在該節(jié)點(diǎn)上。
全文摘要
本發(fā)明提供一種特效圖調(diào)度方法,包括步驟1,分析視頻流分析,步驟2,對視頻流進(jìn)行調(diào)度。在所述步驟1中,確定節(jié)點(diǎn)中需要緩存的輸出管腳;在所述步驟2中,根據(jù)步驟1產(chǎn)生的數(shù)據(jù)進(jìn)行遞歸調(diào)度。為每一個(gè)節(jié)點(diǎn)建立一個(gè)鏈表,該鏈表存儲多個(gè)二元組,從要觀察的節(jié)點(diǎn)的輸出管腳開始向上游進(jìn)行遞歸遍歷,并修改鏈表。根據(jù)遍歷的結(jié)果來標(biāo)記該節(jié)點(diǎn)是否為需要緩存圖像。從而提供了一種節(jié)省內(nèi)存的處理方式。本發(fā)明所述的方法可以在一些復(fù)雜的特效圖的調(diào)度中大量地節(jié)省處理時(shí)間并節(jié)省內(nèi)存的占用。
文檔編號H04N5/262GK102572295SQ20101059788
公開日2012年7月11日 申請日期2010年12月21日 優(yōu)先權(quán)日2010年12月21日
發(fā)明者劉鐵華, 李磊, 見良, 鄭鵬程 申請人:新奧特(北京)視頻技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1