專利名稱:三維空間連桿曲線匹配度的檢測方法
技術領域:
本發(fā)明涉及一種機械設計技術領域的檢測方法,特別涉及一種三維空間連桿曲線匹配度的檢測方法。
背景技術:
自然界存在的許多問題都可以抽象為軌跡曲線的問題,這些軌跡曲線可以是兩維、三維或更高維的,比如計算機視覺中物體的識別,需要將物體抽象為兩維或三維的輪廓線;分子生物學中蛋白質的性質分析,需要將蛋白質分子鏈抽象為三維的空間折線;機構設計時,往往面臨如何實現(xiàn)用戶所提出的特定運動軌跡的問題,即如何使所設計機構的連桿曲線,更接近于用戶需要的軌跡路徑。另外,在機器人軌跡規(guī)劃、控制系統(tǒng)、三維磁場和流場、大腦和心臟的三維模型等都涉及到曲線的分析問題。分析這些曲線就需要對曲線的相似性進行比較。所述相似性就是指曲線之間的匹配程度。
特定到連桿曲線問題,在機構創(chuàng)新設計中,常常遇到需要解決實現(xiàn)某些特定運動軌跡的問題,即如何在多個連桿曲線中進行比較,以便獲得更接近于實際設計曲線的連桿機構。所以連桿曲線相似性問題判定對解決構創(chuàng)新機構的設計和機構運動綜合具有理論意義和實用價值。
經(jīng)對現(xiàn)有技術的文獻檢索發(fā)現(xiàn),褚金奎等在《機械工程學報》(1993,29(5)117~122)上發(fā)表的“用快速傅立葉變換進行再現(xiàn)平面四桿機構連桿曲線的綜合”,該文提出用快速傅立葉變換在頻域內對平面連桿曲線進行研究,將任何平面連桿曲線近似表示為有限幾項頻譜分量,以此作為不同連桿曲線判別匹配度的指標,便于連桿曲線之間比較,實現(xiàn)了機構軌跡綜合的目標。但是其不足在于,此方法采用的快速傅立葉變換只能應用于兩維數(shù)據(jù),從而只能進行平面連桿曲線匹配度的檢測,不能應用于三維連桿曲線。
發(fā)明內容
本發(fā)明目的在于針對現(xiàn)有技術的不足,提出一種基于紐結理論的三維空間連桿曲線匹配度的檢測方法,使其能解決了困擾已久的三維空間連桿曲線匹配問題。
本發(fā)明是通過以下技術方案實現(xiàn)的,本發(fā)明包含以下步驟a.數(shù)據(jù)標準化將待比較的連桿曲線數(shù)據(jù)進行標準化,以使連桿曲線數(shù)據(jù)消除速度、尺寸等因素的影響,只反映曲線的幾何形態(tài);b.劃分等價類對經(jīng)過步驟a處理后形成的標準化曲線,以子段對的絞擰數(shù)和距離為指標,將所有子段對劃分為若干個等價類,從而減小以下步驟c的搜索范圍;c.子段對間剛體變換在每個等價類中,求得屬于不同曲線的子段對之間的剛體變換,以尋找最佳匹配子段對,從而完成曲線的局部匹配。
d.聚類分析將步驟c中所得的所有剛體變換進行聚類分析,取最大聚類為連桿曲線的最佳匹配,以此推出最佳剛體變換、匹配度以及匹配誤差,并顯示匹配效果。
本發(fā)明所述的連桿曲線是以離散點序列表示的,每個離散點稱之為折點。進一步,在步驟a中,所述的標準化是指將連桿曲線按弧長歸一化,即把待比較的連桿曲線的總弧長都按比例放大或縮小到同一個值L(無量綱),同時各折點的坐標相應變化形成新的序列。然后,將此序列按弧長等分成N份,每段長度為L/N,形成新的、排除速度信息的僅反映連桿曲線形狀的標準化序列。
在步驟b中,所述的子段是指,經(jīng)過步驟a后,同一連桿曲線上由2k+1個連續(xù)折點所形成的子曲線;子段對是指,經(jīng)過步驟a后,同一連桿曲線的兩個子段。子段對間的距離是指兩個子段中間兩個折點的歐式距離,即第k個折點間的距離。子段對的絞擰數(shù)可由下式得出Wr=14πΣiΣjsgijgSij]]>式中Wr為絞擰數(shù);sgij=sign[(Ai+1-Ai)×(Aj+1-Aj)g(Ai-Aj)],其中Ai、Aj為子段上的折點。
Sij為AiAi+1,AjAj+1所形成的球面四邊形的面積,其意義可參見《繩圈的數(shù)學》(姜伯駒著,湖南教育出版社,1991)。
步驟b中所述的將所有子段對劃分為若干個等價類,具體包括以下步驟b1.計算待比較兩條連桿曲線上所有子段對的絞擰數(shù)和子段對間的距離;b2.找到絞擰數(shù)中的最大和最小值,并等分為N個區(qū)間,按各子段對絞擰數(shù)的大小將各子段對放入不同區(qū)間所對應的N個子段對集合;b3.清除不包含任何子段對的空集合;b4.在每個非空的子段對集合中,找到子段對距離的最大與最小值,并等分為N個區(qū)間,按各子段對距離的大小將各子段對放入不同區(qū)間所對應的N個子段對集合,并清除空集合,這樣形成的集合小于等于N×N個。
至此,將子段對以絞擰數(shù)和距離分別近似相等為等價關系,劃分為個數(shù)小于等于N×N的等價類。
在步驟c中,所述的剛體變換是指旋轉和平移,采用單位四元數(shù)法實現(xiàn),可參見文獻(Berthold K.P.Horn.Closed-form solution of absoluteorientation using unit quaternions.Journal of the Optical Society ofAmerica A,Vol.4,page 629,April 1987),所述最佳匹配是指匹配誤差RMSD(Root Mean-Square Deviation,均方差)最小,RMSD在上述文獻中有定義。每個子段對有2(2k+1)個點。匹配誤差在上述文獻中有定義。
在步驟d中,剛體變換矩陣包括旋轉矩陣3個獨立變量和平移向量3個獨立變量,由于6個變量的數(shù)量級可能相差較大,故先以旋轉分量為對象對剛體變換采用k-means(k-均值聚類法)方法聚類分析,在此基礎之上,再對每個聚類以平移分量為對象對剛體變換采用k-means方法進行聚類分析;所述的最大聚類是指在聚類中剛體變換所對應的相異折點個數(shù)M最多的聚類;曲線的匹配度為Sim=MN×100%;]]>匹配誤差表達式為RMSD=Σi=1M||ai-bi||2/N,]]>其中,ai′表示第一條曲線的匹配折點通過剛體變換進行映射的坐標。bi表示與折點ai′所對應的第二條曲線上的匹配折點坐標,N的含義如前所述,即為連桿曲線標準化后折點的總個數(shù)。
本發(fā)明的益處在于,利用紐結理論中可以反映曲線空間狀態(tài)的絞擰數(shù),對曲線的子段進行劃分,從而減小了搜索空間,有效地解決了空間連桿曲線的匹配問題,其時間和空間復雜度可控制在O(n2)。本發(fā)明可以使機構優(yōu)化設計中,現(xiàn)有的連桿曲線圖譜的查找由兩維平面擴大到三維空間,從而在空間機構設計時,需要滿足特定運動軌跡時,可通過查找連桿曲線數(shù)據(jù)庫尋找匹配度最高的曲線,以完成機構參數(shù)的設計,這可以大大加快空間機構的設計速度,減輕工作量。另外,本發(fā)明亦可應用于計算機視覺中物體輪廓線的識別,分子生物學中蛋白質空間結構相似性的比較,甚至任意三維空間曲線的匹配問題。
圖1為本發(fā)明方法總流程圖。
圖2為連桿曲線a與連桿曲線b變換之前的空間狀態(tài)示意圖。
圖3為連桿曲線a與連桿曲線b變換之后的空間狀態(tài)示意圖。
圖4為連桿曲線a與連桿曲線c變換之前的空間狀態(tài)示意圖。
圖5為連桿曲線a與連桿曲線c變換之后的空間狀態(tài)示意圖。
具體實施例方式
下面結合附圖對本發(fā)明的實施例作詳細說明本實施例在以本發(fā)明技術方案為前提下進行實施,給出了詳細的實施方式和過程,但本發(fā)明的保護范圍不限于下述的實施例。
如圖1所示,本實施例的實施方式為1)連桿曲線是由一組坐標點序列近似表示的,最原始的坐標點序列(記為SCO[n])是通過ADAMS仿真軟件得到。即首先將連桿曲線按弧長歸一化,即把所有待比較的連桿曲線的弧長都按比例放大或縮小到同一個長度L(無量綱),SCO[n]中各點的坐標也作相應變化。然后,將SCO[n]序列按弧長等分成N份,每段長度為L/N,形成新的序列SC[N],此處取n=500,N=180。通過C#語言編程實現(xiàn)。
2)任意一條連桿曲線可以用點序列{p1,p2,...,pN}來代替,對其中的任意一個長為2k+1的子段{pi-k,...,pi,...,pi+k}記為pik,在計算機中以pi點表示整個子段,而inpik表示與pik順序相反的序列{pi+k,...,pi,...,pi-k}。連桿曲線C1上任意一子段對{aik,ajk}(i≤j),aik與ajk之間的距離為ai和aj的距離;同理,對連桿曲線C2上任意一子段對{bsk,btk}(s≤t)。找出絞擰數(shù)的最大值Wrmax和Wrmin,則每個區(qū)間大小為(Wrmax-Wrmin)/N,將各個子段對{aik,ajk}、{bsk,btk}存入?yún)^(qū)間所對應的ArrayList類型存儲空間AL0中,N個元素;在每個非空存儲空間中,再根據(jù)子段間距離將其中的子段對存入新的ArrayList類型存儲空間AL中,N×N個元素;清除空的項目。在AL中,曲線C1和C2上的子段對分別存儲,以便于下一步驟求得子段對間的剛體變換。即,AL下包含若干個等價類元素,每個等價類元素包含兩個元素a和b,a、b中包含的若干個子段對分別來自曲線C1和C2。
3)在AL的每一個等價類中,取元素a中的每一個子段對{pik,pjk},采用單位四元數(shù)法,在b中選擇所有子段對和各子段對的反序序列依次進行匹配,即求得剛體變換和匹配誤差,選取匹配誤差最小的子段對為{pik,pjk}的匹配對象{qik,qjk}。運用此方法,所有等價類中的所有子段對都找到匹配對象。以旋轉分量、平移分量及對應的匹配子段對{pik,pjk}和{qik,qjk}為單位元素,存入ArrayList類型存儲空間ALp中。
4)首先以旋轉分量為聚類對象,將ALp中的元素進行聚類分析,選取k-means聚類方法,k取3;在每個已有的聚類中,以平移分量為聚類對象,進行k-means聚類分析,k取2。
5)在每個聚類中,求得所有子段對的不同匹配折點的個數(shù)及C1和C2曲線上折點間的對應關系,取匹配個數(shù)最多的聚類為所需聚類,此聚類的折點個數(shù)M、折點對應關系及此聚類中心點即為所求。相似度為Sim=MN×100%,]]>匹配誤差為RMSD=Σi=1M||ai-bi||2/N,]]>其中字母的意義如前所述。
6)在Maple軟件中讀入曲線坐標及步驟5)所得的剛體變換,分別繪圖顯示變換前與變換后的曲線圖形。
通過附圖對本實施例兩組空間連桿曲線的匹配結果,挑選了空間7R機構產(chǎn)生的三條空間連桿曲線進行匹配,曲線a、b、c,其中a與b比較一次,a與c比較一次,由圖2和圖4可以看出a與b的相似度顯然大于a與c的相似度,而用本實施例所得的結果同樣可以說明這一點,圖3和圖5分別為曲線a與b,a與c經(jīng)過本實施例所得的剛體變換映射后的效果,a與b的相似度為96.1%,誤差為0.79,a與c的相似度為42.8%,誤差為2.97。這也從一定程度上驗證了本發(fā)明正確性和實用性。本實施例不僅可應用于空間連桿曲線相似性判定問題,還可推廣到空間任意曲線的匹配領域。
權利要求
1.一種三維空間連桿曲線匹配度的檢測方法,其特征在于,包含以下步驟a.數(shù)據(jù)標準化將待比較的連桿曲線數(shù)據(jù)進行標準化;b.劃分等價類對經(jīng)過步驟a處理后形成的標準化曲線,以子段對的絞擰數(shù)和距離為指標,將所有子段對劃分為若干個等價類;c.子段對間剛體變換在每個等價類中,求得屬于不同曲線的子段對之間的剛體變換,以尋找最佳匹配子段對,從而完成曲線的局部匹配;d.聚類分析將步驟c中所得的所有剛體變換進行聚類分析,取最大聚類為連桿曲線的最佳匹配,以此推出最佳剛體變換、匹配度以及匹配誤差,并顯示匹配效果。
2.根據(jù)權利要求1所述的三維空間連桿曲線匹配度的檢測方法,其特征是,所述的連桿曲線是以離散點序列表示的。
3.根據(jù)權利要求1所述的三維空間連桿曲線匹配度的檢測方法,其特征是,步驟a中,所述的標準化是指將連桿曲線按弧長歸一化,即把待比較的連桿曲線的總弧長都按比例放大或縮小到同一個值L,L為無量綱,同時各折點的坐標相應變化形成新的序列,然后,將此序列按弧長等分成N份,每段長度為L/N,形成新的、排除速度信息的僅反映連桿曲線形狀的標準化序列。
4.根據(jù)權利要求1所述的三維空間連桿曲線匹配度的檢測方法,其特征是,步驟b中,所述子段,是指經(jīng)過步驟a后,同一連桿曲線上由2k+1個連續(xù)折點所形成的子曲線;所述子段對是指經(jīng)過步驟a后,同一連桿曲線的兩個子段;子段對間的距離是指兩個子段中間兩個折點的歐式距離,即第k個折點間的距離。
5.根據(jù)權利要求1所述的三維空間連桿曲線匹配度的檢測方法,其特征是,步驟b中,所述子段對的絞擰數(shù)由下式得到Wr=14πΣiΣjsgijgSij]]>式中Wr為絞擰數(shù);sgij=sign[(Ai+1-Ai)×(Aj+1-Aj)g(Ai-Aj)],其中Ai、Aj為子段上的折點;Sij為AiAi+1,AjAj+1所形成的球面四邊形的面積。
6.根據(jù)權利要求1所述的三維空間連桿曲線匹配度的檢測方法,其特征是,步驟b中,所述的將所有子段對劃分為若干個等價類,包括以下步驟b1.計算待比較兩條連桿曲線上所有子段對的絞擰數(shù)和子段對間的距離;b2.找到絞擰數(shù)中的最大和最小值,并等分為N個區(qū)間,按各子段對絞擰數(shù)的大小將各子段對放入不同區(qū)間所對應的N個子段對集合;b3.清除不包含任何子段對的空集合;b4.在每個非空的子段對集合中,找到子段對距離的最大與最小值,并等分為N個區(qū)間,按各子段對距離的大小將各子段對放入不同區(qū)間所對應的N個子段對集合,并清除空集合,這樣形成的集合小于等于N×N個;至此,將子段對以絞擰數(shù)和距離分別近似相等為等價關系,劃分為個數(shù)小于等于N×N的等價類。
7.根據(jù)權利要求1所述的三維空間連桿曲線匹配度的檢測方法,其特征是,步驟c中,所述的剛體變換是指旋轉和平移,采用單位四元數(shù)法實現(xiàn)。
8.根據(jù)權利要求1所述的三維空間連桿曲線匹配度的檢測方法,其特征是,步驟d中,所述的剛體變換,其矩陣包括旋轉矩陣3個獨立變量和平移向量3個獨立變量,先以旋轉分量為對象對剛體變換采用k-均值聚類法做聚類分析,在此基礎之上,再對每個聚類以平移分量為對象對剛體變換采用k-means方法做聚類分析;
9.根據(jù)權利要求1所述的三維空間連桿曲線匹配度的檢測方法,其特征是,步驟d中,所述最大聚類,是指在聚類中剛體變換所對應的相異折點個數(shù)M最多的聚類;所述匹配度為Sim=MN×100%,]]>N為連桿曲線標準化后折點的總個數(shù)。
10.根據(jù)權利要求1所述的三維空間連桿曲線匹配度的檢測方法,其特征是,步驟d中,所述匹配誤差,其表達式為RMSD=Σi=1M||ai′-bi||2/N,]]>其中,ai′表示第一條曲線的匹配折點通過剛體變換進行映射的坐標,bi表示與折點ai′所對應的第二條曲線上的匹配折點坐標,N為連桿曲線標準化后折點的總個數(shù),M為匹配折點的個數(shù)。
全文摘要
一種三維空間連桿曲線匹配度的檢測方法,包含以下步驟將待比較的連桿曲線數(shù)據(jù)進行標準化;針對此標準化曲線,以子段對的絞擰數(shù)和距離為指標,將所有子段對劃分為若干個等價類;在每個等價類中求得屬于不同曲線的子段對之間的剛體變換,以尋找最佳匹配子段對,從而完成曲線的局部匹配;將所得的所有剛體變換進行聚類分析,取最大聚類為連桿曲線的最佳匹配,以此推出最佳剛體變換、匹配度以及匹配誤差,并顯示匹配效果。本發(fā)明有效地解決了三維空間連桿曲線匹配問題。
文檔編號G01B21/02GK101059335SQ20071004046
公開日2007年10月24日 申請日期2007年5月10日 優(yōu)先權日2007年5月10日
發(fā)明者馮海濤, 杭魯濱, 崔俊文 申請人:上海交通大學