欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

基于fpga構(gòu)建的分層次柵格轉(zhuǎn)矢量處理方法

文檔序號:6537987閱讀:299來源:國知局
基于fpga構(gòu)建的分層次柵格轉(zhuǎn)矢量處理方法
【專利摘要】基于FPGA構(gòu)建的分層次柵格轉(zhuǎn)矢量處理方法,屬于計(jì)算機(jī)硬件和計(jì)算機(jī)程序兩個(gè)【技術(shù)領(lǐng)域】。含有數(shù)據(jù)預(yù)處理步驟;采用FPGA電路提取邊界節(jié)點(diǎn)步驟;多邊形搜索步驟;創(chuàng)建多邊形矢量步驟;創(chuàng)建矢量文件步驟。對經(jīng)過預(yù)處理的遙感影像進(jìn)行矢量化,將遙感影像上具有相同屬性內(nèi)容的像元,轉(zhuǎn)化為包含有:不同面積、不同周長、不同屬性、不同形狀來表示的矢量圖形元素,并且在轉(zhuǎn)化后的矢量圖形元素間具有完整的空間拓?fù)潢P(guān)系;在轉(zhuǎn)化后的矢量圖形元素屬性與遙感影像上所對應(yīng)的像元,在空間位置和屬性上具有完全相同的一一對應(yīng)關(guān)系。
【專利說明】基于FPGA構(gòu)建的分層次柵格轉(zhuǎn)矢量處理方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及基于FPGA構(gòu)建的分層次柵格轉(zhuǎn)矢量處理方法,屬于計(jì)算機(jī)硬件技術(shù)和計(jì)算機(jī)程序兩個(gè)【技術(shù)領(lǐng)域】。
【背景技術(shù)】
[0002]矢量數(shù)據(jù)和柵格數(shù)據(jù)是地理信息系統(tǒng)中最長見的兩種空間數(shù)據(jù)結(jié)構(gòu)。但隨著航天技術(shù)的快速發(fā)展,所能提供的各種類型、各種分辨率的遙感影像數(shù)據(jù)也越來越豐富,遙感影像信息已經(jīng)成為地理信息系統(tǒng)中的一個(gè)非常重要的信息來源,同時(shí)地理信息系統(tǒng)的發(fā)展也對對遙感信息的依賴性變得越來越強(qiáng)了。但是由于柵格數(shù)據(jù)本身所具有的缺陷,使得他在地理信息系統(tǒng)中的應(yīng)用受到了一定的限制,因此將柵格數(shù)據(jù)轉(zhuǎn)換為矢量數(shù)據(jù)也就變得非常重要了 ;同時(shí)柵格轉(zhuǎn)矢量技術(shù)也是屬于地理信息處理技術(shù)中相對比較經(jīng)典的技術(shù)問題,也產(chǎn)生和積累了比較多的計(jì)算方法,并在地理信息系統(tǒng)中得到應(yīng)用。

【發(fā)明內(nèi)容】

[0003]為了克服現(xiàn)有技術(shù)的不足,本發(fā)明提供基于FPGA構(gòu)建的分層次柵格轉(zhuǎn)矢量處理方法。
[0004]基于FPGA構(gòu)建的分層次柵格轉(zhuǎn)矢量處理方法,通過采用FPGA電路構(gòu)造分層次邊界拓?fù)渌阉髂P停糜布娐纺M算法的方式,對柵格數(shù)據(jù)進(jìn)行分層次邊界拓?fù)渌阉髂P陀?jì)算,在計(jì)算中自動(dòng)生成帶有邊界節(jié)點(diǎn)坐標(biāo)和節(jié)點(diǎn)方向的邊界節(jié)點(diǎn);達(dá)到對大數(shù)據(jù)的快速處理的目的JtFPGA電路產(chǎn)生的節(jié)點(diǎn)數(shù)據(jù),在通過軟件對節(jié)點(diǎn)數(shù)據(jù)進(jìn)行搜索,構(gòu)造出包含有多邊形之間的相鄰、包容和被包容等拓?fù)潢P(guān)系的矢量文件。
[0005]因此本發(fā)明在處理其超大數(shù)據(jù)量、拓?fù)潢P(guān)系極其復(fù)雜的遙感影像數(shù)據(jù)時(shí),更能夠顯示出該發(fā)明的轉(zhuǎn)換效率和高速性能。該技術(shù)的應(yīng)用可以提高在大面積、大范圍的各類資源調(diào)查中的效率和自動(dòng)化程度,及時(shí)準(zhǔn)確地的獲取各種資源信息,從而達(dá)到節(jié)省人力物力的目的。
[0006]基于FPGA構(gòu)建的分層次柵格轉(zhuǎn)矢量處理方法,采用FPGA電路構(gòu)造分層次邊界拓?fù)渌阉髂P蛯?shí)現(xiàn)柵格轉(zhuǎn)矢量中的邊界提取處理器設(shè)計(jì),充分利用計(jì)算機(jī)技術(shù)在網(wǎng)格計(jì)算、云計(jì)算、并行計(jì)算等方面高速發(fā)展所取得的技術(shù)成果,通過采用FPGA電路構(gòu)造的分層次邊界拓?fù)渌阉髂P停谟布娐返哪P陀?jì)算中,自動(dòng)生成帶有邊界節(jié)點(diǎn)坐標(biāo)和節(jié)點(diǎn)方向的邊界節(jié)點(diǎn),通過對這些邊界節(jié)點(diǎn)的搜索,構(gòu)造出包含有多邊形之間的相鄰、包容和被包容等拓?fù)潢P(guān)系的矢量文件。在柵格轉(zhuǎn)矢量過程中,只需要對需要轉(zhuǎn)換的圖像數(shù)據(jù)加載一次,就能夠自動(dòng)完成整個(gè)轉(zhuǎn)換過程;不需要進(jìn)行任何轉(zhuǎn)換后的后期處理工作,并且在轉(zhuǎn)換后不可能出現(xiàn)多邊形相互間重疊、相交;相鄰、包容拓?fù)潢P(guān)系錯(cuò)誤和不完整的情況。
[0007]因此本申請技術(shù)在處理數(shù)據(jù)量龐大、拓?fù)潢P(guān)系極其復(fù)雜的遙感影像數(shù)據(jù)時(shí),更加能夠顯示出本申請技術(shù)的轉(zhuǎn)換效率和高速性能。
[0008]本發(fā)明所要解決的技術(shù)問題,提供了基于FPGA構(gòu)建的分層次柵格轉(zhuǎn)矢量處理方法,對遙感影像數(shù)據(jù)進(jìn)行柵格數(shù)據(jù)矢量化,將遙感影像上具有相同屬性內(nèi)容的像元,轉(zhuǎn)化為包含有:不同面積、不同周長、不同屬性、不同形狀來表示的矢量圖形元素,并且也能夠表現(xiàn)出這些不同矢量圖形元素之間,所存在的相鄰、包容和被包容的空間拓?fù)潢P(guān)系也能夠得到完全展示。并且轉(zhuǎn)化后的矢量圖形元素屬性與遙感影像上所對應(yīng)的像元,在空間位置上具有完全相同的 對應(yīng)關(guān)系。
[0009]基于FPGA構(gòu)建的分層次柵格轉(zhuǎn)矢量處理方法,采用與傳統(tǒng)的轉(zhuǎn)換方法不同的處理方法,通過采用FPGA電路構(gòu)造的分層次邊界點(diǎn)拓?fù)渌阉髂P?,將柵格?shù)據(jù)像元間的拓?fù)潢P(guān)系簡化,在模型計(jì)算中自動(dòng)生成包含有坐標(biāo)位置信息的邊界節(jié)點(diǎn),并且這些邊界節(jié)點(diǎn)數(shù)據(jù)還具有描述邊界節(jié)點(diǎn)是從哪里開始、到哪里結(jié)束的邊界走向的指向性信息;在通過對這些邊界節(jié)點(diǎn)數(shù)據(jù)進(jìn)行多邊形搜索,通過邊界節(jié)點(diǎn)數(shù)據(jù)的指向性,可以十分明確的定位與之相連的邊界節(jié)點(diǎn)的確切位置信息,將這些具有特定關(guān)系的邊界節(jié)點(diǎn)全部連接起來,就自動(dòng)形成一個(gè)封閉多邊形,并且通過判斷封閉多邊形的走向,如果是順時(shí)針?biāo)褪且粋€(gè)獨(dú)立多邊形,他可能包含有島多邊形;如果是逆時(shí)針?biāo)鸵欢ㄊ潜荒硞€(gè)獨(dú)立多邊形所包容的島多邊形。而不可能出現(xiàn)多邊形相互間的重疊、相交;相鄰、包容拓?fù)潢P(guān)系錯(cuò)誤和不完整情況,所有本發(fā)明具有算法簡潔、快速生成的邊界節(jié)點(diǎn)數(shù)據(jù)具有明確的指向性和唯一性的特定拓?fù)潢P(guān)系。
[0010]而且本發(fā)明包含有三個(gè)顯著特點(diǎn)是,一個(gè)是可以對柵格數(shù)據(jù)中的某些指定的像元屬性值或內(nèi)容,進(jìn)行柵格轉(zhuǎn)矢量計(jì)算;而不存在現(xiàn)有柵格轉(zhuǎn)矢量算法中,只能一次將柵格數(shù)據(jù)全部轉(zhuǎn)化為矢量數(shù)據(jù)的強(qiáng)制性限制;二個(gè)是通過采用FPGA電路構(gòu)造的分層次邊界點(diǎn)拓?fù)渌阉髂P停糜?jì)算機(jī)硬件電路技術(shù)將柵格數(shù)據(jù)轉(zhuǎn)化為矢量數(shù)據(jù),具有比采用軟件編程算法所無法想象的速度;三是采用軟硬件技術(shù)相結(jié)合的技術(shù)方法,用計(jì)算機(jī)硬件技術(shù)對柵格數(shù)據(jù)進(jìn)行邊界節(jié)點(diǎn)快速提取,用并行計(jì)算技術(shù)對邊界節(jié)點(diǎn)數(shù)據(jù)進(jìn)行多邊形搜索,從而完成柵格轉(zhuǎn)矢量操作。因此本發(fā)明可以極大的提高轉(zhuǎn)化效率和廣泛的應(yīng)用領(lǐng)域。
[0011]本發(fā)明的柵格轉(zhuǎn)矢量算法,只需要對需要轉(zhuǎn)換的圖像數(shù)據(jù)加載一次,就能夠自動(dòng)完成整個(gè)轉(zhuǎn)換過程,不需要進(jìn)行任何轉(zhuǎn)換后的后期處理工作,并且轉(zhuǎn)換后不可能出現(xiàn)多邊形相互間重疊、相交;相鄰、包容拓?fù)潢P(guān)系錯(cuò)誤和不完整的情況。
[0012]此本發(fā)明特別適合于超大數(shù)據(jù)量、柵格數(shù)據(jù)中像元相鄰關(guān)系極其復(fù)雜的柵格轉(zhuǎn)矢量計(jì)算。該算法提高在森林資源監(jiān)測、濕地資源監(jiān)測、土地資源監(jiān)測等各種資源在分布范圍、資源變化、預(yù)測分析等方面的數(shù)據(jù)處理效率;特別是需要對監(jiān)測目標(biāo)進(jìn)行實(shí)時(shí)跟蹤處理的自然災(zāi)害在發(fā)生、發(fā)展情況中的監(jiān)測分析預(yù)警系統(tǒng);及目標(biāo)識別、目標(biāo)制導(dǎo)等軍事應(yīng)用領(lǐng)域中的需要進(jìn)行柵格轉(zhuǎn)矢量的計(jì)算應(yīng)用;并且該算法在轉(zhuǎn)化后的矢量數(shù)據(jù)中,不存在轉(zhuǎn)換誤差、不需要進(jìn)行任何后期處理操作,故該技術(shù)具有計(jì)算模型簡單、轉(zhuǎn)換效率高、速度快,自動(dòng)化程度高和可有選擇性的將柵格數(shù)據(jù)轉(zhuǎn)化為矢量數(shù)據(jù)的突出特點(diǎn)。
[0013]本發(fā)明提供了基于FPGA構(gòu)建的分層次柵格轉(zhuǎn)矢量處理方法,包括:
[0014]I)、數(shù)據(jù)預(yù)處理步驟;
[0015]2)、采用FPGA電路提取邊界節(jié)點(diǎn)步驟;
[0016]3)、多邊形搜索步驟;
[0017]4)、創(chuàng)建多邊形矢量步驟;
[0018]5)、創(chuàng)建矢量文件步驟;[0019]基于FPGA構(gòu)建分層次邊界拓?fù)渌阉髂P偷幕贔PGA構(gòu)建的分層次柵格轉(zhuǎn)矢量處理方法流程圖見圖1所示。
[0020]基于FPGA構(gòu)建的分層次柵格轉(zhuǎn)矢量處理方法,含有以下步驟;
[0021]I)、數(shù)據(jù)預(yù)處理步驟;
[0022]在獲取遙感影像數(shù)據(jù)后,為了實(shí)現(xiàn)算法的簡單化、避免在計(jì)算中需要對柵格數(shù)據(jù)中的四個(gè)邊界上(第一行、最后一行、第一列和最后一列)的數(shù)據(jù)進(jìn)行特殊計(jì)算,減少計(jì)算中的條件分支判斷,提高運(yùn)算效率,達(dá)到用一個(gè)統(tǒng)一直觀的處理流程進(jìn)行計(jì)算的目的,對柵格數(shù)據(jù)進(jìn)行了邊界擴(kuò)展處理,即進(jìn)行數(shù)據(jù)預(yù)處理操作。
[0023]數(shù)據(jù)預(yù)處理的目的是在將原柵格數(shù)據(jù)的四周添加一圈新的像元數(shù)據(jù)。
[0024]對于所要添加的像元數(shù)據(jù),要求是該數(shù)據(jù)的像元值或?qū)傩詢?nèi)容,要與原柵格數(shù)據(jù)中任何一個(gè)的像元值或?qū)傩詢?nèi)容都不相同。
[0025]數(shù)據(jù)預(yù)處理的第二個(gè)目的是根據(jù)像元值或?qū)傩詢?nèi)容的分類,設(shè)置柵格轉(zhuǎn)矢量的條件。是將柵格數(shù)據(jù)全部轉(zhuǎn)換為矢量數(shù)據(jù);還是只轉(zhuǎn)換某些指定像元值或?qū)傩詢?nèi)容中某些類型的像元,即設(shè)置柵格轉(zhuǎn)矢量所依據(jù)的基本條件。
[0026]在數(shù)據(jù)預(yù)處理結(jié)束后,啟動(dòng)FPGA電路提取邊界節(jié)點(diǎn)步驟,該步驟是一個(gè)可以同時(shí)進(jìn)行并行計(jì)算的流程,所需要啟動(dòng)的流程的個(gè)數(shù),將根據(jù)所設(shè)置的柵格轉(zhuǎn)矢量條件中的轉(zhuǎn)換類型數(shù)量來確定。
[0027]FPGA電路提取邊界節(jié)點(diǎn)理步驟;
[0028]將擴(kuò)展后的柵格數(shù)據(jù)按照所設(shè)置的柵格轉(zhuǎn)矢量條件,傳送到柵格轉(zhuǎn)矢量處理器中,處理器按分層次轉(zhuǎn)換的方式,計(jì)算后分組傳回節(jié)點(diǎn)數(shù)據(jù),其具體數(shù)量由轉(zhuǎn)換條件中的轉(zhuǎn)換數(shù)量來決定;為進(jìn)行多邊形搜索提供邊界節(jié)點(diǎn)數(shù)據(jù)。
[0029]2 )、采用FPGA電路提取邊界節(jié)點(diǎn)步驟;
[0030]在采用FPGA電路構(gòu)造的節(jié)點(diǎn)提取電路中,主要包含有參數(shù)寄存器初始化操作;柵格數(shù)據(jù)存儲地址計(jì)算單元、3*3像元矩陣節(jié)點(diǎn)計(jì)算單元、節(jié)點(diǎn)保存控制單元,循環(huán)控制操作單元等硬件功能電路組成,這些硬件功能電路在系統(tǒng)時(shí)序的控制下,逐步進(jìn)行操作,直到完成所有柵格數(shù)據(jù)的節(jié)點(diǎn)提取操作。
[0031]參數(shù)寄存器初始化操作:
[0032]在參數(shù)寄存器初始化操作中,包含有:柵格數(shù)據(jù)參數(shù)初始化,節(jié)點(diǎn)計(jì)算參數(shù)初始化兩個(gè)部分。
[0033]柵格數(shù)據(jù)參數(shù)初始化主要用于記錄柵格數(shù)據(jù)的基本信息,如柵格數(shù)據(jù)(指擴(kuò)展后的柵格數(shù)據(jù))存儲在存儲器中的開始地址、柵格數(shù)據(jù)的行數(shù)、列數(shù);一個(gè)像元所使用的字節(jié)數(shù)量、柵格數(shù)據(jù)需要轉(zhuǎn)換為矢量數(shù)據(jù)的轉(zhuǎn)換條件(數(shù)組)及轉(zhuǎn)換數(shù)量等參數(shù)。
[0034]節(jié)點(diǎn)計(jì)算參數(shù)初始化用于記錄節(jié)點(diǎn)計(jì)算中需要使用參數(shù)信息,及在計(jì)算中需要保存的參數(shù)、計(jì)算結(jié)果等信息,并且在節(jié)點(diǎn)計(jì)算中還需要使用柵格數(shù)據(jù)參數(shù)中數(shù)據(jù)。
[0035]參數(shù)寄存器初始化操作完成后,進(jìn)入節(jié)點(diǎn)提取的循環(huán)操作,其操作步驟如下:
[0036]柵格數(shù)據(jù)存儲地址計(jì)算單元:
[0037]柵格數(shù)據(jù)存儲地址計(jì)算單元,是根據(jù)參數(shù)寄存器的初始化內(nèi)容和當(dāng)前計(jì)算像元的位置信息,計(jì)算出進(jìn)行3*3像元矩陣計(jì)算時(shí),需要參與計(jì)算的柵格數(shù)據(jù)的存儲地址,供3*3像元矩陣節(jié)點(diǎn)計(jì)算單元讀取柵格數(shù)據(jù)進(jìn)行計(jì)算。[0038]節(jié)點(diǎn)計(jì)算單元:
[0039]在3*3像元矩陣節(jié)點(diǎn)計(jì)算單元中,根據(jù)地址計(jì)算單元提供的柵格數(shù)據(jù)的地址,讀取柵格數(shù)據(jù)(像元)按照分層次邊界拓?fù)渌阉髂P鸵筮M(jìn)行計(jì)算,生成節(jié)點(diǎn)編碼。
[0040]節(jié)點(diǎn)保存控制控制單元:
[0041]節(jié)點(diǎn)保存控制單元包含有:節(jié)點(diǎn)保存地址計(jì)算電路、節(jié)點(diǎn)有效性檢查電路和條件轉(zhuǎn)換分層控制電路、節(jié)點(diǎn)讀寫控制電路四部分組成。
[0042]節(jié)點(diǎn)保存地址計(jì)算電路,根據(jù)節(jié)點(diǎn)計(jì)算參數(shù)寄存器的初始化內(nèi)容和節(jié)點(diǎn)數(shù)量計(jì)算出節(jié)點(diǎn)數(shù)據(jù)需要保存在內(nèi)存中地址,供保存節(jié)點(diǎn)時(shí)使用。
[0043]節(jié)點(diǎn)有效性檢查電路和條件轉(zhuǎn)換分層控制電路,對節(jié)點(diǎn)計(jì)算單元所計(jì)算出的節(jié)點(diǎn)編碼進(jìn)行判斷,該節(jié)點(diǎn)編碼是否有效及該像元是否符合分層條件。
[0044]節(jié)點(diǎn)讀寫控制電路,對符合分層條件的有效節(jié)點(diǎn),根據(jù)節(jié)點(diǎn)保存地址,將節(jié)點(diǎn)編碼、像元的行列位置等信息保存到存儲器中,供多邊形搜索時(shí)使用。
[0045]循環(huán)控制操作單元包含有行循環(huán)控制操作單元和列循環(huán)控制操作單元兩部分。他負(fù)責(zé)完成對柵格數(shù)據(jù)的全遍歷循環(huán)控制操作,直到完成柵格數(shù)據(jù)在具體某個(gè)轉(zhuǎn)換條件(層次)的邊界拓?fù)渌阉髂P偷挠?jì)算工作,生成全部節(jié)點(diǎn)數(shù)據(jù),供多邊形搜索時(shí)使用。
[0046]如果循環(huán)沒有結(jié)束則繼續(xù)進(jìn)行上述操作。
[0047]3)、多邊形搜索步驟;
[0048]多邊形搜索計(jì)算采用并行方法,該并行方法是:首先是創(chuàng)建一個(gè)多邊形數(shù)據(jù)結(jié)構(gòu)。然后從邊界節(jié)點(diǎn)數(shù)據(jù)中開始讀取節(jié)點(diǎn)數(shù)據(jù),并以此節(jié)點(diǎn)為開始節(jié)點(diǎn),創(chuàng)建一個(gè)新的多邊形搜索隊(duì)列。創(chuàng)建完多邊形搜索隊(duì)列后,繼續(xù)讀取邊界節(jié)點(diǎn)數(shù)據(jù),按照搜索條件開始進(jìn)行多邊形搜索計(jì)算,滿足此多邊形條件的節(jié)點(diǎn)添加到此多邊形隊(duì)列中,直到新節(jié)點(diǎn)的指向?yàn)殚_始節(jié)點(diǎn)時(shí),此多邊形隊(duì)列已經(jīng)形成一個(gè)封閉的多邊形,即完成了一個(gè)多邊形的搜索計(jì)算流程,多邊形封閉后,將這個(gè)多邊形作為多邊形數(shù)據(jù)結(jié)構(gòu)中的一條多邊形記錄進(jìn)行保存;同時(shí)需要?jiǎng)h除該多邊形搜索隊(duì)列。
[0049]如果讀取的邊界節(jié)點(diǎn)數(shù)據(jù),不是現(xiàn)有并行計(jì)算多邊形隊(duì)列中的連接節(jié)點(diǎn)時(shí),則需要?jiǎng)?chuàng)建一個(gè)新的多邊形搜索隊(duì)列,重復(fù)上述操作直到將邊界節(jié)點(diǎn)數(shù)據(jù)中的所有節(jié)點(diǎn),全部變成形成封閉多邊形,完成多邊形搜索計(jì)算。
[0050]4)、創(chuàng)建多邊形矢量步驟;
[0051]在創(chuàng)建多邊形矢量數(shù)據(jù)流程中,將根據(jù)多邊形搜索計(jì)算中獲得的有關(guān)該多邊形的順序號、面積、周長、開始節(jié)點(diǎn)位置、多邊形類型、空洞多邊形數(shù)量、多邊形范圍、節(jié)點(diǎn)數(shù)據(jù)集等信息記錄到多邊形數(shù)據(jù)結(jié)構(gòu)表中,為合并多邊形矢量數(shù)據(jù)進(jìn)行數(shù)據(jù)準(zhǔn)備,同時(shí)啟動(dòng)創(chuàng)建矢量數(shù)據(jù)文件操作流程。
[0052]在多邊形搜索計(jì)算結(jié)束后,啟動(dòng)創(chuàng)建多邊形矢量數(shù)據(jù)流程。創(chuàng)建多邊形矢量數(shù)據(jù)的目的是,為多邊形數(shù)據(jù)結(jié)構(gòu)中的每個(gè)島多邊形,找到一個(gè)能夠包容他的最小獨(dú)立多邊形,找到這個(gè)獨(dú)立多邊形后,將島多邊形的坐標(biāo)點(diǎn)鏈表中的坐標(biāo)數(shù)據(jù),添加到包容他的獨(dú)立多邊形的坐標(biāo)點(diǎn)鏈表的末端,修改獨(dú)立多邊形的面積為:S=S-Sd,S為獨(dú)立多邊形面積,Sd為島多邊形面積;并給獨(dú)立多邊形的島多邊形數(shù)量的屬性值+1,他的初始值為O。
[0053]重復(fù)上述操作直到為所有島多邊形找到包容他的獨(dú)立多邊形為止。
[0054]5)、創(chuàng)建矢量文件步驟;[0055]在創(chuàng)建矢量文件流程中,首先根據(jù)柵格數(shù)據(jù)所使用的坐標(biāo)系信息,創(chuàng)建矢量文件和坐標(biāo)系,然后根據(jù)多邊形矢量數(shù)據(jù)中獨(dú)立多邊形的數(shù)量,建立循環(huán)搜索過程,每次讀取一個(gè)多邊形矢量數(shù)量,并按照多邊形矢量數(shù)據(jù)的結(jié)構(gòu)寫入到矢量文件中,當(dāng)將多邊形矢量數(shù)據(jù)中的所有獨(dú)立多邊形矢量數(shù)據(jù)全部寫入到矢量文件中時(shí),完成創(chuàng)建矢量文件流程,結(jié)束柵格轉(zhuǎn)矢量流程,結(jié)束對一個(gè)柵格文件的轉(zhuǎn)換工作。
[0056]本發(fā)明的優(yōu)點(diǎn)是使用遙感影像數(shù)據(jù)提供了基于FPGA構(gòu)建的分層次柵格轉(zhuǎn)矢量處理方法,使用軟硬件結(jié)合的技術(shù)方法,對經(jīng)過預(yù)處理(指數(shù)計(jì)算、閾值分割、分類等計(jì)算處理)的遙感影像進(jìn)行矢量化,將遙感影像上具有相同屬性內(nèi)容的像元,轉(zhuǎn)化為包含有:不同面積、不同周長、不同屬性、不同形狀來表示的矢量圖形元素,并且也能夠表現(xiàn)出這些不同矢量圖形元素之間,所存在的相鄰、包容和被包容的空間拓?fù)潢P(guān)系也能夠得到完全展示。通過轉(zhuǎn)化后的矢量圖形,可以更方便的對圖形元素的屬性信息,分析他在空間位置上所發(fā)生的面積變化、空間位置變化、屬性信息間的相互轉(zhuǎn)化和演替過程進(jìn)行監(jiān)測和預(yù)測,為進(jìn)行緩沖區(qū)分析、疊加分析(疊加求交、疊加求和)等與空間分析計(jì)算相關(guān)聯(lián)的地理信息處理能力提供了可能,增加和擴(kuò)大了遙感影像數(shù)據(jù)在地理信息應(yīng)用領(lǐng)域的范圍,也為地理信息應(yīng)用領(lǐng)域提供了更多的基礎(chǔ)數(shù)據(jù)。
【專利附圖】

【附圖說明】
[0057]當(dāng)結(jié)合附圖考慮時(shí),通過參照下面的詳細(xì)描述,能夠更完整更好地理解本發(fā)明以及容易得知其中許多伴隨的優(yōu)點(diǎn),但此處所說明的附圖用來提供對本發(fā)明的進(jìn)一步理解,構(gòu)成本發(fā)明的一部分,本發(fā)明的示意性實(shí)施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當(dāng)限定,如圖其中:
[0058]圖1為本發(fā)明的流程圖;
[0059]圖2為本發(fā)明的數(shù)據(jù)預(yù)處理流程示意圖;
[0060]圖3為本發(fā)明的上部向右型-搜索方向示意圖;
[0061]圖4右側(cè)向下型-搜索方向示意圖;
[0062]圖5下部向左型-搜索方向示意圖;
[0063]圖6左側(cè)向上型-搜索方向示意圖;
[0064]圖7用FPGA構(gòu)造的節(jié)點(diǎn)提取電路流程圖;
[0065]圖8柵格轉(zhuǎn)矢量處理器結(jié)構(gòu)框圖;
[0066]圖9地址計(jì)算控制器單元框圖;
[0067]圖10節(jié)點(diǎn)計(jì)算單元框圖;
[0068]圖11節(jié)點(diǎn)保存控制單元框圖;
[0069]圖12循環(huán)控制操作單元框圖;
[0070]圖13多邊形搜索調(diào)度與控制流程示意圖;
[0071]圖14多邊形搜索流程示意圖;
[0072]圖15創(chuàng)建多邊形矢量數(shù)據(jù)流程示意圖;
[0073]圖16創(chuàng)建矢量文件流程示意圖。
[0074]下面結(jié)合附圖和實(shí)施例對本發(fā)明進(jìn)一步說明?!揪唧w實(shí)施方式】
[0075]顯然,本領(lǐng)域技術(shù)人員基于本發(fā)明的宗旨所做的許多修改和變化屬于本發(fā)明的保護(hù)范圍。
[0076]實(shí)施例1:如圖1、圖2、圖3、圖4、圖5、圖6、圖7、圖8、圖9、圖10、圖11、圖12、圖13、圖14、圖15、圖16所示,基于FPGA構(gòu)建的分層次柵格轉(zhuǎn)矢量處理方法,含有以下步驟;
[0077]1、數(shù)據(jù)預(yù)處理步驟;:
[0078]對柵格數(shù)據(jù)結(jié)構(gòu)的描述如下:
[0079]用N表示該數(shù)據(jù)的最大行數(shù),第一行為0,最后一行為N,具體到某一行時(shí)用η表
[0080]用M表不該數(shù)據(jù)的最大列數(shù),第一列為O,最后一列為Μ,具體到某一列時(shí)用m表
[0081]在獲取遙感影像數(shù)據(jù)后,為了實(shí)現(xiàn)算法的簡單化、避免在計(jì)算中需要對柵格數(shù)據(jù)中的四個(gè)邊界上(第一行、最后一行、第一列和最后一列)的數(shù)據(jù)進(jìn)行特殊計(jì)算,減少計(jì)算中的條件分支判斷,提高運(yùn)算效率,達(dá)到用一個(gè)統(tǒng)一直觀的處理流程進(jìn)行計(jì)算的目的,對柵格數(shù)據(jù)進(jìn)行了邊界擴(kuò)展處理,即進(jìn)行數(shù)據(jù)預(yù)處理操作。
[0082]數(shù)據(jù)預(yù)處理的目的是在將原柵格數(shù)據(jù)的四周添加一圈新的像元數(shù)據(jù)。
[0083]對于所要添加的像元數(shù)據(jù),要求是該數(shù)據(jù)的像元值或?qū)傩詢?nèi)容,要與原柵格數(shù)據(jù)中任何一個(gè)的像元值或?qū)傩詢?nèi)容都不相同。`
[0084]數(shù)據(jù)預(yù)處理的第二個(gè)目的是根據(jù)像元值或?qū)傩詢?nèi)容的分類,設(shè)置柵格轉(zhuǎn)矢量的條件。是將柵格數(shù)據(jù)全部轉(zhuǎn)換為矢量數(shù)據(jù);還是只轉(zhuǎn)換某些指定像元值或?qū)傩詢?nèi)容中某些類型的像元,即設(shè)置柵格轉(zhuǎn)矢量所依據(jù)的基本條件。
[0085]在邊界搜索流程中,將根據(jù)所設(shè)置的柵格轉(zhuǎn)矢量條件,只對滿足轉(zhuǎn)換條件的柵格數(shù)據(jù)進(jìn)行轉(zhuǎn)換。柵格轉(zhuǎn)矢量條件,用數(shù)組ZHTJ (i)表示,需要進(jìn)行轉(zhuǎn)換的屬性類型數(shù)量,用ZHLX_SL 表示。
[0086]數(shù)據(jù)預(yù)處理流程見圖2所示。如原柵格數(shù)據(jù)為18行,13列,包含有9種屬性類別,原柵格數(shù)據(jù)見表1所示;擴(kuò)展處理后的柵格數(shù)據(jù)為為20行,15列,包含有10種屬性類別,擴(kuò)展后的柵格數(shù)據(jù)見表2所示。
[0087]在算法中規(guī)定采用將原屬性類別的最大數(shù)+1所得到的屬性值,作為擴(kuò)展數(shù)據(jù)的屬性值,添加到原柵格數(shù)據(jù)四周,以保證所添加的擴(kuò)展數(shù)據(jù)與原柵格四周邊界上數(shù)據(jù)屬性值的完全不同?;蛘哂脰鸥駭?shù)據(jù)的像元的最大值+50的方式添加擴(kuò)展數(shù)據(jù)。數(shù)據(jù)擴(kuò)展后的柵格數(shù)據(jù)包含有10中屬性種類,比原數(shù)據(jù)增加了一種屬性類型。
[0088]表1原柵格數(shù)據(jù)示例,N*M=18*13
[0089]
【權(quán)利要求】
1.基于FPGA構(gòu)建的分層次柵格轉(zhuǎn)矢量處理方法,其特征在于包括: 1)、數(shù)據(jù)預(yù)處理步驟; 2)、采用FPGA電路提取邊界節(jié)點(diǎn)步驟; 3)、多邊形搜索步驟; 4)、創(chuàng)建多邊形矢量步驟; 5)、創(chuàng)建矢量文件步驟。
2.根據(jù)權(quán)利要求1所述的基于FPGA構(gòu)建的分層次柵格轉(zhuǎn)矢量處理方法,其特征在于含有以下步驟; 1)、數(shù)據(jù)預(yù)處理步驟; 在獲取遙感影像數(shù)據(jù)后,對柵格數(shù)據(jù)進(jìn)行了邊界擴(kuò)展處理,在將原柵格數(shù)據(jù)的四周添加一圈新的像元數(shù)據(jù); 對于所要添加的像元數(shù)據(jù),要求是該數(shù)據(jù)的像元值或?qū)傩詢?nèi)容,要與原柵格數(shù)據(jù)中任何一個(gè)的像元值或?qū)傩詢?nèi)容都不相同; 根據(jù)像元值或?qū)傩詢?nèi)容的分類,設(shè)置柵格轉(zhuǎn)矢量的條件;是將柵格數(shù)據(jù)全部轉(zhuǎn)換為矢量數(shù)據(jù);還是只轉(zhuǎn)換某些指定像元值或?qū)傩詢?nèi)容中某些類型的像元,即設(shè)置柵格轉(zhuǎn)矢量所依據(jù)的基本條件; 在數(shù)據(jù)預(yù)處理結(jié)束后,啟動(dòng)節(jié)點(diǎn)提取步驟; 在節(jié)點(diǎn)提取步驟中;可以根據(jù)轉(zhuǎn)換條件,將擴(kuò)展后的柵格數(shù)據(jù)按照所設(shè)置的柵格轉(zhuǎn)矢量條件,傳送到柵 格轉(zhuǎn)矢量處理器中,處理器按分層次轉(zhuǎn)換條件進(jìn)行節(jié)點(diǎn)提取,計(jì)算后傳回節(jié)點(diǎn)數(shù)據(jù),為多邊形搜索提供邊界節(jié)點(diǎn)數(shù)據(jù);其具體轉(zhuǎn)換數(shù)量由轉(zhuǎn)換條件決定; 只對柵格數(shù)據(jù)中的某些指定的像元屬性值或內(nèi)容,進(jìn)行柵格轉(zhuǎn)矢量計(jì)算;而不存在現(xiàn)有柵格轉(zhuǎn)矢量算法中,只能一次將柵格數(shù)據(jù)全部轉(zhuǎn)化為矢量數(shù)據(jù)的強(qiáng)制性限制; 2)、采用FPGA電路提取邊界節(jié)點(diǎn)步驟; 在采用FPGA電路構(gòu)造的節(jié)點(diǎn)提取電路中,主要包含有參數(shù)寄存器初始化操作;柵格數(shù)據(jù)存儲地址計(jì)算單元、3*3像元矩陣節(jié)點(diǎn)計(jì)算單元、節(jié)點(diǎn)保存控制單元,循環(huán)控制操作單元等硬件功能電路組成,這些硬件功能電路在系統(tǒng)時(shí)序的控制下,逐步進(jìn)行操作,直到完成所有柵格數(shù)據(jù)的節(jié)點(diǎn)提取操作; 參數(shù)寄存器初始化操作: 在參數(shù)寄存器初始化操作中,包含有:柵格數(shù)據(jù)參數(shù)初始化,節(jié)點(diǎn)計(jì)算參數(shù)初始化兩個(gè)部分; 柵格數(shù)據(jù)參數(shù)初始化主要用于記錄柵格數(shù)據(jù)的基本信息,如柵格數(shù)據(jù)(指擴(kuò)展后的柵格數(shù)據(jù))存儲在存儲器中的開始地址、柵格數(shù)據(jù)的行數(shù)、列數(shù);一個(gè)像元所使用的字節(jié)數(shù)量、柵格數(shù)據(jù)需要轉(zhuǎn)換為矢量數(shù)據(jù)的轉(zhuǎn)換條件(數(shù)組)及轉(zhuǎn)換數(shù)量等參數(shù); 節(jié)點(diǎn)計(jì)算參數(shù)初始化用于記錄節(jié)點(diǎn)計(jì)算中需要使用參數(shù)信息,及在計(jì)算中需要保存的參數(shù)、計(jì)算結(jié)果等信息,并且在節(jié)點(diǎn)計(jì)算中還需要使用柵格數(shù)據(jù)參數(shù)中數(shù)據(jù); 參數(shù)寄存器初始化操作完成后,進(jìn)入節(jié)點(diǎn)提取的循環(huán)操作,其操作步驟如下: 柵格數(shù)據(jù)存儲地址計(jì)算單元: 柵格數(shù)據(jù)存儲地址計(jì)算單元,是根據(jù)參數(shù)寄存器的初始化內(nèi)容和當(dāng)前計(jì)算像元的位置信息,計(jì)算出進(jìn)行3*3像元矩陣計(jì)算時(shí),需要參與計(jì)算的柵格數(shù)據(jù)的存儲地址,供3*3像元矩陣節(jié)點(diǎn)計(jì)算單元讀取柵格數(shù)據(jù)進(jìn)行計(jì)算; 節(jié)點(diǎn)計(jì)算單元: 在3*3像元矩陣節(jié)點(diǎn)計(jì)算單元中,根據(jù)地址計(jì)算單元提供的柵格數(shù)據(jù)的地址,讀取柵格數(shù)據(jù)(像元)按照分層次邊界拓?fù)渌阉髂P鸵筮M(jìn)行計(jì)算,生成節(jié)點(diǎn)編碼; 節(jié)點(diǎn)保存控制控制單元: 節(jié)點(diǎn)保存控制單元包含有:節(jié)點(diǎn)保存地址計(jì)算電路、節(jié)點(diǎn)有效性檢查電路和條件轉(zhuǎn)換分層控制電路、節(jié)點(diǎn)讀寫控制電路四部分組成; 節(jié)點(diǎn)保存地址計(jì)算電路,根據(jù)節(jié)點(diǎn)計(jì)算參數(shù)寄存器的初始化內(nèi)容和節(jié)點(diǎn)數(shù)量計(jì)算出節(jié)點(diǎn)數(shù)據(jù)需要保存在內(nèi)存中地址,供保存節(jié)點(diǎn)時(shí)使用; 節(jié)點(diǎn)有效性檢查電路和條件轉(zhuǎn)換分層控制電路,對節(jié)點(diǎn)計(jì)算單元所計(jì)算出的節(jié)點(diǎn)編碼進(jìn)行判斷,該節(jié)點(diǎn)編碼是否有效及該像元是否符合分層條件; 節(jié)點(diǎn)讀寫控制電路,對符合分層條件的有效節(jié)點(diǎn),根據(jù)節(jié)點(diǎn)保存地址,將節(jié)點(diǎn)編碼、像元的行列位置等信息保存到存儲器中,供多邊形搜索時(shí)使用; 循環(huán)控制操作單元包含有行循環(huán)控制操作單元和列循環(huán)控制操作單元兩部分;負(fù)責(zé)完成對柵格數(shù)據(jù)的全遍歷循環(huán)控制操作,直到完成柵格數(shù)據(jù)在具體某個(gè)轉(zhuǎn)換條件(層次)的邊界拓?fù)渌阉髂P偷挠?jì)算工作,生成全部節(jié)點(diǎn)數(shù)據(jù),供多邊形搜索時(shí)使用; 如果循環(huán)沒有結(jié)束則繼續(xù)進(jìn)行上述操作; 3)、多邊形搜索步驟;` 當(dāng)節(jié)點(diǎn)提取電路運(yùn)行結(jié)束時(shí),符合條件的節(jié)點(diǎn)數(shù)據(jù)已經(jīng)全部提取出來;啟動(dòng)多邊形搜索流程進(jìn)行多邊形搜索計(jì)算,此流程是一個(gè)并行計(jì)算的操作流程,其所需啟動(dòng)的流程的個(gè)數(shù),將根據(jù)所設(shè)置的柵格轉(zhuǎn)矢量條件中的轉(zhuǎn)換類型數(shù)量來確定;或者按照行或列進(jìn)行分組進(jìn)行并行計(jì)算; 在流程中需要對每個(gè)多邊形搜索隊(duì)列的接受和反饋信息進(jìn)行處理,控制和調(diào)度多邊形搜索對流的運(yùn)行狀況,保證并行計(jì)算的正確運(yùn)行; 首先是創(chuàng)建一個(gè)多邊形數(shù)據(jù)結(jié)構(gòu);然后從邊界節(jié)點(diǎn)數(shù)據(jù)中開始讀取節(jié)點(diǎn)數(shù)據(jù),并以此節(jié)點(diǎn)為開始節(jié)點(diǎn),創(chuàng)建一個(gè)新的多邊形搜索隊(duì)列;創(chuàng)建完多邊形搜索隊(duì)列后,繼續(xù)讀取邊界節(jié)點(diǎn)數(shù)據(jù),按照搜索條件開始進(jìn)行多邊形搜索計(jì)算,滿足此多邊形條件的節(jié)點(diǎn)添加到此多邊形隊(duì)列中,直到新節(jié)點(diǎn)的指向?yàn)殚_始節(jié)點(diǎn)時(shí),此多邊形隊(duì)列已經(jīng)形成一個(gè)封閉的多邊形,即完成了一個(gè)多邊形的搜索計(jì)算流程,多邊形封閉后,將這個(gè)多邊形作為多邊形數(shù)據(jù)結(jié)構(gòu)中的一條多邊形記錄進(jìn)行保存;同時(shí)需要?jiǎng)h除該多邊形搜索隊(duì)列; 如果讀取的邊界節(jié)點(diǎn)數(shù)據(jù),不是現(xiàn)有并行計(jì)算多邊形隊(duì)列中的連接節(jié)點(diǎn)時(shí),則需要?jiǎng)?chuàng)建一個(gè)新的多邊形搜索隊(duì)列,重復(fù)上述操作直到將邊界節(jié)點(diǎn)數(shù)據(jù)中的所有節(jié)點(diǎn),全部變成形成封閉多邊形,完成多邊形搜索計(jì)算; 4)、創(chuàng)建多邊形矢量步驟; 在創(chuàng)建多邊形矢量數(shù)據(jù)流程中,將根據(jù)多邊形搜索計(jì)算中獲得的有關(guān)該多邊形的順序號、面積、周長、開始節(jié)點(diǎn)位置、多邊形類型、空洞多邊形數(shù)量、多邊形范圍、節(jié)點(diǎn)數(shù)據(jù)集等信息記錄到多邊形數(shù)據(jù)結(jié)構(gòu)表中,為合并多邊形矢量數(shù)據(jù)進(jìn)行數(shù)據(jù)準(zhǔn)備,同時(shí)啟動(dòng)創(chuàng)建矢量數(shù)據(jù)文件操作流程; 在多邊形搜索計(jì)算結(jié)束后,啟動(dòng)創(chuàng)建多邊形矢量數(shù)據(jù)流程;創(chuàng)建多邊形矢量數(shù)據(jù)的目的是,為多邊形數(shù)據(jù)結(jié)構(gòu)中的每個(gè)島多邊形,找到一個(gè)能夠包容他的最小獨(dú)立多邊形,找到這個(gè)獨(dú)立多邊形后,將島多邊形的坐標(biāo)點(diǎn)鏈表中的坐標(biāo)數(shù)據(jù),添加到包容他的獨(dú)立多邊形的坐標(biāo)點(diǎn)鏈表的末端,修改獨(dú)立多邊形的面積為:S=S-Sd,S為獨(dú)立多邊形面積,Sd為島多邊形面積;并給獨(dú)立多邊形的島多邊形數(shù)量的屬性值+1,他的初始值為O ; 重復(fù)上述操作直到為所有島多邊形找到包容他的獨(dú)立多邊形為止; 5)、創(chuàng)建矢量文件步驟; 在創(chuàng)建矢量文件流程中,首先根據(jù)柵格數(shù)據(jù)所使用的坐標(biāo)系信息,創(chuàng)建矢量文件和坐標(biāo)系,然后根據(jù)多邊形矢量數(shù)據(jù)中獨(dú)立多邊形的數(shù)量,建立循環(huán)搜索過程,每次讀取一個(gè)多邊形矢量數(shù)量,并按照多邊形矢量數(shù)據(jù)的結(jié)構(gòu)寫入到矢量文件中,當(dāng)將多邊形矢量數(shù)據(jù)中的所有獨(dú)立多邊形矢量數(shù)據(jù)全部寫入到矢量文件中時(shí),完成創(chuàng)建矢量文件流程,結(jié)束柵格轉(zhuǎn)矢量流程,結(jié)束對一個(gè)柵格文件的轉(zhuǎn)換工作。
3.根據(jù)權(quán)利要求1所述的基于FPGA構(gòu)建的分層次柵格轉(zhuǎn)矢量處理方法,其特征在于含有以下步驟; 柵格轉(zhuǎn)矢量處理步驟; 分層次邊界拓?fù)渌阉髂P?柵格數(shù)據(jù)中的一個(gè)像元就是對應(yīng)于地表上的一個(gè)二維正方形區(qū)域(也有矩形的),該矩形的四條邊,就是此像元與其他相鄰像元的分界線;對于一個(gè)由3*3像元組成的像元矩陣來講,處于矩陣中心的像元,稱之為中心點(diǎn)像元,在中心點(diǎn)像元周圍還分布有八個(gè)像元; 將所有這些相鄰像元都當(dāng)作一個(gè)相鄰數(shù)據(jù)層;依據(jù)分層次處理的技術(shù)路線,通過將獨(dú)立數(shù)據(jù)層與相鄰數(shù)據(jù)層間的分界線都提取出來,連接成一個(gè)個(gè)封閉多邊形,即分層次柵格轉(zhuǎn)矢量。`
4.根據(jù)權(quán)利要求3所述的基于FPGA構(gòu)建的分層次柵格轉(zhuǎn)矢量處理方法,其特征在于含有以下步驟;采用分層次邊界拓?fù)渌阉髂P瓦M(jìn)行邊界節(jié)點(diǎn)計(jì)算時(shí),需要將柵格數(shù)據(jù)中的每個(gè)像元,都作為中心點(diǎn)像元,同時(shí)讀取中心點(diǎn)像元和四個(gè)相鄰像元進(jìn)行比較計(jì)算,確認(rèn)每個(gè)中心點(diǎn)像元是否為邊界節(jié)點(diǎn),對柵格數(shù)據(jù)進(jìn)行全遍歷的一個(gè)搜索計(jì)算過程。
5.根據(jù)權(quán)利要求4所述的基于FPGA構(gòu)建的分層次柵格轉(zhuǎn)矢量處理方法,其特征在于含有以下步驟;柵格轉(zhuǎn)矢量處理步驟的初始化內(nèi)容包含:柵格數(shù)據(jù)參數(shù)初始化,節(jié)點(diǎn)計(jì)算參數(shù)初始化兩個(gè)部分內(nèi)容; 柵格數(shù)據(jù)參數(shù)初始化主要用于記錄柵格數(shù)據(jù)的基本信息,如柵格數(shù)據(jù)(指擴(kuò)展后的柵格數(shù)據(jù))存儲在存儲器中的開始地址、柵格數(shù)據(jù)的行數(shù)、列數(shù);一個(gè)像元所使用的字節(jié)數(shù)量、柵格數(shù)據(jù)需要轉(zhuǎn)換為矢量數(shù)據(jù)的轉(zhuǎn)換條件(數(shù)組)及轉(zhuǎn)換數(shù)量等參數(shù); 節(jié)點(diǎn)計(jì)算參數(shù)初始化用于記錄節(jié)點(diǎn)計(jì)算中需要使用參數(shù)信息,及在計(jì)算中需要保存的參數(shù)、計(jì)算結(jié)果等信息,并且在節(jié)點(diǎn)計(jì)算中還需要使用柵格數(shù)據(jù)參數(shù)中數(shù)據(jù)。
6.根據(jù)權(quán)利要求1所述的基于FPGA構(gòu)建的分層次柵格轉(zhuǎn)矢量處理方法,其特征在于含有以下步驟;創(chuàng)建多邊形矢量步驟;首先對多邊形數(shù)據(jù)按照多邊形類型和多邊形最大范圍進(jìn)行排序,根據(jù)島多邊形的數(shù)量建立搜索循環(huán)過程,在循環(huán)中每次讀取一個(gè)島多邊形數(shù)據(jù),根據(jù)島多邊形的最大范圍,在獨(dú)立多邊形數(shù)據(jù)中搜索找到一個(gè)能夠包容他的獨(dú)立多邊形序列,此序列中的獨(dú)立多邊形從最小獨(dú)立多邊形向逐漸擴(kuò)大的順序排列,首先從最小獨(dú)立多邊形開始,判斷島多邊形是否被包容,如果被包容,將島多邊形的坐標(biāo)點(diǎn)鏈表數(shù)據(jù)添加到獨(dú)立多邊形的坐標(biāo)點(diǎn)鏈表數(shù)據(jù)中,完成一個(gè)島多邊形的搜索;如果不被包容,則在包容他的獨(dú)立多邊形序列中尋找下一個(gè)獨(dú)立多邊形進(jìn)行判斷,直到找到一個(gè)包容他的獨(dú)立多邊形為止; 重復(fù)上述操作,直到為每個(gè)島多邊形找到包容他的獨(dú)立多邊形為止,完成創(chuàng)建多邊形矢量數(shù)據(jù)流程。
7.根據(jù)權(quán)利要求1所述的基于FPGA構(gòu)建的分層次柵格轉(zhuǎn)矢量處理方法,其特征在于含有以下步驟; 創(chuàng)建矢量文件步驟;在創(chuàng)建多邊形矢量數(shù)據(jù)流程結(jié)束后,獨(dú)立多邊形與島多邊形的拓?fù)潢P(guān)系已經(jīng)建立完成,只需要將多邊形矢量數(shù)據(jù)寫入文件就完成柵格轉(zhuǎn)矢量的全部流程和操作了 ; 在創(chuàng)建矢量文件流程中,首先根據(jù)柵格數(shù)據(jù)所使用的坐標(biāo)系信息,創(chuàng)建矢量文件和坐標(biāo)系,然后根據(jù)多邊形矢量數(shù)據(jù)中獨(dú)立多邊形的數(shù)量,建立循環(huán)搜索過程,每次讀取一個(gè)多邊形矢量數(shù)量,并按照多邊形矢量數(shù)據(jù)的結(jié)構(gòu)寫入到矢量文件中,當(dāng)將多邊形矢量數(shù)據(jù)中的所有獨(dú)立多邊形矢量數(shù)據(jù)全部寫入到矢量文件中時(shí),完成創(chuàng)建矢量文件流程,結(jié)束對柵格數(shù)據(jù)中一個(gè)柵格轉(zhuǎn)矢量條件的全部轉(zhuǎn)換工作; 在將多邊形矢量數(shù)據(jù)寫入到矢量文件時(shí),因?yàn)闁鸥駭?shù)據(jù)是經(jīng)過擴(kuò)展的,他的像元位置相對原柵格數(shù)據(jù),在行和列的位置上還需要對多邊形的坐標(biāo)點(diǎn)都增加了一個(gè)像元的位置,需要在轉(zhuǎn)換時(shí)對節(jié) 點(diǎn)的坐標(biāo)點(diǎn)(X,Y)都-1。
【文檔編號】G06T9/00GK103871086SQ201410054902
【公開日】2014年6月18日 申請日期:2014年2月18日 優(yōu)先權(quán)日:2014年2月18日
【發(fā)明者】孟獻(xiàn)策, 鞠洪波, 肖鵬, 陳永富, 張懷清, 劉華 申請人:中國林業(yè)科學(xué)研究院資源信息研究所
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
洛隆县| 汨罗市| 桦甸市| 思南县| 郁南县| 淮滨县| 曲靖市| 凤冈县| 汶上县| 邢台市| 长宁县| 闽侯县| 佛坪县| 泉州市| 阳高县| 岳阳市| 乃东县| 个旧市| 阿拉善右旗| 化德县| 阜新| 锡林浩特市| 手游| 弥渡县| 连江县| 会泽县| 西贡区| 洛扎县| 达拉特旗| 商南县| 海林市| 阿坝县| 双峰县| 包头市| 牟定县| 泸西县| 枝江市| 余江县| 镇安县| 依兰县| 嵩明县|