TWI470576B - 動態圖片的動畫規劃方法與裝置 - Google Patents
動態圖片的動畫規劃方法與裝置 Download PDFInfo
- Publication number
- TWI470576B TWI470576B TW99102783A TW99102783A TWI470576B TW I470576 B TWI470576 B TW I470576B TW 99102783 A TW99102783 A TW 99102783A TW 99102783 A TW99102783 A TW 99102783A TW I470576 B TWI470576 B TW I470576B
- Authority
- TW
- Taiwan
- Prior art keywords
- node
- atomic
- nodes
- cluster
- animation
- Prior art date
Links
Description
本發明係有關動態圖片視覺化,尤其係關於一種動態圖片的動畫規劃方法與裝置。
圖片繪製(graph drawing),也稱圖片視覺化,是指應用拓撲學和幾何學得出並呈現圖片的二維或三維表示,它廣泛應用於VLSI電路設計、社會網路分析、地圖學和生物信息學等領域。在圖片視覺化中,使用點來表示圖片中的頂點,使用點之間的連線來表示頂點之間的邊,並且可以使用箭頭來表示有向邊。對於同一個圖片來說,其頂點和邊的不同可視排列將影響到圖片的易懂性、有用性、製造成本和美觀等。圖片視覺化的目的就是使用適當的佈局演算法獲得並呈現具有較好的易懂性、美觀等特點(例如,儘量減少邊相交,不同邊的長度大致相等,等等)的圖片的二維或三維表示。
動態圖片是指隨著時間變化圖片,其元素(節點或邊)被動態地添加和刪除,它們的屬性也可能動態地改變。動態圖片視覺化的主要目的是揭示動態圖片在時間維度上的變化模式,暴露圖片或網路的進化過程。例如,動態圖片視覺化可幫助社會學家發現社會網路進化的模式,或幫助商業智能(Business Intelligence,BI)分析者在不同公司中發現潛在客戶,或幫助生物學家發現蛋白質的變異等等。
在動態圖片視覺化中存在著許多挑戰。最重要的挑戰之一是在不同的時間圖框之間平滑地過渡圖片的變化,以保持用戶的意象圖(mental map)。動畫技術被廣泛地應用以解決該問題。動畫能夠吸引人的注意力,有效地表現事物的變化的部分以及恒定的部分。圖1顯示了以動畫展示社區的社會網路圖片的逐年變化的範例,其每一個圖框顯示了該社區在從2004年到2008年之間的某一年的社會網路圖片,該社會網路圖片中的節點表示組成該社區的個人,而節點之間的邊表示這些個人之間的聯繫。通過連續播放這些圖框,將能夠顯示社會網路圖片在各年之間的節點和邊的增減變化,從而直觀地顯示該社區逐年的變化模式。
然而,動態圖片視覺化領域中現有的動畫技術存在著若干缺點。例如,對於增加或減少多個節點所帶來的圖片的變化,現有的動畫技術將同時增加或減少所有的節點。這樣,雖然花費了最少的時間,但由於變化太多,無法突出動態圖片變遷時的重要的結構更新,使用戶產生視覺混亂,降低了動畫的可讀性。另一方面,如果將變化分別、逐個地執行,則當存在很多變化時將花費過多的時間。因此,本領域中需要一種能夠提供動畫速度和可讀性之間的良好平衡的動畫規劃方法。
另外,在動態社會網路等網路中,關係(在表示社會網路的動態圖片中表示為邊)的變化是很常見的,這種關係的變化例如包含在個人之間添加或刪除關聯。由於關係變化有可能極大地改變社會網路圖片的拓撲結構,分析和完整地呈現關係的變化對於社會網路的影響是很困難的。在傳統的動畫技術中,通常使用兩個步驟來展示關係的變化:以增加關係的情況為例,在第一個步驟中,邊從其初始節點生長到目標節點,並連接這兩個節點。該步驟用來顯示圖片的拓撲的變化,換言之,該步驟顯示了造成圖片的視覺化變化的原因。在第二個步驟中,由新邊所連接的所有節點及相關節點被一起拖到它們的新位置。該步驟顯示了圖片視覺化變化的現象或結果。在這種兩步驟模型中,在變化原因和最終的變化結果之間存在著缺口。由於不同的節點運動通常是由不同的連接造成的,而最終的運動結果可能是由多個連接(原因)引起的,因此這種傳統的動畫技術無法發現和顯示每個節點運動的主要原因。發現和顯示節點運動的原因對於社會網路關係分析是非常重要的,因此,本領域中需要一種能夠顯示動態社會網路圖片等動態圖片的關係變化及節點運動之間的內在關係、具有更好的可讀性的動畫規劃方法。
根據本發明的一個態樣,提出了一種動態圖片的動畫規劃方法,包含:因應於在動態圖片中應用節點變化,根據變化節點與現有節點之間的關係將該變化節點劃分為原子分區;根據該原子分區之間的叢集距離將該原子分區叢集,從而生成用於規劃動態圖片節點變化的動畫展示的運作列表,該運作列表的元素包含原子分區的叢集和/或原子分區。
根據本發明的另一個態樣,提出了一種動態圖片的動畫規劃裝置,包含:原子分區劃分模組,用於因應於在動態圖片中應用節點變化,根據變化節點與現有節點之間的關係將該變化節點劃分為原子分區;叢集模組,用於根據該原子分區之間的叢集距離將該原子分區叢集,從而生成用於規劃動態圖片節點變化的動畫展示的運作列表,該運作列表的元素包含原子分區的叢集和/或原子分區。
根據本發明的又一個態樣,提出了一種動態圖片的動畫規劃方法,包含:因應於在動態圖片中應用連接變化,根據動態圖片中的節點與關鍵節點之間的相關性,將動態圖片中的節點分組到不同的節點組中,其中該關鍵節點是指每個變化連接所直接相連的節點;以及按照該節點組規劃由該連接變化所造成的節點運動的動畫展示。
根據本發明的再一個態樣,提供了一種動態圖片的動畫規劃裝置,包含:分組模組,用於因應於在動態圖片中應用連接變化,根據動態圖片中的節點與關鍵節點之間的相關性,將動態圖片中的節點分組到不同的節點組中,其中該關鍵節點是指每個變化連接所直接相連的節點;以及規劃模組,用於按照該節點組規劃由該連接變化所造成的節點運動的動畫展示。
本發明的技術方案能夠規劃動態圖片中的節點變化或連接變化的多級動畫展示,獲得顯示動態圖片中的變化元素之間及其與現有元素之間的相關性、因而具有更好的可讀性、並具有較快的動畫展示速度。
下面參照附圖來說明本發明的實施例。在下面的說明中,闡述了許多具體細節以便更全面地瞭解本發明。但是,對於本技術領域內的技術人員明顯的是,本發明的實現可不具有這些具體細節中的一些。此外,應當理解的是,本發明並不限於所介紹的特定實施例。相反,可以考慮用下面的特徵和要素的任意組合來實施本發明,而無論它們是否涉及不同的實施例。因此,下面的態樣、特徵、實施例和優點僅作說明之用而不應被看作是所附申請專利範圍的要素或限定,除非申請專利範圍中明確提出。
在本發明的一個態樣,提供了一種動態圖片的動畫規劃方法,該方法用來對動態圖片中的節點變化(即節點的增加或減少)的動畫展示進行規劃。在該方法中,根據動態圖片中變化節點之間的關聯性以及這些節點的重要性,將這些節點進行不同程度的叢集,並按照叢集規劃節點變化的動畫展示,從而使得與其他變化節點關聯性較小的變化節點或者較重要的變化節點單獨地或在較小的叢集中動畫展示,而相互關聯性較大的變化節點叢集在一起動畫展示。從而獲得既具有良好的可讀性又花費較少時間的動畫展示效果。
現參照圖2,其示意性地顯示了根據本發明的一個實施例的動態圖片的動畫規劃方法的整體流程,如圖所示,該方法包含如下幾個主要步驟:劃分原子分區,原子分區叢集,以及選擇性的動態排序。下面詳細描述本發明的方法中的各步驟。
步驟一、劃分原子分區
該步驟因應於將節點變化應用到動態圖片中,根據變化節點與圖片中現有節點之間的關係將變化節點劃分到若干原子分區中。如本領域中所知的,將節點變化應用到動態圖片中是指將節點變化應用到動態圖片的拓樸,從而導致動態圖片的拓撲結構的改變,然後應用所採用的適當的佈局演算法,得出節點變化後的動態圖片的佈局,即各節點的目標位置。
可以將與某一個現有節點直接相連的所有新增節點劃分到同一個原子分區中。圖2中顯示了這種劃分方法,其中10個新增節點分別與4個現有節點直接相連,這樣,就可以將這10個新增節點分別劃分到4個原子分區中。
對於某些新增節點不與現有節點直接相連的較複雜的情況,可以首先尋找每個新增節點的關鍵節點,並將具有相同關鍵節點的新增節點劃分到同一個原子分區。這種方法的執行過程可描述如下:
輸入:
(1) 新增節點ni
(2) 動態圖片G
輸出:
(1) 原子分區集合C
描述:
1. 對於每個ni
,從ni
到圖片G執行寬度優先搜索,記錄將ni
與節點{mi
∣mi G}相連接的所有最短路徑,並將所得到的路徑集合記為S。
2. 對於S中的每個最短路徑,通過簡單地將每個路徑中的邊的權重相加來計算該路徑的權重。
3. 選擇所有最短路徑中權重最大的路徑,假設該路徑將ni
與mk
相連接
4. 將節點mk
作為新增節點ni
的關鍵節點
5.將具有相同的關鍵節點mk
的各個ni
劃分為原子分區ci
,並將其放入C
6. 返回C
圖3顯示了這種將變化節點劃分為原子分區的方法的執行過程的一個範例。如圖所示,圖片中的現有節點為5、6、7,新增節點為1、2、3、4。
新增節點1到現有節點的最短路徑集合為S1
={(1,2,5),(1,3,5),(1,3,6)},這些路徑的權重為W1
={4,4,5},其中的最大權重為5,因此新增節點1的關鍵節點為P1
=6;新增節點2到現有節點的最短路徑集合為S={(2,5)},該路徑的權重為W2
={2},其中的最大權重為2,因此新增節點2的關鍵節點為P2
=5;新增節點3到現有節點的最短路徑集合為S={(3,5),{3,6}},這些路徑的權重為W3
={1,2},其中的最大權重為2,因此新增節點3的關鍵節點為P3
=6;新增節點4到現有節點的最短路徑集合為S={(4,7)},該路徑的權重為W4
={1},其中的最大權重為1,因此新增節點4的關鍵節點為P4
=7。
這樣,新增節點1和3將被劃分為同一個原子分區,新增節點2為一個原子分區,新增節點4為另一個原子分區。
步驟二、原子分區叢集
該步驟根據原子分區之間的相關性以及各原子分區的重要性將原子分區叢集為若干叢集,並獲得由各叢集組成的、平衡了動畫速度和信息的可讀性的適當的運作列表。在叢集過程中,將形成由原子分區、中間叢集和最終叢集組成的層級結構,該層級結構可以被稱為動畫規劃模型。為了將原子分區叢集在一個層級結構中,最重要的是計算任何兩個原子分區或叢集之間的叢集距離。可以使用很多方法來計算這種叢集距離。一種簡單的方法是使用歐幾里得幾何距離公式計算原子分區或叢集之間的螢幕距離,並將該螢幕距離作為叢集距離。該螢幕距離例如可以是兩個原子分區或叢集中包含的節點之間的最短路徑的長度或平均長度。然而,本發明提出了一種新的計算叢集距離的方法,該方法將考慮如下幾個因素中的任何一個或多個:
1. 原子分區或叢集的重要性。希望將重要的原子分區獨立地顯示,而不與其他原子分區叢集,並且如果在原子分區叢集的過程中重要性累積到一定程度,將不再與其他原子分區或叢集相叢集。
2. 兩個原子分區或叢集之間的拓撲距離。如果存在很多邊將兩個原子分區或叢集相連,則這兩個原子分區或叢集之間通常具有緊密的聯繫,它們的變化通常是相關的,而傾向於將它們叢集在一起。在此,可以定義兩個原子分區或叢集之間的拓撲距離為它們之間的共同邊數。
3. 兩個原子分區或叢集之間的幾何距離,如上所述,幾何距離是指兩個原子分區或叢集之間的螢幕距離,並通常以兩個原子分區或叢集中的節點之間的最短路徑的長度或平均長度來表示。
基於以上考慮,任何兩個原子分區或叢集之間的叢集距離可以如下公式計算:
其中,i,j表示兩個原子分區或叢集,dist(i,j)表示兩個原子分區或叢集之間的叢集距離,d表示i和j之間的幾何距離,,eij
為連接i和j的邊數,|i|表示i中的節點數,|j|表示j中的節點數,α=(0,1),為0和1之間的權重參數,可根據所需要的各相關因素的權重指定,c表示i和j合併後的重要性,可以如下公式計算:c=(|i| ci
+|j| cj
)/(|i|+|j|),其中ci
和cj
分別表示i和j的重要性,並可以如下公式計算:
也就是說,ci
為i中的各節點的重要性之和,以上公式中還給出了計算節點n重要性的一種方法,其中,C(n)為節點n的接近中心性(closeness centrality),B(n)為節點n的中介中心性(between centrality),β為一權重參數。事實上,可以使用本領域中所知的多種方法來計算節點的重要性,例如也可考慮節點的程度中心性(degree centrality),特徵向量中心性(eigenvector centrality)等。
以上給出了計算原子分區或叢集之間的叢集距離的一種範例性方法,下面描述使用叢集距離來對原子分區進行層級叢集、從而獲得運作列表的方法的執行過程:
輸入:
1)原子分區集合C,
2)重要性臨界值λ1
3)動態圖片G
輸出:
1) 運作列表L
描述:
1. 設置初始集合S=C。
2. 計算S中每一個元素i的重要性ci
如果i是一個原子分區,則其重要性為所包含的節點的重要性之和;否則,如果i是一個叢集,則其重要性是該叢集所包含的原子分區或叢集的重要性之合。可以使用多種方法來計算一個節點的重要性,例如使用節點的程度中心性、接近中心性、中介中心性、特徵向量中心性等中的任何一個或多個的組合來計算節點的重要性。
3. 對於S中的每一個i,如果ci λ1
則將i放入L,其中λ1
是一重要性臨界值,其值可根據需要的相關因素的權重來設定。
4. 對於S中的每兩個元素i,j,使用上文中所述的方法計算dist(i,j),
a)如果i和j之間的叢集距離小於一平均距離臨界值λ2,則將i和j叢集為叢集M,從S中去除i和j,並將M添加到S中,
b)如果i與S中任何其他元素之間的叢集距離均大於或等於所述平均距離臨界值λ2
,則將i放入L。
5. 轉到步驟2,開始新的一輪叢集,直到S中的所有元素相互之間的叢集距離大於或等於所述平均距離臨界值λ2
。此時,將S中的所有元素放入L。
6. 返回L。
上述平均距離臨界值λ2
可以如下公式計算:
λ2
=max(D(i,j))/(count-1)
其中,max(D(i,j))為S中的現有元素之間的最大叢集距離,count為S中的現有元素的數量。
以上叢集過程將產生一動畫規劃模型。圖4顯示了由這種叢集過程產生的動畫規劃模型的範例。如圖所示,該模型為一層級結構,其底層為原子分區1-18。在叢集過程中的第一輪,原子分區1-4、5-6、7-8、9-10、13-15、16-18分別被叢集為叢集A、B、C、D、E、F,而原子分區11和12,由於其重要性超過重要性臨界值或者與任何其他元素之間的叢集距離大於或等於平均距離臨界值,而被轉入運作列表。在叢集過程的第二輪,叢集A-B、E-F分別被進一步叢集為叢集G、H,而叢集C、D,由於其重要性已超過重要性臨界值或者與任何其他元素之間的叢集距離大於或等於平均距離臨界值,而被轉入運作列表。在叢集過程的第三輪,叢集G、H,由於其重要性超過重要性臨界值或者與任何其他元素之間的叢集距離大於或等於平均距離臨界值,而被轉入運作列表。因此,所得到的運作列表中將包含由圖片中所示折線所連接的元素,即叢集G、C、D,原子分區11、12,以及叢集H。這樣,就可以規劃動畫展示按照運作列表的內容來進行,從而獲得較好地平衡了可讀性和展示速度的動畫展示效果。
步驟三、動態排序
該步驟為選擇性步驟,其用於確定運作列表中各元素(叢集或原子分區)的動畫展示順序。人類的視覺平滑跟蹤能力是非對稱的,其水平平滑跟蹤能力好於垂直平滑跟蹤能力,且向下平滑跟蹤能力好於向上平滑跟蹤能力。基於此,動態排序的目標是使水平運動以及向下運動最大化,即根據運作列表中的叢集或原子分區的螢幕位置確定動畫展示的順序,使得叢集或原子分區的展示儘量按照從左到右,從上到下,再從右到左的順序進行。此外,賦予較重要的叢集或原子分區較高的優先級,即使得重要的叢集或原子分區較先展示。
具體地,可以首先獲得運作列表中的各元素的重要性[a1,a2,...ai,...,an],叢集或原子分區的重要性可以如上文中所述的方法計算。
其次,根據運作列表中各元素的螢幕位置確定每個元素的視覺順序權重[b1,b2,...bi,...,bn],所述視覺順序權重可以根據上述動畫展示順序指定,例如可以指定位於螢幕左側的元素比位於螢幕右側的元素具有較大視覺順序權重,位於螢幕上方的元素比位於螢幕下方的元素具有較大視覺順序權重等。
然後,可以使用以下公式計算運作列表中的每個元素的動畫展示順序權重,並按照該動畫展示順序權重確定運作列在中的每個元素的動畫展示順序:
Oi
=|αai
+(1-α)bi
|
其中,Oi
為元素i的動畫展示順序權重,α為表示元素重要性權重與視覺順序權重之間的相對權重的係數。
當在步驟二中對變化節點進行了叢集並生成了適當的運作列表,以及選擇性地在步驟三中確定了各叢集或原子分區的展示順序後,就可以按照所述運作列表及展示順序對節點變化的動畫展示進行規劃,從而獲得既具有較好的可讀性、又具有較快的展示速度的動畫展示。
以上以動態圖片中增加節點的情況為例說明了根據本發明的實施例的動態圖片的動畫規劃方法,應指出的是,以上描述僅為範例,而不是對本發明的限制。例如,本發明也同樣適用於在動態圖片中減少節點的情況,以及在動態圖片中同時增加和減少節點的情況。在動態圖片中減少節點的情況下,對減少的節點的處理是與對增加的節點的處理相同的,即首先將這些節點劃分為原子分區,然後對原子分區進行叢集,以及選擇性地將叢集(以及可能的原子分區)進行動態排序,以便按照叢集及排序對這些節點的動畫展示進行規劃。在動態圖片中同時增加和減少節點的情況下,可以對增加的節點和減少的節點分別進行處理,即分別將增加的節點和減少的節點劃分為原子分區,然後分別對它們的原子分區進行叢集,以及選擇性地分別將叢集(以及可能的原子分區)進行動態排序,以便對增加的節點和減少的節點的動畫展示分別按照各自的叢集及排序進行規劃。較佳地,將動畫展示規劃為首先展示減少的節點,然後展示動態圖片中原有節點運動到目標位置,最後展示增加的節點。動態圖片中每個原有節點的目標位置可以通過在將節點變化應用到動態圖片之後,使用所採用的佈局演算法計算出來。
本發明還提供了一種動態圖片的動畫規劃裝置,該動態圖片的動畫規劃裝置可用來執行上述動態圖片的動畫規劃方法。下面僅對該動態圖片的動畫規劃裝置進行簡要描述,有關該裝置的詳細信息可參見以上描述。
根據本發明的實施例,該動態圖片的動畫規劃裝置包含原子分區劃分模組,用於根據動態圖片中變化節點與現有節點之間的關係將所述變化節點劃分為原子分區;以及叢集模組,用於根據所述原子分區之間的叢集距離將所述原子分區叢集,從而生成用於規劃動態圖片節點變化的動畫展示的運作列表,所述運作列表的元素包含原子分區的叢集和/或原子分區。
根據本發明的實施例,該裝置還包含:排序模組,用於對所述運作列表中的元素的動畫展示順序進行排序,且所述排序是根據所述元素的螢幕位置以及所述叢集的重要性對所述叢集的動畫展示順序進行的。
根據本發明的實施例,所述原子分區劃分模組包含:用於對於每個變化節點,獲得該節點與動態圖片中的現有節點相連接的最短路徑中權重最大的路徑,並將該路徑所連接的動態圖片中的現有節點作為該變化節點的關鍵節點的裝置;以及用於將具有相同關鍵節點的變化節點劃分到相同的原子分區中的裝置。
根據本發明的實施例,所述叢集模組包含:用於對於重要性達到或超過重要性臨界值的原子分區或叢集,將其放入運作列表的裝置;用於對於叢集距離小於距離臨界值的兩個原子分區或叢集,將其叢集的裝置;用於對於與任何其他原子分區或叢集之間的叢集距離大於或等於所述距離臨界值的原子分區或叢集,將其轉入運作列表的裝置,其中,上述操作疊代執行,直到所有原子分區都作為原子分區或叢集的一部分被放入運作列表。
根據本發明的實施例,兩個原子分區或叢集之間的叢集距離取決於以下各項中的任何一個或多個:兩個原子分區或叢集之間的幾何距離;連接兩個原子分區或叢集的邊數;以及兩個原子分區或叢集合併後的重要性。
根據本發明的實施例,原子分區或叢集的重要性取決於該原子分區或叢集所包含的節點的重要性,且節點的重要性取決於該節點的程度中心性、接近中心性,中介中心性、特徵向量中心性的任何一個或多個。
在本發明的另一個態樣,提供了一種動態圖片的動畫規劃方法。該方法用來對動態圖片中由於連接(即邊)的變化而造成節點運動的動畫展示進行規劃。在該方法中,將連接的變化當作節點運動的內在原因,並試圖發現造成不同節點的位置變化的內在原因,即那些邊的變化造成了那些節點的位置改變;然後,將其運動主要由一相同的邊的變化引起的節點分組在一起;最後,規劃這些節點運動的動畫展示,使得同一組節點的運動同時動畫展示,而不同組節點的運動在不同時間裏動畫展示。
現參照圖5,其顯示了根據本發明的實施例的動態圖片的動畫規劃方法的整體流程。如圖所示,該方法包含如下幾個主要步驟:應用連接變化,節點分組,以及多級動畫規劃。下面參照附圖詳細描述根據本發明的實施例的動態圖片的動畫規劃方法。
步驟一、應用連接變化
在該步驟中,將連接變化應用到動態圖片的拓撲,從而導致動態圖片的拓撲結構的改變,然後應用所採用的適當的佈局演算法,得出連接變化後的動態圖片的佈局,即各節點的目標位置。圖6顯示了動態圖片的連接變化的一個範例。如圖所示,在動態圖片中增加了兩個連接eAD
和eBC
這兩個連接將造成所有節點的運動。該步驟可以由例如可從http://sonia.stanford.edu獲得的現有的動態圖片視覺化系統完成,在此不再贅述。
步驟二、節點分組
在該步驟中,針對每個連接變化逐個檢查每個節點,以判斷該連接變化是否是造成該節點的運動的主要原因,然後將由同一個連接變化造成運動的節點分組在一起。在現有技術的方法中,由於所有節點是一起運動的,因此無法顯示造成各節點運動的主要原因。而本發明的方法根據造成節點運動的主要原因將節點劃分到不同的組中,並按照組來規劃節點運動的動畫展示,可以獲得具有更好的可讀性的動畫展示效果。
根據本發明的實施例,節點分組的具體步驟如下:
1. 對於每個變化連接eij
,創建初始組Gij
並將節點i和j放入Gij
,同時將節點i和j放入關鍵節點集合K。也就是說,將變化連接所直接連接的節點視為關鍵節點,並根據每個關鍵節點所屬的變化連接將關鍵節點分組到不同的組中。例如,對於圖6的動態圖片的連接變化,所創建的初始組為GAD
={A,D},GBC
={B,C},而關鍵節點集合為K={A,D,B,C}。對於兩個或兩個以上的變化連接共用節點的情況,則可創建一個初始組,並將這些變化連接所直接相連的節點均放入該初始組。
2. 對於每個初始組中的每個節點i,計算i與圖片中任何其他節點的相關性。也就是說,計算動態圖片中每個非關鍵節點與每個關鍵節點之間的相關性。節點i和j之間的相關性可以如下公式計算:
其中,R(i,j)是節點i和j之間的相關性,Pij
是包含從節點i到j的所有路徑的路徑集合,wk1
是節點k和1之間的邊的權重,|p|是路徑p的拓撲長度,E是圖片的所有邊的集合,ek1
是節點k和1之間的邊,eij
是節點i和j之間的邊。也就是說,根據該公式,兩個節點之間的相關性取決於該兩個節點之間的每一條路徑中的第一條邊的權重。
3. 對於每個非關鍵節點,將其放入包含與其相關性最大的關鍵節點的組。也就是說,比較每個非關鍵節點與每個關鍵節點之間的相關性,獲得每個非關鍵節點的相關性最大的關鍵節點,然後將每個非關鍵節點放入其相關性最大的關鍵節點所在的組。例如,對於圖6中的節點E、F、G、H、I中的每一個,根據所計算的它與關鍵節點A、D、B、C之間的相關性的大小,將它放入組GAD
或GBC
。
這樣,因應於對動態圖片應用連接變化,根據造成動態圖片中的每個節點運動的主要原因,即根據造成每個節點運動的相應的主要連接變化,將動態圖片中的節點分組到不同的組中。
步驟三、多級動畫規劃
該步驟根據步驟二中得出的節點組來規劃動畫的多級展示,即將圖片中同一個組中的節點運動規劃為一起動畫展示,而將不同的組的節點運動規劃為在不同時間裏動畫展示。以便更清楚地顯示節點運作的主要原因。至於不同組的節點運動的動畫展示的相對時間,可以有不同的情況。圖7(a)顯示了平行地動畫展示所有組的節點運動的情況,即同時動畫展示由多個連接變化所造成的所有組的節點運動的情況,這實際上是現有技術中同時動畫展示所有節點運動的做法,這種做法將遺失圖片變化中的細節信息,無法顯示圖片變化中的因果關係。圖7(b)顯示了逐個地動畫展示不同組的節點運動的情況,即當前一個組的節點運動的動畫展示完成後,緊接著動畫展示後一個組的節點運動,這種做法能夠保留圖片變化中的細節信息,顯示圖片變化中的因果關係。然而,這種做法的一個缺點是很可能產生節點的重合,也就是說,在動畫展示一組節點的運動時,該組節點中一些節點的位置很可能與其他節點的位置相重合,從而造成視覺上的混亂,因此,需要的是分組動畫展示節點運動,同時儘量避免節點位置的重合。
為此,根據本發明的進一步的實施例,還包含檢測在每組節點運動中發生的節點位置重合的步驟,並且將動畫展示規劃為每當一組節點在運動中與另一組節點的位置重合,就立即啟動該另一組節點的運動。圖7(c)顯示了這種當檢測到節點位置重合時就立即啟動下一組節點的運動的情況。如本領域的技術人員可以理解的,由於動態圖片中每個節點的初始位置是已知的,每個節點的目標位置也已通過在上述步驟一中應用適當的佈局演算法獲得,此外,根據所選擇的路徑計算方法(例如下述力導向動畫模型)可以計算出每個節點從初始位置到目標位置的運動路徑,這樣就可以檢測出每個節點在其運動過程中是否以及何時與其他節點相重合。
為了具體地規劃每組節點運動的動畫展示,需要求出每個節點在初始位置和目標位置之間的運動路徑。可以使用多種方法計算每個節點在初始位置和目標位置之間的運動路徑,例如可以根據每個節點的初始位置和最終位置簡單地使用線性插值的方法來計算每個節點的運動路徑。一種更好的方法是使用力導向動畫模型(force-directed animation model)來計算每個節點的運動路徑。該力導向動畫模型的目標是發現在力場中消耗最少能量的曲線路徑。具體地,在該模型中,對於通過連接相連的每對節點,指定一個彈簧力;對於彼此分離或相連的每對節點,指定一個普遍的排斥力;對於每個節點,指定一個可變的外部作用力F,以確保該節點最終會運動到目標位置;以及最小化當節點運動時的能量消耗∥F∥2
。該模型可以轉化成相關的限制性優化問題來求解。
例如,可建立如下限制性優化方程組來計算節點的運動路徑:
其中,t0
為節點運動初始時間,t1
為節點運動終止時間,t為時間變量,Fi
為節點i所受的可變力,fij
為節點i和j之間的彈簧力,E為動態圖片的邊集合,pij
為任何一對節點i和j之間的排斥力,mi為節點i的重要性,Xi
為節點i的位置,k1
為表示彈簧力與節點運動速度之間關係的係數,k2
為表示排斥力與節點運動速度之間關係的係數,Initial為節點i的初始位置,Final為節點i的最終位置。如本領域的技術人員所知的,可以通過使用離散方程替換以上公式中的偏微分方程並使用有限差分方法以及逐步二次規劃(Sequential Quadratic Programming)來求解以上公式,從而得到節點i的邊動路徑。圖8示意性地顯示了使用以上方法獲得的一節點在力場中從初始位置A運動到目標位置B的運動路徑。當使用以上方法計算出每組節點中的每個節點的運動路徑後,就可以具體規劃出每組節點運動的動畫展示。
以上顯示了根據本發明的實施例的一種動態圖片的動畫規劃方法。應指出的是,以上描述僅為範例,而不是對本發明的限制。例如,儘管在上文中以增加連接的情況為例說明了本發明,但本發明也同樣適用於在動態圖片中減少連接的情況,以及在動態圖片中同時增加和減少連接的情況,在這些情況下,本發明的方法對減少的連接和增加的連接是統一處理的,即無論是增加的連接還是減少的連接,都根據這些連接所直接連接的關鍵節點以及其他節點與這些關鍵節點的相關性將節點分組,並根據節點組規劃動畫展示。
本發明還提供了一種動態圖片的動畫規劃裝置,該動態圖片的動畫規劃裝置可用來執行上述動態圖片的動畫規劃方法。下面僅對該動態圖片的動畫規劃裝置進行簡要描述,有關該裝置的詳細信息可參見以上描述。
根據本發明的實施例,該動態圖片的動畫規劃裝置,包含:分組模組,用於根據動態圖片中的節點與關鍵節點之間的相關性,將動態圖片中的節點分組到不同的節點組中,其中所述關鍵節點是指動態圖片中每個變化連接所直接相連的節點;以及規劃模組,用於按照所述節點組規劃由所述變化連接所造成的節點運動的動畫展示。
根據本發明的實施例,所述分組模組包含:計算子模組,用於計算動態圖片中的每個非關鍵節點與每個關鍵節點之間的相關性;比較子模組,用於通過比較每個非關鍵節點與每個關鍵節點之間的相關性獲得每個非關鍵節點的相關性最大的關鍵節點;以及分組子模組,用於將每個非關鍵節點分組到其相關性最大的關鍵節點所在的節點組中。
根據本發明的實施例,兩個節點之間的相關性取決於該兩個節點之間的每一條路徑中的每一條邊的權重。
根據本發明的實施例,該裝置還包含重合檢測模組,用於檢測節點組中的節點運動過程中發生的與其他節點的位置重合,且所述規劃模組包含:用於將所述節點運動的動畫展示規劃為一旦在一個節點組中的節點的運動過程中發生與另一個節點組中的節點的位置重合,就開始所述另一個節點組中的節點的運動的裝置。
根據本發明的實施例,所述規劃模組包含:用於獲得動態圖片中的每個節點在應用所述變化連接之間的初始位置以及在應用所述變化連接之後的目標位置的裝置;用於使用力導向動畫模型計算每個節點在初始位置和目標位置之間的運動路徑的裝置,其中,該力導向模型包含:每對直接相連的節點之間的彈簧力,每對節點之間的排斥力,用於推動每個節點運動的可變力,該力導向模型用於發現在力場中消耗最少能量的曲線路徑。
本發明可以硬體、軟體、或硬體與軟體的結合的方式實現。本發明可以集中的方式在一個計算機系統中實現,或以分佈方式實現,在這種分佈方式中,不同的部件分佈在若干互連的計算機系統中,適於執行本文中描述的方法的任何計算機系統或其它裝置都是合適的。一種典型的硬體與軟體的組合可以是帶有計算機程序的通用計算機系統,當該計算機程序被加載和執行時,控制該計算機系統而使其執行本發明的方法,並構成本發明的裝置。
本發明也可體現在計算機程序產品中,該程序產品包含使能實現本文中描述的方法的所有特徵,並且當其被加載到計算機系統中時,能夠執行所述方法。
儘管己參照較佳實施例具體顯示和說明了本發明,但是本領域內的那些技術人員應理解,可在形式和細節上對其進行各種改變而不會背離本發明的精神和範圍。
所附申請專利範圍中闡述了被認為是本發明的特點的創造性特徵。但是,通過參照附圖閱讀下面對說明性實施例的詳細說明可更好地理解發明本身以及其較佳使用模式、目標、特徵以及優點,在附圖中:
圖1顯示了以動畫展示社區的社會網路圖片的逐年變化的範例;
圖2示意性地顯示了根據本發明的一個實施例的動態圖片的動畫規劃方法的整體流程;
圖3顯示了根據本發明的實施例將變化節點劃分為原子分區的方法的一個範例;
圖4顯示了根據本發明的實施例的叢集過程產生的動畫規劃模型的範例;
圖5顯示了根據本發明的另一個實施例的動態圖片的動畫規劃方法的整體流程;
圖6顯示了動態圖片的連接變化的一個範例;
圖7(a)顯示了平行地動畫展示所有組的節點運動的情況;
圖7(b)顯示了逐個地動畫展示不同組的節點運動的情況;
圖7(c)顯示了當檢測到節點位置重合時就立即啟動下一組節點的運動的動畫展示的情況;以及
圖8示意性地顯示了一節點在力場中從初始位置A運動到目標位置B的運動路徑。
Claims (17)
- 一種動態圖片的動畫規劃方法,包含:根據變化節點與現有節點之間的關係將該變化節點劃分為原子分區;以及根據該原子分區之間的叢集距離將該原子分區叢集,以生成用於規劃動態圖片節點變化的動畫的運作列表,其中該運作列表包含從原子分區的叢集和/或原子分區構成的群組所選的元素;根據動態圖片中的節點與關鍵節點之間的相關性,將動態圖片中的節點分組到節點組中,其中該關鍵節點是指一個變化連接所直接相連的節點;以及檢測節點組中的節點運動過程中發生的與其他節點的位置重合,且按照該節點組規劃由該變化連接所造成的節點運動的動畫展示包含:將該節點運動的動畫展示規劃為一旦在一個節點組中的節點的運動過程中發生與另一個節點組中的節點的位置重合,就開始該另一個節點組中的節點的運動。
- 如申請專利範圍第1項所述的方法,還包含:對該運作列表中的元素排序至一動畫順序,其中該排序是根據該元素的螢幕位置以及該元素的重要性進行的。
- 如申請專利範圍第1項所述的方法,其中將該變化節點劃分為原子分區包含:從每一節點與動態圖片中的現有節點相連接的一組最短路徑中決定一權重最大的路徑; 設定被決定連接至該權重最大的路徑的現有節點作為該變化節點的關鍵節點;以及將具有相同關鍵節點的變化節點劃分到相同的原子分區中。
- 如申請專利範圍第1項所述的方法,其中將該原子分區叢集還包含:對於具有一重要性係達到或超過重要性臨界值的原子分區或叢集,將其轉入運作列表;叢集化一叢集距離小於距離臨界值的原子分區或叢集;以及對於與任何其他原子分區或叢集之間的叢集距離大於或等於該距離臨界值的原子分區或叢集,將其轉入運作列表。
- 如申請專利範圍第4項所述的方法,其中兩個原子分區或叢集之間的叢集距離取決於以下各項中的任何一個或多個:(i)兩個原子分區或叢集之間的幾何距離;(ii)連接兩個原子分區或叢集的邊數;以及(iii)兩個原子分區或叢集合併後的重要性。
- 如申請專利範圍第4項所述的方法,其中原子分區或叢集的重要性取決於該原子分區或叢集所包含的節點的重要性,且節點的重要性取決於該節點的程度中心性、接近中心性、中介中心性、特徵向量中心性的任何一個或多個。
- 一種動態圖片的動畫規劃裝置,包含:原子分區劃分模組,用於根據變化節點與現有節點之間的關係將該變化節點劃分為原子分區;以及 叢集模組,用於根據該原子分區之間的叢集距離將該原子分區叢集,以生成用於規劃動態圖片中節點變化的動畫的運作列表;其中該運作列表包含從原子分區的叢集和/或原子分區構成的群組所選的元素;一分組模組,組態成根據動態圖片中的節點與關鍵節點之間的相關性,將動態圖片中的節點分組到節點組中,其中該關鍵節點是指一個變化連接所直接相連的節點;一位置檢測模組,組態成檢測節點組中的節點運動過程中發生的與其他節點的位置重合;以及一動畫模組,組態成繪製該運作列表的元素於一電腦顯示器以展示該動態圖片,以及繪製由該變化連接所造成的節點組運動使得一旦在該節點組中的節點的運動過程中發生與另一個節點組中的節點的位置重合,就開始該另一個節點組中的節點的運動。
- 如申請專利範圍第7項所述的裝置,還包含:排序模組,用於對該運作列表中的元素排序至一動畫順序,其中該排序是根據該元素的螢幕位置以及該叢集的重要性進行的。
- 如申請專利範圍第7項所述的裝置,其中該原子分區劃分模組包含:從每一節點與動態圖片中的現有節點相連接的一組最短路徑中決定一權重最大的路徑;以及設定被決定連接至該權重最大的路徑的現有節點作為該變化節點的關鍵節點的裝置;以及用於將具有相同關鍵節點的變化節點劃分到相同的原子分區 中的裝置。
- 如申請專利範圍第7項所述的裝置,其中該叢集模組包含:用於對於具有一重要性係達到或超過重要性臨界值的原子分區或叢集,將其轉入運作列表的裝置;用於叢集化一叢集距離小於距離臨界值的原子分區或叢集的裝置;以及用於對於與任何其他原子分區或叢集之間的叢集距離大於或等於該距離臨界值的原子分區或叢集,將其轉入運作列表的裝置。
- 如申請專利範圍第10項所述的裝置,其中兩個原子分區或叢集之間的叢集距離取決於以下各項中的任何一個或多個:(i)兩個原子分區或叢集之間的幾何距離;(ii)連接兩個原子分區或叢集的邊數;以及(iii)兩個原子分區或叢集合併後的重要性。
- 如申請專利範圍第10項所述的裝置,其中原子分區或叢集的重要性取決於該原子分區或叢集所包含的節點的重要性,且節點的重要性取決於該節點的程度中心性、接近中心性、中介中心性、特徵向量中心性的任何一個或多個。
- 一種動態圖片的動畫規劃方法,包含:根據動態圖片中的節點與關鍵節點之間的相關性,將動態圖片中的節點分組到節點組中,其中該關鍵節點是指一個變化連接所直接相連的節點;以及 按照該節點組規劃由該連接變化所造成的節點運動的動畫展示;以及檢測節點組中的節點運動過程中發生的與其他節點的位置重合,且按照該節點組規劃由該變化連接所造成的節點運動的動畫展示包含:將該節點運動的動畫展示規劃為一旦在一個節點組中的節點的運動過程中發生與另一個節點組中的節點的位置重合,就開始該另一個節點組中的節點的運動。
- 如申請專利範圍第13項所述的方法,其中該分組節點還包含:計算動態圖片中的每個非關鍵節點與每個關鍵節點之間的相關性;比較每個非關鍵節點與每個關鍵節點之間的相關性以決定每個非關鍵節點的相關性最大的一關鍵節點;以及將每個非關鍵節點分組到與該非關鍵節點相關性最大的關鍵節點所包含的節點組中。
- 如申請專利範圍第13項所述的方法,其中兩個節點之間的相關性取決於該兩個節點之間的每一條路徑中的每一條邊的權重。
- 如申請專利範圍第13項所述的方法,其中該繪製還包含:決定動態圖片中的每個節點在應用變化連接之前的初始位置;決定在應用變化連接之後的目標位置;以及 使用力導向動畫模型計算每個節點在初始位置和目標位置之間的運動路徑。
- 一種電腦程式產品包含電腦可讀取指令,當執行時可造成一電腦完成如請求項第1-6及13-16項所述的動態圖片的動畫規劃方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW99102783A TWI470576B (zh) | 2010-02-01 | 2010-02-01 | 動態圖片的動畫規劃方法與裝置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW99102783A TWI470576B (zh) | 2010-02-01 | 2010-02-01 | 動態圖片的動畫規劃方法與裝置 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201128567A TW201128567A (en) | 2011-08-16 |
TWI470576B true TWI470576B (zh) | 2015-01-21 |
Family
ID=45025293
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW99102783A TWI470576B (zh) | 2010-02-01 | 2010-02-01 | 動態圖片的動畫規劃方法與裝置 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI470576B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020085002A1 (en) * | 1998-07-29 | 2002-07-04 | John O. Lamping | Local relative layout of node-link structures in space with negative curvature |
US6646652B2 (en) * | 2000-12-21 | 2003-11-11 | Xerox Corporation | System and method for browsing node-link structures based on an estimated degree of interest |
US20040122803A1 (en) * | 2002-12-19 | 2004-06-24 | Dom Byron E. | Detect and qualify relationships between people and find the best path through the resulting social network |
US20050134589A1 (en) * | 2003-12-18 | 2005-06-23 | Heer Jeffrey M. | Systems and methods for the estimation of user interest in graph theoretic structures |
TW200529038A (en) * | 2004-02-16 | 2005-09-01 | Systex Corp | System for developing a game |
US20070050708A1 (en) * | 2005-03-30 | 2007-03-01 | Suhit Gupta | Systems and methods for content extraction |
TW200733073A (en) * | 2005-08-09 | 2007-09-01 | Matsushita Electric Ind Co Ltd | Recording medium, playback apparatus, method and program |
-
2010
- 2010-02-01 TW TW99102783A patent/TWI470576B/zh not_active IP Right Cessation
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020085002A1 (en) * | 1998-07-29 | 2002-07-04 | John O. Lamping | Local relative layout of node-link structures in space with negative curvature |
US6646652B2 (en) * | 2000-12-21 | 2003-11-11 | Xerox Corporation | System and method for browsing node-link structures based on an estimated degree of interest |
US20040122803A1 (en) * | 2002-12-19 | 2004-06-24 | Dom Byron E. | Detect and qualify relationships between people and find the best path through the resulting social network |
US20050134589A1 (en) * | 2003-12-18 | 2005-06-23 | Heer Jeffrey M. | Systems and methods for the estimation of user interest in graph theoretic structures |
TW200529038A (en) * | 2004-02-16 | 2005-09-01 | Systex Corp | System for developing a game |
US20070050708A1 (en) * | 2005-03-30 | 2007-03-01 | Suhit Gupta | Systems and methods for content extraction |
TW200733073A (en) * | 2005-08-09 | 2007-09-01 | Matsushita Electric Ind Co Ltd | Recording medium, playback apparatus, method and program |
Non-Patent Citations (1)
Title |
---|
Ivan Herman; Guy Melancon; M. Scott Marshall,"Graph Visualization and Navigation in Information Visualization: a Survey", IEEE TRANSCATIONS ON VISUALIZATION AND COMPUTER GRAPHICS,Vol. 6,NO.1,January-March 2000 * |
Also Published As
Publication number | Publication date |
---|---|
TW201128567A (en) | 2011-08-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8605092B2 (en) | Method and apparatus of animation planning for a dynamic graph | |
Lhuillier et al. | State of the art in edge and trail bundling techniques | |
Zhou et al. | Edge bundling in information visualization | |
Brandes et al. | Visualization methods for longitudinal social networks and stochastic actor-oriented modeling | |
Gansner et al. | Interactive Visualization of Streaming Text Data with Dynamic Maps. | |
McArdle et al. | Classifying pedestrian movement behaviour from GPS trajectories using visualization and clustering | |
Gansner et al. | Visualizing streaming text data with dynamic graphs and maps | |
RU2482541C2 (ru) | Способ расчета скорости без столкновений для агента в среде имитации толпы | |
CN107729389A (zh) | 地图显示方法及其装置 | |
North et al. | Online hierarchical graph drawing | |
Barnett et al. | Coordinated crowd simulation with topological scene analysis | |
CN107291760A (zh) | 无监督的特征选择方法、装置 | |
Zielasko et al. | Interactive 3D force‐directed edge bundling | |
Jiang et al. | Identifying K Primary Corridors from urban bicycle GPS trajectories on a road network | |
Nachmanson et al. | Graphmaps: Browsing large graphs as interactive maps | |
Meijers et al. | SPLITAREA: an algorithm for weighted splitting of faces in the context of a planar partition | |
Tao et al. | Kyrix-s: Authoring scalable scatterplot visualizations of big data | |
Hofmann et al. | Visualization of 4D vector field topology | |
Filipov et al. | Are we there yet? a roadmap of network visualization from surveys to task taxonomies | |
Shoman et al. | Centrality-based hierarchy for street network generalization in multi-resolution maps | |
CN105787020B (zh) | 图数据划分方法及装置 | |
Wang et al. | Adaptive relation discovery from focusing seeds on large networks | |
TWI470576B (zh) | 動態圖片的動畫規劃方法與裝置 | |
Jiang et al. | Advanced network representation learning for container shipping network analysis | |
Wang et al. | Analyzing internet topics by visualizing microblog retweeting |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |