亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種用于多衛(wèi)星傳感器對(duì)地觀測(cè)覆蓋區(qū)域求并確認(rèn)方法與流程

文檔序號(hào):11681820閱讀:366來源:國(guó)知局
一種用于多衛(wèi)星傳感器對(duì)地觀測(cè)覆蓋區(qū)域求并確認(rèn)方法與流程

本發(fā)明涉及智慧地球?qū)Φ赜^測(cè)領(lǐng)域,尤其涉及一種用于多衛(wèi)星傳感器對(duì)地觀測(cè)覆蓋區(qū)域求并確認(rèn)方法。



背景技術(shù):

據(jù)科學(xué)家估計(jì),到2020年前后,世界上會(huì)有七萬億個(gè)有線或無線的傳感器,它們通過網(wǎng)絡(luò)組織起來,以滿足人們的即時(shí)需要。在地理信息科學(xué)的場(chǎng)模型下,由于傳感器無處不在,因此認(rèn)為地球上的任何地理空間位置都有被觀測(cè)的需求,整個(gè)地球表面上都存在著一個(gè)連續(xù)的觀測(cè)能力信息場(chǎng),需要發(fā)掘符合要求的傳感器進(jìn)行觀測(cè),而傳感器所具備的觀測(cè)能力即為傳感器發(fā)掘的重要依據(jù)。觀測(cè)空間范圍作為傳感器觀測(cè)能力的一個(gè)重要部分,不同的空間范圍內(nèi)存在著不同類型以及不同數(shù)量的傳感器,因此不同的空間范圍內(nèi)的觀測(cè)能力也不相同,如何確定某個(gè)空間范圍內(nèi)的觀測(cè)能力對(duì)傳感器的發(fā)掘以及規(guī)劃有著重要的意義。

衛(wèi)星遙感傳感器作為對(duì)地觀測(cè)的一個(gè)重要工具,目前已經(jīng)有對(duì)某一時(shí)刻的單個(gè)衛(wèi)星傳感器對(duì)地觀測(cè)覆蓋范圍的模擬仿真的計(jì)算方法,通過現(xiàn)有的計(jì)算方法可以確定某個(gè)空間范圍內(nèi)所具有的單個(gè)傳感器觀測(cè)能力,但是如果考慮到多傳感器進(jìn)行協(xié)同觀測(cè),那么這些傳感器所能觀測(cè)到的全部空間范圍中就具備了多傳感器的協(xié)同觀測(cè)能力,根據(jù)這些區(qū)域所具備的觀測(cè)能力就能對(duì)這些衛(wèi)星傳感器進(jìn)行最優(yōu)的規(guī)劃調(diào)度。從技術(shù)角度講,求解多衛(wèi)星傳感器觀測(cè)覆蓋的全部區(qū)域的問題實(shí)際上就是多個(gè)多邊形求并的問題,已知的有效算法如weiler算法,它能對(duì)凹凸多邊形進(jìn)行有效的求并,但是它卻沒有考慮到邊重合、頂點(diǎn)重合等特殊情況;此外如sutherland-hodgeman等算法也能對(duì)多邊形進(jìn)行有效的裁剪,但這些算法卻要求多邊形是矩形,在多數(shù)實(shí)際情況下并不適用。綜上可知目前關(guān)于多邊形求并的算法要么就是限定了多邊形的形狀、要么就是不能考慮到一些較為常見的特殊情況。針對(duì)多衛(wèi)星傳感器協(xié)同觀測(cè)能力定量評(píng)定的需求,目前正缺乏針對(duì)多個(gè)衛(wèi)星傳感器對(duì)地觀測(cè)覆蓋區(qū)域求并確認(rèn)方法。



技術(shù)實(shí)現(xiàn)要素:

有鑒于此,本發(fā)明提供了一種用于多衛(wèi)星傳感器對(duì)地觀測(cè)覆蓋區(qū)域求并確認(rèn)方法,實(shí)現(xiàn)了對(duì)多個(gè)衛(wèi)星傳感器對(duì)地觀測(cè)覆蓋區(qū)域的求并的技術(shù)效果。

本發(fā)明提供一種用于多衛(wèi)星傳感器對(duì)地觀測(cè)覆蓋區(qū)域求并確認(rèn)方法,包括以下步驟:

獲得所有選定的衛(wèi)星傳感器對(duì)地觀測(cè)的覆蓋區(qū)域,對(duì)所述覆蓋區(qū)域進(jìn)行組合;

建立所述覆蓋區(qū)域的外包矩形,判斷每一組合中的外包矩形的位置關(guān)系;

根據(jù)所述外包矩形的位置關(guān)系判斷覆蓋區(qū)域的初始位置關(guān)系,所述初始位置關(guān)系包括相交、相離和包含;

判斷覆蓋區(qū)域內(nèi)是否存在未檢測(cè)到的區(qū)域,將該未檢測(cè)到的區(qū)域定義為內(nèi)部空洞;

當(dāng)某一組合內(nèi)的覆蓋區(qū)域均不存在內(nèi)部空洞時(shí):若某一組合內(nèi)的覆蓋區(qū)域的位置關(guān)系為相離,則繼續(xù)計(jì)算下一個(gè)組合;若某一組合內(nèi)的覆蓋區(qū)域的位置關(guān)系為包含,則確定用于包含的覆蓋區(qū)域?yàn)楹喜^(qū)域;若某一組合內(nèi)的覆蓋區(qū)域的位置關(guān)系為相交,則對(duì)組合內(nèi)的覆蓋區(qū)域進(jìn)行交點(diǎn)計(jì)算,將交點(diǎn)記錄在覆蓋區(qū)域上,標(biāo)記交點(diǎn)的標(biāo)識(shí);通過對(duì)帶交點(diǎn)的覆蓋區(qū)域進(jìn)行遍歷,確定覆蓋區(qū)域的合并區(qū)域以及合并后出現(xiàn)的內(nèi)部空洞;

當(dāng)一組合的覆蓋區(qū)域內(nèi)存在內(nèi)部空洞時(shí),根據(jù)覆蓋區(qū)域的位置關(guān)系判斷內(nèi)部空洞與覆蓋區(qū)域的位置關(guān)系,進(jìn)而初步判斷并得到覆蓋區(qū)域合并后產(chǎn)生的內(nèi)部空洞區(qū)域;若覆蓋區(qū)域的位置關(guān)系為相交,則對(duì)組合內(nèi)的覆蓋區(qū)域進(jìn)行交點(diǎn)計(jì)算,將交點(diǎn)記錄在覆蓋區(qū)域上,標(biāo)記交點(diǎn)的標(biāo)識(shí);通過對(duì)帶交點(diǎn)的覆蓋區(qū)域進(jìn)行遍歷,確定覆蓋區(qū)域的合并區(qū)域以及合并后出現(xiàn)的內(nèi)部空洞;若覆蓋區(qū)域的位置關(guān)系為包含,確定用于包含的覆蓋區(qū)域?yàn)楹喜^(qū)域,并根據(jù)內(nèi)部空洞與覆蓋區(qū)域的位置關(guān)系判斷合并區(qū)域的內(nèi)部空洞。

進(jìn)一步地,所述判斷外包矩形的位置關(guān)系包括以下步驟:

設(shè)一組合內(nèi)包括覆蓋區(qū)域a和覆蓋區(qū)域b,建立覆蓋區(qū)域a的外包矩形ra和覆蓋區(qū)域b的外包矩形rb,

若滿足條件{(xa<xb;(xa+wa)>(xb+wb))且(ya>yb;(ya-ha)<(yb-hb))}(1),則外包矩形ra包含外包矩形rb;

式中,xa為外包矩形ra左上角坐標(biāo)的橫坐標(biāo),ya為外包矩形ra左上角坐標(biāo)的縱坐標(biāo),wa為ra的水平長(zhǎng)度,ha為ra的豎直長(zhǎng)度,xb為外包矩形rb左上角坐標(biāo)的橫坐標(biāo),yb為外包矩形rb左上角坐標(biāo)的縱坐標(biāo),wb為rb的水平長(zhǎng)度,hb為rb的豎直長(zhǎng)度;

若滿足條件{(xa>xb;(xa+wa)<(xb+wb))且(ya<yb;(ya-ha)>(yb-hb))}(2),則外包矩形rb包含外包矩形ra;

若滿足條件{(xa<xb;(xa+wa)<xb)}(3),條件{(ya>yb;(ya-ha)>yb)}(4),條件{(xa>xb;(xb+wb)<xa)}(5),和條件{(ya>yb;(yb-hb)>ya)}(6)中的任一條件,則外包矩形ra和外包矩形rb相離;

若條件(1)、條件(2)、條件(3)、條件(4)、條件(5)和條件(6)中的任一條件均不滿足,則外包矩形ra和外包矩形rb相交。

進(jìn)一步地,所述根據(jù)外包矩形的位置關(guān)系判斷覆蓋區(qū)域的初始位置關(guān)系包括以下步驟:

如果外包矩形ra和外包矩形rb為相交關(guān)系,則判斷覆蓋區(qū)域a與覆蓋區(qū)域b的位置關(guān)系為相交或相離;如果外包矩形ra為被包含關(guān)系,從覆蓋區(qū)域a的頂點(diǎn)發(fā)射水平或豎直的射線,通過判斷射線與覆蓋區(qū)域b的交點(diǎn)數(shù)量判斷覆蓋區(qū)域a與覆蓋區(qū)域b的位置關(guān)系;

若所有射線與覆蓋區(qū)域b的交點(diǎn)數(shù)量都為1,則覆蓋區(qū)域b包含覆蓋區(qū)域a:

若一部分射線與覆蓋區(qū)域b的交點(diǎn)數(shù)量為1,另一部分射線與覆蓋區(qū)域b的交點(diǎn)數(shù)量為0或2,則覆蓋區(qū)域a與覆蓋區(qū)域b相交;

若所有射線與覆蓋區(qū)域b的交點(diǎn)數(shù)量都為0或2,則覆蓋區(qū)域a與覆蓋區(qū)域b相離。

進(jìn)一步地,所述標(biāo)記交點(diǎn)的標(biāo)識(shí)包括以下步驟:

對(duì)于所述覆蓋區(qū)域a的邊pipi+1和所述覆蓋區(qū)域b的邊qjqj+1,計(jì)算叉積

如果所述叉積結(jié)果大于0,對(duì)于所述邊pipi+1來說,將所述交點(diǎn)標(biāo)記為第一標(biāo)識(shí);對(duì)于所述邊qjqj+1來說,將所述交點(diǎn)標(biāo)記為第二標(biāo)識(shí);

如果所述叉積結(jié)果小于0,對(duì)于所述邊pipi+1來說,將所述交點(diǎn)標(biāo)記為所述第二標(biāo)識(shí);對(duì)于所述邊qjqj+1來說,將所述交點(diǎn)標(biāo)記為所述第一標(biāo)識(shí);

如果所述叉積結(jié)果等于0,計(jì)算叉積若結(jié)果小于0,對(duì)于所述邊pipi+1來說,將所述交點(diǎn)標(biāo)記為所述第一標(biāo)識(shí);對(duì)于所述邊qjqj+1來說,將所述交點(diǎn)標(biāo)記為所述第二標(biāo)識(shí)。

進(jìn)一步地,所述對(duì)帶交點(diǎn)的覆蓋區(qū)域進(jìn)行遍歷具體包括:

覆蓋區(qū)域包括主覆蓋區(qū)域和副覆蓋區(qū)域,從主覆蓋區(qū)域的頂點(diǎn)出發(fā),遍歷主覆蓋區(qū)域的邊上的頂點(diǎn)和交點(diǎn);當(dāng)一交點(diǎn)的標(biāo)識(shí)為第二標(biāo)識(shí)時(shí),繼續(xù)在主覆蓋區(qū)域的邊上遍歷;當(dāng)一交點(diǎn)的標(biāo)識(shí)為第一標(biāo)識(shí)時(shí),以相同方向在該交點(diǎn)所在的副覆蓋區(qū)域的邊上遍歷各頂點(diǎn)或交點(diǎn)直至遍歷到相同的點(diǎn),得到合并區(qū)域;或從初始交點(diǎn)出發(fā),遍歷主覆蓋區(qū)域上的頂點(diǎn)和交點(diǎn);當(dāng)另一交點(diǎn)的標(biāo)識(shí)為第二標(biāo)識(shí)時(shí),繼續(xù)在主覆蓋區(qū)域的邊上遍歷;當(dāng)另一交點(diǎn)的標(biāo)識(shí)為第一標(biāo)識(shí)時(shí),以相同方向在另一交點(diǎn)所在的副覆蓋區(qū)域的邊上遍歷各頂點(diǎn)或交點(diǎn)直至回到初始交點(diǎn),得到合并區(qū)域;

將主覆蓋區(qū)域上的頂點(diǎn)和交點(diǎn)與合并區(qū)域上的點(diǎn)進(jìn)行對(duì)比,若某一點(diǎn)的標(biāo)識(shí)為第二標(biāo)識(shí)但該點(diǎn)不在合并區(qū)域內(nèi),則從該點(diǎn)出發(fā),在主覆蓋區(qū)域的邊上進(jìn)行遍歷,直至遍歷到標(biāo)識(shí)為第一標(biāo)識(shí)的另一點(diǎn),確定該點(diǎn)、另一點(diǎn)及它們之間的點(diǎn)構(gòu)成了內(nèi)部空洞。

進(jìn)一步地,所述初步判斷覆蓋區(qū)域合并后產(chǎn)生的內(nèi)部空洞區(qū)域包括以下步驟:

設(shè)覆蓋區(qū)域a內(nèi)存在內(nèi)部空洞ta:若覆蓋區(qū)域b包含覆蓋區(qū)域a,則覆蓋區(qū)域a和覆蓋區(qū)域b合并后的合并區(qū)域不存在內(nèi)部空洞;若覆蓋區(qū)域a包含覆蓋區(qū)域b且內(nèi)部空洞ta與覆蓋區(qū)域b相交,則確定內(nèi)部空洞ta減去內(nèi)部空洞ta與覆蓋區(qū)域b相交的部分為覆蓋區(qū)域a和覆蓋區(qū)域b合并后的內(nèi)部空洞;若覆蓋區(qū)域a包含覆蓋區(qū)域b且內(nèi)部空洞ta包含覆蓋區(qū)域b,則判斷覆蓋區(qū)域a和覆蓋區(qū)域b實(shí)際的位置關(guān)系為相離;若覆蓋區(qū)域a包含覆蓋區(qū)域b且覆蓋區(qū)域b包含內(nèi)部空洞ta,則覆蓋區(qū)域a和覆蓋區(qū)域b合并后的合并區(qū)域不存在內(nèi)部空洞;若覆蓋區(qū)域a包含覆蓋區(qū)域b且內(nèi)部空洞ta與覆蓋區(qū)域b相離,則覆蓋區(qū)域a和覆蓋區(qū)域b合并后的合并區(qū)域的內(nèi)部空洞為ta;若覆蓋區(qū)域a與覆蓋區(qū)域b相交且覆蓋區(qū)域b包含內(nèi)部空洞ta,則覆蓋區(qū)域a和覆蓋區(qū)域b合并后的合并區(qū)域不存在內(nèi)部空洞;若覆蓋區(qū)域a與覆蓋區(qū)域b相交且覆蓋區(qū)域b與內(nèi)部空洞ta相交,則確定內(nèi)部空洞ta減去內(nèi)部空洞ta與覆蓋區(qū)域b相交的部分為覆蓋區(qū)域a和覆蓋區(qū)域b合并后的內(nèi)部空洞;若覆蓋區(qū)域a與覆蓋區(qū)域b相交且覆蓋區(qū)域b與內(nèi)部空洞ta相離,則覆蓋區(qū)域a和覆蓋區(qū)域b合并后的合并區(qū)域的內(nèi)部空洞為ta或者ta及新生成的內(nèi)部空洞。

本發(fā)明提供的技術(shù)方案帶來的有益效果是:

(1)本發(fā)明通過判斷覆蓋區(qū)域的位置關(guān)系獲得合并區(qū)域,實(shí)現(xiàn)了對(duì)多個(gè)衛(wèi)星傳感器對(duì)地觀測(cè)覆蓋區(qū)域的求并,能夠作為對(duì)衛(wèi)星傳感器進(jìn)行規(guī)劃以及優(yōu)化調(diào)度的可信依據(jù);

(2)通過本發(fā)明可以窮舉多個(gè)衛(wèi)星傳感器對(duì)地觀測(cè)的覆蓋區(qū)域的所有數(shù)量級(jí)的組合區(qū)域,并且把多個(gè)觀測(cè)覆蓋區(qū)域求并的問題轉(zhuǎn)換成兩兩區(qū)域求并的問題,從而免去了多個(gè)區(qū)域同時(shí)求并計(jì)算所帶來的復(fù)雜性;

(3)本發(fā)明基于交點(diǎn)的標(biāo)識(shí),確定了覆蓋區(qū)域的合并區(qū)域,并識(shí)別了生成內(nèi)部空洞的情況,準(zhǔn)確度高。

附圖說明

圖1是本發(fā)明用于多衛(wèi)星傳感器對(duì)地觀測(cè)覆蓋區(qū)域求并確認(rèn)方法的流程圖。

圖2是本發(fā)明一實(shí)施例用于多衛(wèi)星傳感器對(duì)地觀測(cè)覆蓋區(qū)域求并確認(rèn)方法中兩個(gè)多邊形求交點(diǎn)示意圖。

圖3是本發(fā)明一實(shí)施例用于多衛(wèi)星傳感器對(duì)地觀測(cè)覆蓋區(qū)域求并確認(rèn)方法中多邊形交點(diǎn)遍歷示意圖。

圖4是本發(fā)明一實(shí)施例用于多衛(wèi)星傳感器對(duì)地觀測(cè)覆蓋區(qū)域求并確認(rèn)方法中判斷內(nèi)部空洞與覆蓋區(qū)域位置關(guān)系的示意圖。

具體實(shí)施方式

為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖對(duì)本發(fā)明實(shí)施方式作進(jìn)一步地描述。

請(qǐng)參考圖1和圖2,本發(fā)明的實(shí)施例提供了一種用于多衛(wèi)星傳感器對(duì)地觀測(cè)覆蓋區(qū)域求并確認(rèn)方法,包括以下步驟:

步驟s101,獲得所有選定的衛(wèi)星傳感器對(duì)地觀測(cè)的覆蓋區(qū)域,對(duì)覆蓋區(qū)域進(jìn)行組合。

一實(shí)施例中,將每個(gè)衛(wèi)星傳感器對(duì)地觀測(cè)的覆蓋區(qū)域看作一個(gè)多邊形,對(duì)所有選定的n個(gè)衛(wèi)星傳感器對(duì)地觀測(cè)的覆蓋區(qū)域進(jìn)行從1到n的數(shù)字編號(hào),數(shù)字編號(hào)構(gòu)成集合s={1,2,...,n},然后對(duì)集合s進(jìn)行不同數(shù)量的組合,組合的數(shù)量為因此,最多會(huì)有個(gè)合并區(qū)域,通過組合把問題簡(jiǎn)化為求次兩個(gè)多邊形并集的問題;

具體地,首先對(duì)集合s內(nèi)的元素進(jìn)行兩兩組合,結(jié)果表達(dá)為集合:

s2={(x,y)|(x∈s,y∈s;x≠y)}

然后把集合s2中的兩兩組合的元素作為一個(gè)整體,進(jìn)行三個(gè)元素的組合,結(jié)果表達(dá)為集合:

s3={((x,y),w)|((x,y)∈s2,w∈s;x≠y≠w)}

按照上述規(guī)則,一直進(jìn)行數(shù)量遞增的組合,直到組合為集合:

sn={((x,y,w,...,m),n)|((x,y,w,...,m)∈sn-1,n∈s;x≠y...m≠n}=s

由排列組合的定義易知共有組合數(shù)量由于每次求組合都相當(dāng)于求兩兩多邊形間的組合,因此,該問題就轉(zhuǎn)換成了每次求兩個(gè)“多邊形”之間并集的問題。

例如有集合s={1,2,3,4},那么:

s2={(1,2),(1,3),(1,4),(2,3),(2,4),(3,4)}

s3={((1,2),3),((1,2),4),((1,3),4),((2,3),4)}

s4={((1,2,3),4)}=s

步驟s102,建立所有覆蓋區(qū)域的外包矩形,判斷每一組合中的外包矩形的位置關(guān)系。

一實(shí)施例中,選擇一個(gè)組合,該組合包括覆蓋區(qū)域a和覆蓋區(qū)域b,建立覆蓋區(qū)域a的外包矩形ra和覆蓋區(qū)域b的外包矩形rb,參考圖2,覆蓋區(qū)域a為一多邊形,其外包矩形ra為一虛線表示的長(zhǎng)方形,覆蓋區(qū)域b為一長(zhǎng)方形,外包矩形rb與覆蓋區(qū)域b重疊。

對(duì)外包矩形ra與外包矩形rb,判斷它們的位置關(guān)系包括以下步驟:

2.1若滿足條件{(xa<xb;(xa+wa)>(xb+wb))且(ya>yb;(ya-ha)<(yb-hb))}(1),則外包矩形ra包含外包矩形rb;

式中,xa為外包矩形ra左上角坐標(biāo)的橫坐標(biāo),ya為外包矩形ra左上角坐標(biāo)的縱坐標(biāo),wa為ra的水平長(zhǎng)度,ha為ra的豎直長(zhǎng)度,xb為外包矩形rb左上角坐標(biāo)的橫坐標(biāo),yb為外包矩形rb左上角坐標(biāo)的縱坐標(biāo),wb為rb的水平長(zhǎng)度,hb為rb的豎直長(zhǎng)度;

2.2若滿足條件{(xa>xb;(xa+wa)<(xb+wb))且(ya<yb;(ya-ha)>(yb-hb))}(2),則外包矩形rb包含外包矩形ra;

2.3若滿足條件{(xa<xb;(xa+wa)<xb)}(3),條件{(ya>yb;(ya-ha)>yb)}(4),條件{(xa>xb;(xb+wb)<xa)}(5),和條件{(ya>yb;(yb-hb)>ya)}(6)中的任一條件,則外包矩形ra和外包矩形rb相離;

2.4若條件(1)、條件(2)、條件(3)、條件(4)、條件(5)和條件(6)中的任一條件均不滿足,則外包矩形ra和外包矩形rb相交。

參考圖2,一實(shí)施例中,(xa>xb;(xa+wa)<(xb+wb))且(ya<yb;(ya-ha)>(yb-hb)),說明外包矩形ra包含外包矩形rb。

步驟s103,根據(jù)外包矩形的位置關(guān)系判斷覆蓋區(qū)域的初始位置關(guān)系,初始位置關(guān)系包括相交、相離和包含。

一實(shí)施例中,根據(jù)外包矩形ra與外包矩形rb的位置關(guān)系判斷覆蓋區(qū)域a與覆蓋區(qū)域b的位置關(guān)系,包括以下步驟:

如果外包矩形ra和外包矩形rb為相交關(guān)系,則判斷覆蓋區(qū)域a與覆蓋區(qū)域b的位置關(guān)系為相交或相離;如果外包矩形ra為被包含關(guān)系,從覆蓋區(qū)域a的頂點(diǎn)發(fā)射水平或豎直的射線,通過判斷射線與覆蓋區(qū)域b的交點(diǎn)數(shù)量判斷覆蓋區(qū)域a與覆蓋區(qū)域b的位置關(guān)系;

這里需要說明的是,當(dāng)發(fā)射水平射線時(shí),如果射線與覆蓋區(qū)域b的豎直方向上的極值頂點(diǎn)相交,則記交點(diǎn)數(shù)量為2;如果射線與覆蓋區(qū)域b的非豎直方向上的極值頂點(diǎn)相交,則記交點(diǎn)數(shù)量為1;當(dāng)發(fā)射豎直射線時(shí),如果射線與覆蓋區(qū)域b的水平方向上的極值頂點(diǎn)相交,則記交點(diǎn)數(shù)量為2;如果射線與覆蓋區(qū)域b的非水平方向上的極值頂點(diǎn)相交,則記交點(diǎn)數(shù)量為1;沒有交點(diǎn)則記為0;

若所有射線與覆蓋區(qū)域b的交點(diǎn)數(shù)量都為1,則覆蓋區(qū)域b包含覆蓋區(qū)域a:

若一部分射線與覆蓋區(qū)域b的交點(diǎn)數(shù)量為1,另一部分射線與覆蓋區(qū)域b的交點(diǎn)數(shù)量為0或2,則覆蓋區(qū)域a與覆蓋區(qū)域b相交;

若所有射線與覆蓋區(qū)域b的交點(diǎn)數(shù)量都為0或2,則覆蓋區(qū)域a與覆蓋區(qū)域b相離。

參考圖2,一實(shí)施例中,外包矩形rb為被包含關(guān)系,覆蓋區(qū)域b為多邊形q1q2q3q4,覆蓋區(qū)域a為多邊形p1p2p3p4p5p6,從覆蓋區(qū)域b的頂點(diǎn)q3發(fā)射一條水平向右的射線l1,該射線l1與覆蓋區(qū)域a的交點(diǎn)數(shù)量為0,從覆蓋區(qū)域b的頂點(diǎn)q4發(fā)射一條水平向右的射線l2,該射線l2與覆蓋區(qū)域a的交點(diǎn)數(shù)量為1,由此判斷覆蓋區(qū)域a和覆蓋區(qū)域b相交。

步驟s104,判斷覆蓋區(qū)域內(nèi)是否存在未檢測(cè)到的區(qū)域,將該未檢測(cè)到的區(qū)域定義為內(nèi)部空洞。

步驟s105,當(dāng)某一組合內(nèi)的覆蓋區(qū)域均不存在內(nèi)部空洞時(shí):

5.1若某一組合內(nèi)的覆蓋區(qū)域的位置關(guān)系為相離,則繼續(xù)計(jì)算下一個(gè)組合;

5.2若某一組合內(nèi)的覆蓋區(qū)域的位置關(guān)系為包含,則確定用于包含的覆蓋區(qū)域?yàn)楹喜^(qū)域;

5.3若某一組合內(nèi)的覆蓋區(qū)域的位置關(guān)系為相交,進(jìn)行以下步驟的計(jì)算:

5.3.1對(duì)組合內(nèi)的覆蓋區(qū)域進(jìn)行交點(diǎn)計(jì)算,將交點(diǎn)記錄在覆蓋區(qū)域上,并標(biāo)記交點(diǎn)的標(biāo)識(shí);

交點(diǎn)計(jì)算包括以下步驟:

參考圖2,一實(shí)施例中,對(duì)于覆蓋區(qū)域a的邊pipi+1和覆蓋區(qū)域b的邊qjqj+1,計(jì)算叉積表示為d1,表示為d2,表示為d3,表示為d4;如果則說明邊pipi+1和邊qjqj+1相交;如果{dn=0且dn+1≠0(n=1或n=3)},當(dāng)n=1時(shí),若滿足條件則說明邊pipi+1和邊qjqj+1相交;當(dāng)n=3時(shí),若滿足條件則說明邊pipi+1和邊qjqj+1相交;如果{dn=0且dn-1≠0(n=2或n=4)},當(dāng)n=2時(shí),若滿足條件則說明邊pipi+1和邊qjqj+1相交;當(dāng)n=4時(shí),若滿足條件則說明邊pipi+1和邊qjqj+1相交;式中,為點(diǎn)pi的橫坐標(biāo),為點(diǎn)qi的橫坐標(biāo),為點(diǎn)pi的縱坐標(biāo),為點(diǎn)qi的縱坐標(biāo)。在確定了兩條邊相交以后,先求出這兩條邊的截距方程,再基于截距方程利用克拉默法則求出交點(diǎn)的坐標(biāo)。

標(biāo)記交點(diǎn)的標(biāo)識(shí)具體包括:

對(duì)于覆蓋區(qū)域a的邊pipi+1和覆蓋區(qū)域b的邊qjqj+1,計(jì)算叉積

如果叉積大于0,對(duì)于邊pipi+1來說,將pipi+1和qjqj+1的交點(diǎn)標(biāo)記為第一標(biāo)識(shí);對(duì)于邊qjqj+1來說,將pipi+1和qjqj+1的交點(diǎn)標(biāo)記為第二標(biāo)識(shí);

如果叉積小于0,對(duì)于邊pipi+1來說,將pipi+1和qjqj+1的交點(diǎn)標(biāo)記為第二標(biāo)識(shí);對(duì)于邊qjqj+1來說,將pipi+1和qjqj+1的交點(diǎn)標(biāo)記為第一標(biāo)識(shí);

如果叉積等于0,計(jì)算叉積若叉積小于0,對(duì)于邊pipi+1來說,將pipi+1和qjqj+1的交點(diǎn)標(biāo)記為第一標(biāo)識(shí);對(duì)于邊qjqj+1來說,將pipi+1和qjqj+1的交點(diǎn)標(biāo)記為第二標(biāo)識(shí),由于兩邊相交,因而不存在叉積結(jié)果大于或等于0的情況。

需要說明的是,一條邊上求出的交點(diǎn)數(shù)量可能為多個(gè),但求出交點(diǎn)的順序不一定是按照頂點(diǎn)排列順序的,因此,在求出一條邊上的交點(diǎn)后,需要先計(jì)算出這條邊上所有交點(diǎn)到邊起始點(diǎn)的歐氏距離,通過歐式距離從近到遠(yuǎn)進(jìn)行排序,再記錄到相應(yīng)的邊上,如果一個(gè)多邊形的任意一條邊pipi+1與另一個(gè)多邊形的任意連續(xù)的兩條邊qjqj+1和qj+1qj+2交于同一點(diǎn)qj+1,則交點(diǎn)qj+1的標(biāo)識(shí)記為邊pipi+1與邊qj+1qj+2相交時(shí)的標(biāo)識(shí)。

通過以上步驟,便能得到帶交點(diǎn)的多邊形(覆蓋區(qū)域),該多邊形的形狀與原多邊形的形狀完全相同,作用是對(duì)其結(jié)點(diǎn)進(jìn)行遍歷得到合并區(qū)域。

參考圖2,一實(shí)施例中,具體的標(biāo)記方式為:因多邊形的邊以相同方向排列,以順時(shí)針方向?yàn)槔?,第一?biāo)識(shí)為“出”點(diǎn)的標(biāo)識(shí),第二標(biāo)識(shí)為“入”點(diǎn)的標(biāo)識(shí)。對(duì)于相交的兩條邊p1p2和q1q2,如果q1q2的起始點(diǎn)在p1p2的左邊或q1q2的終點(diǎn)在p1p2的右邊,則它們的交點(diǎn)為“入”點(diǎn),反之則為“出”點(diǎn),把兩個(gè)多邊形分成主多邊形和副多邊形,主多邊形中的入點(diǎn)標(biāo)記為1,出點(diǎn)標(biāo)記為-1,副多邊形則相反,將主多邊形和副多邊形中不是交點(diǎn)的點(diǎn)標(biāo)記為0;逆時(shí)針方向則與順時(shí)針方向相反。需要說明的是,一條邊上的交點(diǎn)數(shù)量可能為多個(gè),但求出交點(diǎn)的順序不一定是按照邊頂點(diǎn)順序的,因此,在求出一條邊上的交點(diǎn)后,需要先對(duì)交點(diǎn)進(jìn)行排序,再記錄到相應(yīng)位置,如果一個(gè)多邊形的一條邊p1p2與另一個(gè)多邊形連續(xù)的兩條邊q1q2和q2q3交于一點(diǎn),則該點(diǎn)的標(biāo)識(shí)為p1p2與q2q3相交時(shí)的標(biāo)識(shí)。

如圖2所示,多邊形a以及多邊形b相交,其中需要注意的有兩個(gè)地方,首先是多邊形a的邊p1p2與多邊形b的邊q1q2、q2q3相交于同一點(diǎn)q2,按照上述規(guī)則,q2點(diǎn)的標(biāo)識(shí)應(yīng)該是p1p2與q2q3相交時(shí)的標(biāo)識(shí),計(jì)算出該點(diǎn)為入點(diǎn);其次是多邊形a的邊p4p5與多邊形b的邊q2q3、q4q1相交于點(diǎn)n、p,由于計(jì)算出交點(diǎn)的先后順序是n、p,但實(shí)際上排列順序應(yīng)該是p、n,因此需要對(duì)n、p進(jìn)行排序,依據(jù)m與p到p4的距離從近到遠(yuǎn)進(jìn)行排序,這樣便得到了p4、p、n、p5的頂點(diǎn)順序,最后求并得到的多邊形坐標(biāo)序列如圖2中表格內(nèi)所示。

5.3.2通過對(duì)帶交點(diǎn)的覆蓋區(qū)域進(jìn)行遍歷,確定覆蓋區(qū)域的合并區(qū)域以及合并后出現(xiàn)的內(nèi)部空洞。

對(duì)帶交點(diǎn)的覆蓋區(qū)域進(jìn)行遍歷具體包括:

覆蓋區(qū)域包括主覆蓋區(qū)域和副覆蓋區(qū)域,從主覆蓋區(qū)域的頂點(diǎn)出發(fā),遍歷主覆蓋區(qū)域的邊上的頂點(diǎn)和交點(diǎn);當(dāng)一交點(diǎn)的標(biāo)識(shí)為第二標(biāo)識(shí)時(shí),繼續(xù)在主覆蓋區(qū)域的邊上遍歷;當(dāng)一交點(diǎn)的標(biāo)識(shí)為第一標(biāo)識(shí)時(shí),以相同方向在該交點(diǎn)所在的副覆蓋區(qū)域的邊上遍歷各頂點(diǎn)或交點(diǎn)直至遍歷到相同的點(diǎn),得到合并區(qū)域;或從初始交點(diǎn)出發(fā),遍歷主覆蓋區(qū)域上的頂點(diǎn)和交點(diǎn);當(dāng)另一交點(diǎn)的標(biāo)識(shí)為第二標(biāo)識(shí)時(shí),繼續(xù)在主覆蓋區(qū)域的邊上遍歷;當(dāng)另一交點(diǎn)的標(biāo)識(shí)為第一標(biāo)識(shí)時(shí),以相同方向在另一交點(diǎn)所在的副覆蓋區(qū)域的邊上遍歷各頂點(diǎn)或交點(diǎn)直至回到初始交點(diǎn),得到合并區(qū)域;

將主覆蓋區(qū)域上的頂點(diǎn)和交點(diǎn)與合并區(qū)域上的點(diǎn)進(jìn)行對(duì)比,若某一點(diǎn)的標(biāo)識(shí)為第二標(biāo)識(shí)但該點(diǎn)不在合并區(qū)域內(nèi),則從該點(diǎn)出發(fā),在主覆蓋區(qū)域的邊上進(jìn)行遍歷,直至遍歷到標(biāo)識(shí)為第一標(biāo)識(shí)的另一點(diǎn),確定該點(diǎn)、另一點(diǎn)及它們之間的點(diǎn)構(gòu)成了內(nèi)部空洞。

這里需要說明的是,每遍歷到一個(gè)頂點(diǎn)或交點(diǎn)時(shí),判斷該點(diǎn)與起始點(diǎn)是否相同,并且判斷是否構(gòu)成環(huán);如果構(gòu)成環(huán),則遍歷結(jié)束,合并區(qū)域被求出;如果沒構(gòu)成環(huán),則繼續(xù)遍歷。

參考圖2,一實(shí)施例中:

1)從主多邊形a的第一個(gè)頂點(diǎn)開始順序遍歷,直到遇到頂點(diǎn)的標(biāo)識(shí)為1(即第二標(biāo)識(shí),表示“入”點(diǎn))的點(diǎn)時(shí)便開始記錄,首先記錄該點(diǎn),然后繼續(xù)遍歷主多邊形a的下一個(gè)點(diǎn);

2)如果遇到的點(diǎn)的標(biāo)識(shí)為0或1,則記錄該點(diǎn),然后判斷此時(shí)記錄的集合是否構(gòu)成環(huán)(第一個(gè)點(diǎn)與最后一個(gè)點(diǎn)相等),如果構(gòu)成環(huán),則遍歷結(jié)束,合并區(qū)域被求出,如果沒構(gòu)成環(huán),則繼續(xù)遍歷主多邊形a的下一個(gè)點(diǎn);如果遇到的點(diǎn)的標(biāo)識(shí)為-1,記錄該點(diǎn),然后進(jìn)入下一步;

3)進(jìn)入到副多邊形b中坐標(biāo)等于2)中標(biāo)識(shí)為1的位置開始遍歷,如果該點(diǎn)標(biāo)識(shí)為-1或0,記錄該點(diǎn)并判斷是否構(gòu)成環(huán),如果構(gòu)成環(huán)則遍歷結(jié)束,合并區(qū)域被求出,否則繼續(xù)遍歷副多邊形b的下一個(gè)點(diǎn);如果遇到的點(diǎn)的標(biāo)識(shí)為1,則記錄該點(diǎn),然后返回到主多邊形a中等于該點(diǎn)的位置;

4)返回到3)中的主多邊形a的位置后,按照2)3)步驟對(duì)主多邊形a、副多邊形b進(jìn)行遍歷,直至記錄的集合構(gòu)成環(huán),就得到了所求合并區(qū)域的坐標(biāo)集合,如果到最后一個(gè)點(diǎn)也沒構(gòu)成環(huán),則返回到第一個(gè)點(diǎn)繼續(xù)遍歷,直至記錄的集合構(gòu)成環(huán),就得到了所求合并區(qū)域的坐標(biāo)集合;

5)用主多邊形a的坐標(biāo)與生成的合并區(qū)域的坐標(biāo)一一對(duì)比標(biāo)識(shí),如果某個(gè)坐標(biāo)在主多邊形a中標(biāo)識(shí)為1但該坐標(biāo)不在合并區(qū)域坐標(biāo)集合中,那么判斷生成了內(nèi)部空洞,從主多邊形a中的該坐標(biāo)開始遍歷,直到遇到一個(gè)標(biāo)識(shí)為-1的坐標(biāo),則從坐標(biāo)標(biāo)識(shí)為1到這個(gè)標(biāo)識(shí)為-1之間的點(diǎn)集合則為內(nèi)部空洞的坐標(biāo)集合。

如圖3所示,按照上述規(guī)則對(duì)圖2中多邊形相交所生成的帶交點(diǎn)的坐標(biāo)序列進(jìn)行遍歷,從p1開始,遇到第一個(gè)標(biāo)識(shí)為1的點(diǎn)為q2,記錄q2,然后繼續(xù)遍歷,遇到點(diǎn)p2到p4,出入性質(zhì)為0,記錄并繼續(xù)遍歷,遇到點(diǎn)p,標(biāo)識(shí)為-1,記錄并進(jìn)入多邊形b中p點(diǎn)處,遍歷到點(diǎn)q,標(biāo)識(shí)為1,記錄并返回到多邊形a中的點(diǎn)q處,繼續(xù)遍歷,遇到點(diǎn)p6到p1,標(biāo)識(shí)為0,記錄并繼續(xù)遍歷,此時(shí)多邊形a已經(jīng)遍歷到最后一個(gè)點(diǎn)(即第一個(gè)點(diǎn)),依舊沒構(gòu)成環(huán),則繼續(xù)從頭開始遍歷,遍歷到q2,并判斷出此時(shí)記錄已經(jīng)構(gòu)成環(huán),第一個(gè)點(diǎn)與最后一個(gè)點(diǎn)都是q2,遍歷結(jié)束,合并區(qū)域被找出,其坐標(biāo)序列為:q2、p2、q3、p3、p4、p、q、p6、p1、q2。之后,再檢測(cè)其是否生成了內(nèi)部空洞,通過多邊形a的坐標(biāo)與求并后區(qū)域的坐標(biāo)一一對(duì)比,發(fā)現(xiàn)多邊形a中的點(diǎn)n標(biāo)識(shí)為1且不在求并后的區(qū)域坐標(biāo)中,因?yàn)榕袛嗌闪藘?nèi)部空洞,從點(diǎn)n開始遍歷直到遇到第一個(gè)出點(diǎn)m,則它們以及它們之間的點(diǎn)構(gòu)成了內(nèi)部空洞,從圖3中可以看到內(nèi)部空洞坐標(biāo)序列為:n、p5、m。

步驟s106,當(dāng)一組合的覆蓋區(qū)域內(nèi)存在內(nèi)部空洞時(shí),根據(jù)覆蓋區(qū)域的位置關(guān)系判斷內(nèi)部空洞與覆蓋區(qū)域的位置關(guān)系,并根據(jù)內(nèi)部空洞與覆蓋區(qū)域的位置關(guān)系初步判斷覆蓋區(qū)域合并后產(chǎn)生的內(nèi)部空洞區(qū)域;

參考圖4,一實(shí)施例中,以四邊形代表覆蓋區(qū)域b,以a字多邊形代表覆蓋區(qū)域a,以三角形代表內(nèi)部空洞ta,覆蓋區(qū)域a內(nèi)存在內(nèi)部空洞ta:若覆蓋區(qū)域b包含覆蓋區(qū)域a,則覆蓋區(qū)域a和覆蓋區(qū)域b合并后的合并區(qū)域不存在內(nèi)部空洞;若覆蓋區(qū)域a包含覆蓋區(qū)域b且內(nèi)部空洞ta與覆蓋區(qū)域b相交,則確定內(nèi)部空洞ta減去內(nèi)部空洞ta與覆蓋區(qū)域b相交的部分為覆蓋區(qū)域a和覆蓋區(qū)域b合并后的內(nèi)部空洞;若覆蓋區(qū)域a包含覆蓋區(qū)域b且內(nèi)部空洞ta包含覆蓋區(qū)域b,則判斷覆蓋區(qū)域a和覆蓋區(qū)域b實(shí)際的位置關(guān)系為相離;若覆蓋區(qū)域a包含覆蓋區(qū)域b且覆蓋區(qū)域b包含內(nèi)部空洞ta,則覆蓋區(qū)域a和覆蓋區(qū)域b合并后的合并區(qū)域不存在內(nèi)部空洞;若覆蓋區(qū)域a包含覆蓋區(qū)域b且內(nèi)部空洞ta與覆蓋區(qū)域b相離,則覆蓋區(qū)域a和覆蓋區(qū)域b合并后的合并區(qū)域的內(nèi)部空洞為ta;若覆蓋區(qū)域a與覆蓋區(qū)域b相交且覆蓋區(qū)域b包含內(nèi)部空洞ta,則覆蓋區(qū)域a和覆蓋區(qū)域b合并后的合并區(qū)域不存在內(nèi)部空洞;若覆蓋區(qū)域a與覆蓋區(qū)域b相交且覆蓋區(qū)域b與內(nèi)部空洞ta相交,則確定內(nèi)部空洞ta減去內(nèi)部空洞ta與覆蓋區(qū)域b相交的部分為覆蓋區(qū)域a和覆蓋區(qū)域b合并后的內(nèi)部空洞;若覆蓋區(qū)域a與覆蓋區(qū)域b相交且覆蓋區(qū)域b與內(nèi)部空洞ta相離,則覆蓋區(qū)域a和覆蓋區(qū)域b合并后的合并區(qū)域的內(nèi)部空洞為ta或者ta及新生成的內(nèi)部空洞。

6.1若覆蓋區(qū)域的位置關(guān)系為相交,根據(jù)步驟5.3.1中的交點(diǎn)計(jì)算和交點(diǎn)的標(biāo)識(shí)及步驟5.3.2中對(duì)覆蓋區(qū)域進(jìn)行遍歷確定覆蓋區(qū)域的合并區(qū)域以及合并后出現(xiàn)的內(nèi)部空洞。

6.2若覆蓋區(qū)域的位置關(guān)系為包含,確定用于包含的覆蓋區(qū)域?yàn)楹喜^(qū)域,并根據(jù)內(nèi)部空洞與覆蓋區(qū)域的位置關(guān)系判斷合并區(qū)域的內(nèi)部空洞。

本發(fā)明通過判斷覆蓋區(qū)域的位置關(guān)系獲得合并區(qū)域,實(shí)現(xiàn)了對(duì)多個(gè)衛(wèi)星傳感器對(duì)地觀測(cè)覆蓋區(qū)域的求并,能夠作為對(duì)衛(wèi)星傳感器進(jìn)行規(guī)劃以及優(yōu)化調(diào)度的可信依據(jù);通過本發(fā)明可以窮舉多個(gè)衛(wèi)星傳感器對(duì)地觀測(cè)的覆蓋區(qū)域的所有數(shù)量級(jí)的組合區(qū)域,并且把多個(gè)觀測(cè)覆蓋區(qū)域求并的問題轉(zhuǎn)換成兩兩區(qū)域求并的問題,從而免去了多個(gè)區(qū)域同時(shí)求并計(jì)算所帶來的復(fù)雜性;本發(fā)明基于交點(diǎn)的標(biāo)識(shí),確定了覆蓋區(qū)域的合并區(qū)域,并識(shí)別了生成內(nèi)部空洞的情況,準(zhǔn)確度高。

在不沖突的情況下,本文中上述實(shí)施例及實(shí)施例中的特征可以相互結(jié)合。

以上所述僅為本發(fā)明的較佳實(shí)施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。

當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1