版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、Good is good, but better carries it.精益求精,善益求善。ZD-研究-數(shù)學(xué)形態(tài)學(xué)和模式識別在建筑物多邊形化簡中的應(yīng)用-Vxx模板DocumentLendingRecordNameofDocument:SignatureofBorrower:Dateoflending:InstructionsofPrincipalofDocument:Date:DateofRepayment:SignatureofDocumentcontroller:基于數(shù)學(xué)形態(tài)學(xué)和模式識別的建筑物多邊形化簡算法研究文檔COMMENTS*MERGEFORMATVersion1.0文檔名稱:FI
2、LENAME*MERGEFORMATZD-研究文檔-Title-Vx.x.doc修訂歷史記錄日期版本號修改說明修改人核準(zhǔn)人2005/11/161.0首次撰寫目錄TOCo1-3hzHYPERLINKl_Toc1192246801引言PAGEREF_Toc119224680h4HYPERLINKl_Toc1192246811.1目的與范圍PAGEREF_Toc119224681h4HYPERLINKl_Toc1192246821.2預(yù)期的讀者PAGEREF_Toc119224682h4HYPERLINKl_Toc1192246831.3方法學(xué)PAGEREF_Toc119224683h4HYPERL
3、INKl_Toc1192246841.4定義、縮寫詞PAGEREF_Toc119224684h4HYPERLINKl_Toc1192246851.5參考資料PAGEREF_Toc119224685h4HYPERLINKl_Toc1192246862研究內(nèi)容PAGEREF_Toc119224686h4HYPERLINKl_Toc1192246872.1子研究內(nèi)容分解PAGEREF_Toc119224687h4HYPERLINKl_Toc1192246883附錄PAGEREF_Toc119224688h4TITLE*MERGEFORMAT研究文檔1引言1.1目的與范圍本文檔介紹了在數(shù)學(xué)形態(tài)學(xué)和神經(jīng)
4、網(wǎng)絡(luò)支持下的模式識別的化簡方法來實施多邊形的自動綜合。本文檔作為該算法實現(xiàn)的理論依據(jù)和設(shè)計基礎(chǔ)。文檔中包含該算法及其主要子函數(shù)的流程圖以及偽代碼。1.2預(yù)期的讀者本文檔預(yù)期的讀者是本項目的設(shè)計人員、開發(fā)人員、測試人員、項目經(jīng)理。1.3方法學(xué)本設(shè)計所使用的主要方法是數(shù)學(xué)形態(tài)學(xué)的擊中變換,基于混合遺傳BP神經(jīng)網(wǎng)絡(luò)的模式識別。1.4定義、縮寫詞數(shù)學(xué)形態(tài)學(xué):以形態(tài)為基礎(chǔ)對圖像進(jìn)行分析的數(shù)學(xué)工具。其基本思想是用具有一定形態(tài)的結(jié)構(gòu)元素去度量和提取圖像中的對應(yīng)形狀以達(dá)到對圖像分析和識別的目的,是非線性變換。擊中運算:一種數(shù)學(xué)形態(tài)學(xué)算子,用來尋找局部模式(局部指結(jié)構(gòu)單元尺寸)。它是一種模版匹配的變形,可對物體
5、進(jìn)行粗化或細(xì)化。結(jié)構(gòu)元素T對圖像X的擊中變換為:BP(反向傳播學(xué)習(xí))神經(jīng)網(wǎng)絡(luò)算法的基本思想:ANN(人工神經(jīng)網(wǎng)絡(luò))是對人類大腦的一種物理結(jié)構(gòu)上的模擬,即以計算機仿真的方法,從物理結(jié)構(gòu)上模擬人腦,以使系統(tǒng)具有人腦的某些智能。在眾多的ANN模型中,多層前饋神經(jīng)網(wǎng)絡(luò)模型是目前應(yīng)用最為廣泛的模型,反向傳播學(xué)習(xí)算法(簡稱BP算法)的基本思想為:根據(jù)網(wǎng)絡(luò)實際輸出與期望輸出的誤差,從輸出層開始,反過來調(diào)整網(wǎng)絡(luò)的權(quán)值,最終使得輸出的均方誤差最小。遺傳算法(GA):遺傳算法以生物進(jìn)化過程為背景,模擬生物進(jìn)化的步驟,將繁殖、雜交、變異、競爭和選擇等概念引入到算法中,通過維持一組可行解,并通過對可行解的重新組合,改
6、進(jìn)可行解在多維空間內(nèi)的移動軌跡或趨向,最終走向最優(yōu)解。它克服了傳統(tǒng)優(yōu)化方法容易陷入局部極值的缺點,是一種全局優(yōu)化算法。遺傳算法的多層BP神經(jīng)網(wǎng)絡(luò)(GA-BP算法)基于遺傳算法的人工神經(jīng)網(wǎng)絡(luò)的應(yīng)用的基本原理是用遺傳算法(GA)對神經(jīng)網(wǎng)絡(luò)的連接權(quán)值進(jìn)行優(yōu)化學(xué)習(xí),利用GA的尋優(yōu)能力來獲取最佳權(quán)值。1.5參考資料王輝連武芳.數(shù)學(xué)形態(tài)學(xué)和模式識別在建筑物多邊形化簡中的應(yīng)用.測繪學(xué)報.2005(3).269276黃文騫.地圖模式識別原理與方法M.北京:測繪出版社,2000胡師彥.混合遺傳BP算法在圖像識別中的應(yīng)用.石家莊鐵道學(xué)院學(xué)報,2002.15(3)孫即祥.現(xiàn)代模式識別.長沙.國防科技大學(xué)出版設(shè),20
7、02張遷劉政凱.基于數(shù)學(xué)形態(tài)學(xué)的地圖自動配準(zhǔn)方法.小型微型計算機系統(tǒng).2003.24(7)2研究內(nèi)容2.1算法描述2.1.1與地圖比例尺相關(guān)的柵格數(shù)據(jù)與矢量數(shù)據(jù)結(jié)合的數(shù)據(jù)模型街區(qū)邊線的矢量數(shù)據(jù)柵格化過程:使用經(jīng)典的Bresenham算法進(jìn)行街區(qū)邊線的柵格化;用種子填充算法得到建筑物多邊形的柵格數(shù)據(jù)。注:柵格單元尺寸定為地圖上的0.1mm柵格數(shù)據(jù)模型如下所示:typedefstructtagResidentGridDatadoubleX,Y;/圖像的左下角坐標(biāo)doublem_dGridWidth;/柵格寬度intm_iResidentGridRow;/圖像高intm_iResidentGridC
8、olumn;/圖像寬BYTE*m_pResidentGridData;/柵格數(shù)據(jù)GMS_ResidentGridData;/柵格數(shù)據(jù)結(jié)構(gòu)用改進(jìn)的Freeman鏈碼來表示街區(qū)的輪廓,其數(shù)據(jù)模型為:typedefstructtagCodeCellintm_iDirection;/追蹤方向intm_iLength;/追蹤長度(像素數(shù))intm_iPatternFlag;/模式識別標(biāo)志GMS_CodeCell;/Freeman鏈碼單元typedefstructtagFreeman_ChainCodeBOOLm_bFinishedSimplication;/化簡標(biāo)識CPointm_StartPoint;
9、/起點坐標(biāo)CArraym_ChainCodeArray;/鏈碼數(shù)據(jù)GMS_Freeman_ChainCode;/Freeman鏈碼2.1.2對建筑物多邊形進(jìn)行矩形化變換矩形化變換:在給定的化簡尺度上,對建筑物多邊形進(jìn)行最大程度的化簡,即直接變?yōu)榫匦?。街區(qū)的復(fù)雜度決定了建筑物多邊形能否被矩形化。街區(qū)的復(fù)雜度可以用最小表達(dá)尺度和最小外接矩形來評價。所謂最小表達(dá)尺度即圖上0.3mm。找出建筑物多邊形最小外接矩形,在其面積與建筑物多邊形面積之差小于建筑物多邊形面積的30%(實驗值)的條件下,如果最小外接矩形的寬接近最小表達(dá)尺度,或者建筑物多邊形的多條長邊在最小外接矩形的邊上,則街區(qū)可直接化簡成矩形。所
10、謂“最小外接矩形”,與平時提到的外接矩形不同(如圖),最小外接矩形是指建筑物多邊形的外接矩形中面積最小的矩形,在適當(dāng)調(diào)整其中心位置和面積大小后可以作為建筑物多邊形矩形化的化簡結(jié)果。為了最好地表達(dá)建筑物多邊形的位置、方向、形態(tài)和面積特征,建筑物多邊形矩形化時不能只是簡單地用最小外接矩形替代表示,還要對最小外接矩形的位置和面積作適當(dāng)調(diào)整(如圖)。2.1.3對建筑物多邊形進(jìn)行直角化調(diào)整進(jìn)行直角化調(diào)整(實質(zhì)是一種數(shù)據(jù)糾正)既可突出建筑物多邊形的直角化特征,也利于后面的數(shù)學(xué)形態(tài)學(xué)化簡和模式識別化簡。計算建筑物多邊形各邊與X軸正方向的夾角,在可將各邊在一定偏差范圍內(nèi)歸為兩個垂直方向的條件下,只需使各邊調(diào)整
11、后的方向等于最小外接矩形的長軸方向或者90,即達(dá)到了直角化的目的;而對于有幾個分布軸向的多邊形,其直角化相對復(fù)雜,需要對與每個軸向相關(guān)的邊的方向分別調(diào)整。直角化需注意頂點坐標(biāo)的精度控制,為了不改變多邊形的主要形態(tài)和方向特征,需要有一個合理的評價尺度。以頂點的平移距不超過某一閾值作為標(biāo)準(zhǔn),而不用旋轉(zhuǎn)角度來評價,可以保證長、短邊的精度控制的一致性(如圖)。直角化操作的原則是盡可能保持長邊的方向和短邊的長度不變。調(diào)整邊的方向時,采用了讓邊繞其中點旋轉(zhuǎn)一個角度的辦法,這樣可保證多邊形的面積不變。2.1.4利用數(shù)學(xué)形態(tài)學(xué)方法對建筑物多邊形進(jìn)行初步化簡數(shù)學(xué)形態(tài)學(xué)是一門建立在嚴(yán)格數(shù)學(xué)理論基礎(chǔ)之上的學(xué)科,是一
12、種用于數(shù)字圖像處理和識別的理論與方法。數(shù)學(xué)形態(tài)學(xué)的運算有容易控制、運算速度快的優(yōu)點。由于柵格數(shù)據(jù)是與比例尺相關(guān)的,因此柵格單元的大小直接與最小表達(dá)尺度掛鉤。設(shè)計合適的擊中模板,可以通過擊中運算來識別建筑物多邊形輪廓的相關(guān)結(jié)構(gòu)。受模板結(jié)構(gòu)的限制,數(shù)學(xué)形態(tài)學(xué)不能很好處理復(fù)雜的多邊形輪廓化簡,因而只將兩種最常見的建筑物多邊形輪廓上需要化簡的簡單結(jié)構(gòu)用數(shù)學(xué)形態(tài)學(xué)進(jìn)行處理,即輪廓上單個寬度小于最小表達(dá)尺度的凸起和凹陷部分。對于建筑物多邊形輪廓上的小的彎曲,如圖6所示,化簡需要在舍去、保留和夸大表示之間做出合理的選擇:如果彎曲的高度(或深度)和寬度都小于最小表達(dá)尺度,則該彎曲可以舍去(如圖中彎曲A);如果
13、彎曲的高度(或深度)和寬度之中一項大于最小表達(dá)尺度,另一項小于最小表達(dá)尺度,則該彎曲需要夸大表示,將小于最小表達(dá)尺度的一項夸大到等于最小表達(dá)尺度(如圖中彎曲B);如果彎曲的高度(或深度)和寬度都大于最小表達(dá)尺度,則該彎曲應(yīng)保留。注:通過上面的直角化調(diào)整,建筑物多邊形的直角化特征明顯,其各邊可分為互相垂直的兩組。而柵格單元同樣是在垂直和水平方向上分布的,這就便于了模板選擇。利用數(shù)學(xué)形態(tài)學(xué)進(jìn)行建筑物多邊形化簡的步驟如下:1.建筑物多邊形經(jīng)過前面的矩形化和直角化操作后,如果建筑物多邊形的最小外接矩形的方向不是沿著水平和垂直方向,則先進(jìn)行坐標(biāo)旋轉(zhuǎn)變換使得建筑物多邊形各邊都盡可能沿水平或垂直方向,然后柵
14、格化,并用輪廓追蹤的方法獲取多邊形輪廓的Freeman鏈碼。2.利用如圖所示的55結(jié)構(gòu)模板對柵格數(shù)據(jù)進(jìn)行擊中運算:模板一及其旋轉(zhuǎn)90、180和270的四種情形,可用來對輪廓上需要化簡的窄的凸起結(jié)構(gòu)的識別;模板二及其旋轉(zhuǎn)90、180和270的四種情形,可用來對輪廓上需要化簡的窄的凹陷結(jié)構(gòu)的識別。圖:模板一(突起)模板二(凹陷)3.對找到的凸起或凹陷部分對應(yīng)的Freeman鏈碼作進(jìn)一步分析,確定其為單個凸起或凹陷結(jié)構(gòu),并根據(jù)結(jié)構(gòu)的高度(或深度)對其采取舍去、保留或夸大的操作。對應(yīng)的操作都針對柵格鏈碼數(shù)據(jù),只需調(diào)整鏈碼單元的追蹤長度,數(shù)據(jù)處理相對矢量運算來說簡單高效。4.對化簡后的柵格鏈碼數(shù)據(jù)進(jìn)行分
15、析,如不存在需要化簡的短邊則進(jìn)行矢量化,并進(jìn)行坐標(biāo)反向旋轉(zhuǎn)變換得到原坐標(biāo)系下的坐標(biāo);如還存在需要化簡的短邊則留待后面使用模式識別方法化簡。在如圖7的建筑物多邊形化簡中,能識別出A、B、C、D、E并分別進(jìn)行處理;但F部分則無法識別與處理,這種情形及更復(fù)雜的凸起和凹陷部分相鄰連續(xù)的情形需要隨后用模式識別的方法進(jìn)行處理。2.1.5神經(jīng)網(wǎng)絡(luò)支持下的建筑物多邊形模式識別化簡由于輪廓的Freeman鏈碼可看作是一種首尾相連的矢量序列,這有利于將建筑物多邊形輪廓在染色體文法基礎(chǔ)上表示成基元串或子模式串,然后通過句法翻譯進(jìn)行識別分類,針對不同模式選擇合適的方法進(jìn)行化簡。由于柵格化時通過坐標(biāo)旋轉(zhuǎn)使輪廓像素沿水平
16、或垂直方向分布,且輪廓跟蹤時采用順時針方向并選擇輪廓左下角為起點,這樣就能用圖10中的8種結(jié)構(gòu)基元去描述街區(qū)輪廓的結(jié)構(gòu)。下圖中的階梯狀輪廓可用串a(chǎn)bcbcbcd來描述,波浪形輪廓可用串a(chǎn)bcbabcd來描述。階梯狀輪廓波浪形輪廓如何從描述輪廓的基元串中識別出不同模式則是實現(xiàn)模式識別的核心步驟。這一方面需要定義一個完整的文法,已知染色體文法G(N,P,S)中的終結(jié)符集為a,a,b,b,c,c,d,d,還需要確定非終結(jié)符集N和產(chǎn)生式集P;另一方面還需要從描述輪廓的基元串中找出有意義的表示相應(yīng)模式的句子,如上圖中的波浪形輪廓的基元串a(chǎn)bcbabcd中的子串bcbab就是一個表示波浪形的單個淺凹進(jìn)結(jié)構(gòu)
17、的句子。由于街區(qū)輪廓的形態(tài)多樣,這樣各種子模式的組合方式也就很多,這給非終結(jié)符集N(一定意義上可認(rèn)為是子模式集)和產(chǎn)生式集P(語法規(guī)則集)的確定帶來了一定困難。實際上模式識別也不可能(或不要求)處理所有情形的輪廓化簡,而窮舉典型模式及構(gòu)造對應(yīng)文法是可能的,以長邊(即基元a,b,c,d)作為句子的分界點,也不難從描述輪廓的基元串中找出含短邊(即基元a,b,c,d)的句子。對句法模式進(jìn)行識別,一般都通過句法分析采用自上而下法或自下而上法來判斷一個句子(即模式)是否在語言L(Gi)中是合法的,從而把這個模式惟一地分配到第i類。模式識別分類問題實際上是一個模式特征空間的劃分問題或映射問題,而神經(jīng)網(wǎng)絡(luò)尤
18、其是多層神經(jīng)網(wǎng)絡(luò)的工作原理是建立在模式變換的基礎(chǔ)上的,因此將神經(jīng)網(wǎng)絡(luò)用于模式識別是十分自然而有效的,而且基于神經(jīng)網(wǎng)絡(luò)的模式識別還表現(xiàn)出很好的自適應(yīng)、自學(xué)習(xí)、自組織及容錯等能力。3層BP神經(jīng)網(wǎng)絡(luò)即可實現(xiàn)多維空間的任意分割,為了提高BP神經(jīng)網(wǎng)絡(luò)的全局優(yōu)化特性和加快網(wǎng)絡(luò)學(xué)習(xí)收斂速度,本文采用3層混和GABP神經(jīng)網(wǎng)絡(luò)來進(jìn)行模式識別,神經(jīng)網(wǎng)絡(luò)起句法翻譯的作用。用神經(jīng)網(wǎng)絡(luò)來進(jìn)行句法模式識別的基本步驟如下:1.枚舉可能的典型模式并構(gòu)造文法;2.用自上而下的句法分析得到各典型模式的合法句子,將其適當(dāng)轉(zhuǎn)換作為神經(jīng)網(wǎng)絡(luò)的輸入對神經(jīng)網(wǎng)絡(luò)進(jìn)行有監(jiān)督的學(xué)習(xí),收斂后將神經(jīng)網(wǎng)絡(luò)的權(quán)值矩陣及對應(yīng)模式存入模式庫。模式庫按句子長
19、度(即基元個數(shù))分類存儲;3.將建筑物多邊形輪廓的Freeman鏈碼轉(zhuǎn)換為基元串;4.從基元串中找出合法句子,按句子長度從對應(yīng)模式庫中讀入神經(jīng)網(wǎng)絡(luò)的權(quán)值矩陣,構(gòu)造神經(jīng)網(wǎng)絡(luò)并將句子作為輸入,直到神經(jīng)網(wǎng)絡(luò)得到合法模式的輸出,即完成了模式識別。完成模式識別后,針對不同模式采取合理的化簡方案即可實現(xiàn)建筑物多邊形的化簡。2.1.6對化簡后的建筑物多邊形的不合理部分進(jìn)行整形在某些情形下,建筑物多邊形經(jīng)過化簡后即使已不存在小于最小表達(dá)尺度的短邊,但仍可能有與制圖規(guī)范相沖突的情況。如圖中的兩種過于狹窄部分的存在是不允許的,但在上述化簡操作中無法識別這種情形進(jìn)行處理。因此還要對化簡后的多邊形的不合理部分進(jìn)行整形
20、。2.1.7對一些復(fù)雜建筑物多邊形的化簡處理對一些復(fù)雜建筑物多邊形,可在矢量數(shù)據(jù)下用類似模式識別的方法去分析并遵循化簡原則進(jìn)行合理化簡。2.1.8算法總結(jié)下圖即為在自動綜合軟件中用此算法實現(xiàn)的居民地自動綜合的效果:結(jié)合試驗對該算法的一些總結(jié):1.通過實驗反映作者所采用的建筑物多邊形化簡步驟是比較合理的,采用這樣的化簡步驟大大提高了化簡效率(1000多個多邊形的化簡耗時十幾秒,與計算機配置關(guān)系不大)。約35%的多邊形矩形化時直接化簡為矩形。20%的多邊形通過數(shù)學(xué)形態(tài)學(xué)方法可完成化簡。神經(jīng)網(wǎng)絡(luò)輔助下的模式識別相對于基于句法分析方法的模式識別,有易于程序?qū)崿F(xiàn)、識別容錯能力較好的優(yōu)點。2.本文的方法能
21、較好保持多邊形的輪廓特征和面積,考慮了化簡尺度,化簡結(jié)果基本符合制圖規(guī)范。與現(xiàn)有方法比較體現(xiàn)出一定優(yōu)勢。3.本文算法中有矢柵數(shù)據(jù)轉(zhuǎn)換,采用多步驟、多方法,算法的一致性、健壯性不如文獻(xiàn)4(郭慶勝.以直角方式轉(zhuǎn)折的面狀要素圖形化簡方法J.武漢測繪科技大學(xué)學(xué)報,1999,24(3)中的方法,在某些情形下,會有不合理的化簡結(jié)果,但85%以上的化簡結(jié)果是較理想的。4.盡管本文的方法有一定實用性,但還存在以下不足:首先本方法只適合于大比例尺下直角化特征明顯的建筑物多邊形的化簡,對復(fù)雜建筑物多邊形的化簡還不盡如意;其次構(gòu)造有一定容錯性、并能導(dǎo)出完整模式集的文法困難,這導(dǎo)致少數(shù)模式無法正確識別,化簡結(jié)果不確定
22、。2.2算法流程圖及偽代碼1開始2將建筑物多邊形數(shù)據(jù)讀入3設(shè)置最小表達(dá)尺度(全局),一般為地圖上的0.3mm4while此時不是最后一項記錄5判斷是否有需要化簡的短邊6對標(biāo)記為需要被化簡的每個多邊形記錄進(jìn)行矩形化判斷,對被標(biāo)記為可被矩形化的多邊形,調(diào)整其最小外接矩形,作為矩形化結(jié)果輸出7對標(biāo)記為不可被直接矩形化的多邊形,進(jìn)行直角化調(diào)整8if該多邊形的最小外接矩形的方向不是沿著水平或垂直方向,then對該多邊形進(jìn)行坐標(biāo)旋轉(zhuǎn),使其邊盡可能的沿水平或垂直方向9矢量數(shù)據(jù)柵格化10對建筑物多邊形的輪廓進(jìn)行Freeman鏈碼編碼11對柵格數(shù)據(jù)用數(shù)學(xué)形態(tài)學(xué)的方法進(jìn)行擊中算法,識別出輪廓上的凸起和凹陷部分12
23、分析凸起和凹陷部分的Freeman鏈碼,對其進(jìn)行處理if(判斷是否有需要化簡的短邊true)then用GA-BP算法進(jìn)行模式識別;elsethen14柵格數(shù)據(jù)矢量15坐標(biāo)變換,反轉(zhuǎn)到原坐標(biāo)系下Endwhile16矢量環(huán)境下對復(fù)雜多邊形的化簡17結(jié)束2.3子函數(shù)流程圖及偽代碼2.3.1是否有需要化簡的短邊1對每條記錄中的多邊形的邊遍歷,if存在邊長小于閾值(0.3mm)的邊,then該多邊形標(biāo)記為需要化簡,elsethen直接輸出該多邊形2.3.2獲得外接矩形2.3.3最小外接矩形的獲得獲取幾何對象的外接矩形,并得到其面積值賦給變量AreaMin;For(0;AreaTmp;If(AreaTmp
24、公共變量B將得到的矩形反旋轉(zhuǎn)一個B角度,得到的就是原多邊形的最小外接矩形2.3.4矩形化判斷1計算指定建筑物多邊形的面積Spoly2對指定的建筑物多邊形建立其最小外接矩形(MER),并計算其最小外接矩形的面積Smer3If(|Spoly-Smer|=最小表達(dá)尺度&Width=最小表達(dá)尺度)then保留該彎曲,不作調(diào)整If(Height最小表達(dá)尺度&Width=最小表達(dá)尺度&Width最小表達(dá)尺度)thenWidth=0.3mm(最小表達(dá)尺度),調(diào)整鏈碼if(Height=最小表達(dá)尺度)thenHeight0.3mm(最小表達(dá)尺度),調(diào)整鏈碼5輸出調(diào)整后的Freeman鏈碼2.3.11GA-BP
25、算法進(jìn)行模式識別(暫略)GA-BP算法進(jìn)行模式識別用窮舉法構(gòu)造染色體文法G=(Vn,Vt,P,S)由自頂向下的句法分析構(gòu)造各典型模式的合法句子訓(xùn)練BP神經(jīng)網(wǎng)絡(luò),將收斂后將神經(jīng)網(wǎng)絡(luò)的權(quán)值矩陣及對應(yīng)模式存入模式庫。模式庫按句子長度分類存儲將用多邊形輪廓的Freeman鏈碼表示為基元串從基元串中找出合法句子,按句子長度從對應(yīng)模式庫中讀入神經(jīng)網(wǎng)絡(luò)的權(quán)值矩陣,構(gòu)造神經(jīng)網(wǎng)絡(luò)并將句子作為輸入,直到神經(jīng)網(wǎng)絡(luò)得到合法模式的輸出,輸出值y=f(wjxj-)對識別出的模式進(jìn)行化簡處理考慮到該部分的實現(xiàn)難度,在該算法中的意義作用,在具體實現(xiàn)時暫時不處理該部分(2.3.122.3.14)2.3.12GA-BP多層神經(jīng)網(wǎng)
26、絡(luò)的訓(xùn)練(暫略)將全部權(quán)值與結(jié)點的閾值預(yù)置為一個小的隨機數(shù)While未達(dá)到預(yù)定誤差精度或循環(huán)次數(shù)將各典型模式的合法句子作為輸入,所要類別數(shù)作為輸出分別加載,采用S型函數(shù)模型(fs(x)=1/(1+e-x))計算各實際輸出值修正權(quán)值2.3.13修正權(quán)值(暫略)將權(quán)值矩陣W,閾值矩陣H的每一個元素用一個8位二進(jìn)制串編碼,將所有元素的編碼串連起來,構(gòu)成基因碼鏈解釋算子Wi=L(8位二進(jìn)制對應(yīng)十進(jìn)制值-127)/127+WiT,實現(xiàn)編碼與權(quán)重(閥值)之間的碼制轉(zhuǎn)換,Wi是第i個權(quán)重元素的值,初始選擇范圍為(WiT-L,WiT+L);WiT是第i個權(quán)重元素的中心取值點;L是權(quán)重取值區(qū)間的長度產(chǎn)生初始群體
27、。將W,H的解空間均勻等分,每個區(qū)域選取一個點作為代表,產(chǎn)生m個初始解評價各W,H的個體優(yōu)勢,對適應(yīng)度Fi的個體,賦予其選中概率F=C-E(C為一常數(shù),E為能量函數(shù))能量函數(shù)E:4交叉:首先將復(fù)制的數(shù)字串任意配對,然后分別對每對進(jìn)行交叉操作。最簡單的交叉方法是隨機地選取一個截斷點,將雙親的基因碼鏈在截斷點切開,然后交換其尾部。變異:首先根據(jù)給定的變異概率隨機選取若干個體。一般而言,給定變異概都很小,一般取00.05。然后對于選中的個體,隨機選取某一位進(jìn)行取反運算。5對父代、子代W,H的各種取值重新排列,取m個適應(yīng)度較大的個體作為下一代種群,轉(zhuǎn)步驟3直到群體適應(yīng)度趨于穩(wěn)定。6在趨于穩(wěn)定的種群中選
28、擇適應(yīng)度值最高的個體,對之應(yīng)用BP算法。7得到最優(yōu)值。當(dāng)網(wǎng)絡(luò)的訓(xùn)練誤差達(dá)到給定誤差要求時算法結(jié)束。此時的Wr,Hr為所求的最優(yōu)值。2.3.14Freeman鏈碼表示為基元串(暫略)多邊形輪廓的Freeman鏈碼=strings,F(xiàn)reeman鏈碼中同一方向上的追蹤長度(像素值)=intm_iLengthIfm_iLength=3,即追蹤長度為大于等于最小表達(dá)尺度,將追蹤方向按0-B,1-A,2-D,3-C的規(guī)律轉(zhuǎn)換Ifm_iLengthb,1-a,2-d,3-c的規(guī)律轉(zhuǎn)換輸出基元串s2.3.15柵格數(shù)據(jù)矢量化2.3.16復(fù)雜多邊形的化簡(矢量)2006.1.2在柵格數(shù)據(jù)處理時,該算法的思想是:
29、首先追蹤Freeman鏈碼,再通過ModelMatching找到所有的凸部、凹部,并對應(yīng)標(biāo)記在Freeman鏈碼上,最后修改鏈碼,得到矢量化的化簡結(jié)果。在具體實現(xiàn)時,設(shè)計的算法是:用簡單而直觀的(行號,列號)來標(biāo)記,以此來確定凸部、凹部在鏈碼上的位置,但這樣的映射方法很繁瑣,在實現(xiàn)上實際是繞了個彎為了正確的映射,還要將Freeman鏈碼的每個單元碼也轉(zhuǎn)換為該段鏈碼的(行號,列號)坐標(biāo)值這是我所能想到的方法。修改鏈碼又是另外一個問題,不同形態(tài)的凸部和凹部(比如說波浪形的和階梯形的)所要修改的段數(shù)是不同的。那么很自然的想到,既然在ModelMatching中,識別出了盡可能多的凸部和凹部,為何不在
30、識別的同時進(jìn)行修改呢?在實現(xiàn)識別時,我所采用的方法是55模板擊中,通過判斷對應(yīng)位置上的柵格單元值是否完全相同,來確定此處是否有凸凹。同樣的,通過直接更改柵格單元的值來完成對凸部和凹部的撫平和填補,應(yīng)該是一個可行而更為高效的方法。這樣一來,程序的流程應(yīng)該更改為:主程序得到的GriddataModelMatching.dll得到新的Griddata-直接傳入FreemanChainCode.dll中由Freeman鏈碼直接得到矢量數(shù)據(jù)旋轉(zhuǎn)回原坐標(biāo)下,這樣,對一個多邊形的操作就完成了。2006-1-3原來實現(xiàn)的FreemanChainCode,是由(0,0)點出發(fā),找到第一個不為0的柵格單元,將其作
31、為Freeman鏈碼的起始單元,開始跟蹤。由于昨天對程序的更改,F(xiàn)reeman鏈碼的起始單元應(yīng)為左下腳的點,也就是m_StartPoint中應(yīng)存放的坐標(biāo)值對應(yīng)的柵格單元。在柵格數(shù)據(jù)轉(zhuǎn)回矢量數(shù)據(jù)的時候,這個點就變?yōu)榱似聊簧系挠疑辖堑狞c。根據(jù)輸入的要素類圖層,在程序中應(yīng)該相應(yīng)的設(shè)置的幾個值:確定要進(jìn)行化簡的最小表達(dá)尺度m_minLimit柵格單元的大小m_GridSize確定要進(jìn)行直角化的角度下限m_RightModify_LMT程序結(jié)果的一些數(shù)據(jù):要素類中居民地總數(shù):判斷要進(jìn)行化簡的總數(shù):矩形化中完成化簡數(shù):數(shù)學(xué)形態(tài)學(xué)完成化簡數(shù):GenerationProcess.dll:處理整個地圖綜合流程,
32、調(diào)用各個動態(tài)庫中的函數(shù)classGENERATIONPROCESS_EXPORT_CLASSCNewGenerFClspublic:/創(chuàng)建新的要素類,存放綜合后的數(shù)據(jù)BOOLCreateNewFCls(CFeatureCls*m_ptFCls,CFeatureCls*pResultFCls);/處理整個要素類,地圖綜合流程voidGenerationProcess(CFeatureCls*ptFCls);/判斷要素是否需要被綜合BOOLGenerationDecided(CFeatureCls*ptFCls,TYPE_FIDfeaID);/向綜合后的要素類中添加新的要素TYPE_FIDAppe
33、ndNewFeature(CFeatureCls*pResultFCls,D_DOT*ptXY,longDotnum);private:longm_minLimit;/最小表達(dá)尺度,根據(jù)比例尺自動設(shè)定;RegModifyInVector.dll:在矢量數(shù)據(jù)下進(jìn)行的多邊形化簡操作classREGMODIFYINVECTOR_EXPORT_CLASSCRegModifyVectpublic:structMER/最小外接矩形結(jié)構(gòu)體doubleArea;/最小外接矩形的面積doubleXMerMax;/最小外接矩形點的坐標(biāo)doubleXMerMin;doubleYMerMax;doubleYMerMi
34、n;doubleMinEdgeLen;/最小外接矩形的最短邊m_PolyMER;/判斷要素可否被矩形化0/1可以/不可以BOOLRectDecidedAndModify(CFeatureCls*ptFCls,TYPE_FIDfeaID);/獲得要素的最小外接矩形voidGetRegMER(CFeatureCls*ptFCls,TYPE_FIDfeaID);/獲得要素的信息voidGetFeaInfo(CFeatureCls*ptFCls,TYPE_FIDfeaID);/對無法直接矩形化的多邊形,做直角化操作voidChangeRegToRightAngle(CFeatureCls*ptFCls
35、,TYPE_FIDfeaID);/對已完成直角化的多邊形,旋轉(zhuǎn)為正方向voidRotateRegRight(CFeatureCls*ptFCls,TYPE_FIDfeaID);/對完成柵格處理的多邊形,旋轉(zhuǎn)回原方向voidRotateRegOrign(D_DOT*ptXY,longDotnum);/提供綜合后的多邊形的坐標(biāo)點和點數(shù)BOOLSetRegPtXYAndDotnum(D_DOT*ptXY,long&Dotnum);private:TYPE_FIDm_FeaID;CPolyGeometrym_geoms;longm_geomNum;long*m_ptNeLen;long*m_ptNe;
36、D_DOT*m_ptXY;longm_Dotnum;D_DOT*m_ptXYNew;/化簡后得到的新的坐標(biāo)longm_DotnumNew;/化簡后得到的新的坐標(biāo)點數(shù)doublem_MerAngle;/取得最小外接矩形時,多邊形旋轉(zhuǎn)的度數(shù)D_DOTm_RotateDot;/多邊形旋轉(zhuǎn)到正方向時的旋轉(zhuǎn)中心doublem_RotateAngle;/旋轉(zhuǎn)為正時的旋轉(zhuǎn)角度;/獲得多邊形的外包矩形voidGetMaxMinXY(D_DOT*ptXY,longdotnum,double&xmax,double&xmin,double&ymax,double&ymin);/旋轉(zhuǎn)點voidRotateDotNew(double&dotX,double&dotY,doublecenterX,doublecenterY,doubledAngle);/計算兩條線段的夾角sh
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 辦公樓外墻清洗高空作業(yè)合同2025
- 網(wǎng)紅現(xiàn)象對中學(xué)生審美價值觀的雙重影響及引導(dǎo)策略研究
- 邢臺地貌特征
- 2025年政府專職消防員入職考試復(fù)習(xí)參考題庫及答案(共90題)
- 2025年醫(yī)院三基知識考試試題庫及答案(共180題)
- 移動筆試題目及最佳答案
- 2025年小學(xué)科學(xué)新考試題及答案
- 2025年體內(nèi)藥物分析題庫及答案
- 江門統(tǒng)考數(shù)學(xué)試卷及答案
- 浙江單招筆試題庫及答案
- 村衛(wèi)生室業(yè)務(wù)指導(dǎo)計劃
- 神經(jīng)遞質(zhì)乙酰膽堿的發(fā)現(xiàn)
- 醫(yī)院布草洗滌服務(wù)方案(技術(shù)方案)
- 游戲:看表情符號猜成語PPT
- 手術(shù)室醫(yī)療廢物的管理
- 普通機床主傳動系統(tǒng)的設(shè)計課程設(shè)計說明書
- 班組工程進(jìn)度款申請表
- 四年級閱讀訓(xùn)練概括文章主要內(nèi)容(完美)
- JJG 1033-2007電磁流量計
- GB/T 629-1997化學(xué)試劑氫氧化鈉
- GB/T 37234-2018文件鑒定通用規(guī)范
評論
0/150
提交評論