本發(fā)明涉及測(cè)繪科學(xué)與技術(shù)領(lǐng)域,具體涉及一種基于稀疏塊狀矩陣壓縮存儲(chǔ)結(jié)構(gòu)的預(yù)條件共軛梯度區(qū)域網(wǎng)平差方法,主要應(yīng)用于中大規(guī)模測(cè)區(qū)(500到10000張影像)攝影測(cè)量4D產(chǎn)品生產(chǎn)以及三維建模等。
背景技術(shù):
區(qū)域網(wǎng)平差是測(cè)繪科學(xué)與技術(shù)攝影測(cè)量分支領(lǐng)域的關(guān)鍵步驟,其主要目標(biāo)是通過(guò)區(qū)域內(nèi)影像之間的連接點(diǎn)以及物方控制點(diǎn)信息來(lái)恢復(fù)攝影時(shí)刻相機(jī)的位置和姿態(tài),從而實(shí)現(xiàn)對(duì)地定位,為后端的4D產(chǎn)品生產(chǎn)以及三維建模等應(yīng)用提供幾何定位信息。區(qū)域網(wǎng)平差技術(shù)經(jīng)過(guò)幾十年的發(fā)展,其方法和流程已經(jīng)相對(duì)成熟,并且在測(cè)繪領(lǐng)域得到了廣泛的應(yīng)用。然而隨著科技的加速進(jìn)步,新的傳感器不斷涌現(xiàn),如航天領(lǐng)域的高分辨率衛(wèi)星,立體測(cè)繪衛(wèi)星,航空領(lǐng)域的傾斜航空攝影系統(tǒng),無(wú)人機(jī)、飛艇攝影系統(tǒng)等。同時(shí),全世界范圍內(nèi)三維建模應(yīng)用需求不斷增加,也使得大量地面車(chē)載攝影系統(tǒng),近景攝影系統(tǒng),普通數(shù)碼相機(jī),甚至是智能手機(jī),網(wǎng)絡(luò)圖片庫(kù)等采集的影像都被應(yīng)用于三維建模。影像數(shù)據(jù)源越來(lái)越豐富的同時(shí),其分辨率也不斷提高,以前數(shù)十米的衛(wèi)星影像如今可以達(dá)到最高0.35米(WorldView-3),航空影像的分辨率更是進(jìn)入了厘米級(jí)時(shí)代。分辨率的增加必然會(huì)帶來(lái)數(shù)據(jù)量的增大,攝影時(shí)的航線設(shè)計(jì)也不再滿(mǎn)足傳統(tǒng)的條帶式規(guī)則分布,給相應(yīng)的數(shù)據(jù)處理方法帶來(lái)了一定挑戰(zhàn),受法方程大小的限制,傳統(tǒng)的區(qū)域網(wǎng)平差技術(shù)流程已經(jīng)不能滿(mǎn)足中大規(guī)模測(cè)區(qū)數(shù)據(jù)處理需求。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明所要解決的技術(shù)問(wèn)題是提供一種基于稀疏塊狀矩陣壓縮存儲(chǔ)結(jié)構(gòu)的預(yù)條件共軛梯度區(qū)域網(wǎng)平差方法,不足解決現(xiàn)有技術(shù)的不足。本發(fā)明解決上述技術(shù)問(wèn)題的技術(shù)方案如下:本發(fā)明提供了一種基于稀疏塊狀矩陣壓縮存儲(chǔ)結(jié)構(gòu)的預(yù)條件共軛梯度區(qū)域網(wǎng)平差方法,包括以下步驟:S1、導(dǎo)入?yún)^(qū)域網(wǎng)平差計(jì)算所需要的原始數(shù)據(jù),其中,所述原始數(shù)據(jù)至少包括初始內(nèi)外方位元素?cái)?shù)據(jù)以及點(diǎn)位數(shù)據(jù);S2、對(duì)導(dǎo)入的所述原始數(shù)據(jù)進(jìn)行時(shí)空基準(zhǔn)統(tǒng)一,并統(tǒng)計(jì)未知數(shù)分組情況以及每一組未知數(shù)的個(gè)數(shù);S3、根據(jù)統(tǒng)計(jì)的未知數(shù)分組情況以及每一組未知數(shù)的個(gè)數(shù),構(gòu)建稀疏塊狀矩陣壓縮存儲(chǔ)結(jié)構(gòu);S4、逐點(diǎn)計(jì)算每個(gè)像點(diǎn)所生成的子法方程系數(shù)矩陣以及法方程常數(shù)項(xiàng)子向量,并計(jì)算每一個(gè)子法方程系數(shù)矩陣、法方程常數(shù)項(xiàng)子向量的大小以及它們?cè)谌址ǚ匠滔禂?shù)矩陣和全局法方程常數(shù)項(xiàng)向量中的索引位置;S5、進(jìn)入?yún)^(qū)域網(wǎng)平差迭代流程:初始化各類(lèi)變量,包括全局法方程常數(shù)項(xiàng)向量c,未知數(shù)向量u,壓縮后的全局法方程系數(shù)矩陣B以及預(yù)條件矩陣M;S6、根據(jù)步驟S4中記錄的每一個(gè)子法方程系數(shù)矩陣在全局法方程系數(shù)矩陣B中的索引位置,將每一個(gè)子法方程系數(shù)矩陣?yán)奂又翂嚎s后的全局法方程系數(shù)矩陣B中,且將位置位于對(duì)角線上的子法方程系數(shù)矩陣同時(shí)累加至預(yù)條件矩陣M中,將所有法方程常數(shù)項(xiàng)子向量累加至全局法方程常數(shù)項(xiàng)向量c中,得到完整的全局法方程常數(shù)項(xiàng)向量c,作為S8中殘差向量s的初值;S7、對(duì)預(yù)條件矩陣M中的每一個(gè)子塊分別求逆并乘以全局法方程常數(shù)項(xiàng)向量c中對(duì)應(yīng)的子塊,得到矩陣-向量積M-1c的一個(gè)分量,并將這個(gè)分量累加至矩陣-向量積M-1c中對(duì)應(yīng)的位置,所有分量處理完畢后,得到完整的矩陣-向量積M-1c,作為步驟S8共軛梯度法迭代中方向向量d的初始值;S8、進(jìn)入預(yù)條件共軛梯度法迭代流程:對(duì)未知數(shù)改正數(shù)向量u、殘差向量s以及方向向量d進(jìn)行初始化;S9、將壓縮后的全局法方程系數(shù)矩陣B中的每一塊子法方程系數(shù)矩陣與方向向量d中對(duì)應(yīng)子塊相乘,得到矩陣-向量積Bd的一個(gè)分量,并將這些分量累加至矩陣-向量積Bd中對(duì)應(yīng)的位置,所有分量處理完畢后,得到完整的矩陣-向量積Bd;S10、根據(jù)預(yù)條件共軛梯度算法,以及本次迭代中的未知數(shù)改正數(shù)向量u,殘差向量s,方向向量d,預(yù)條件矩陣M以及全局法方程系數(shù)矩陣B,計(jì)算新的未知數(shù)改正數(shù)向量u、新的殘差向量s以及新的方向向量d;S11、判斷此次預(yù)條件共軛梯度迭代是否符合預(yù)定收斂條件,若符合,則結(jié)束預(yù)條件共軛梯度迭代,輸出新的未知數(shù)改正數(shù)向量u,執(zhí)行步驟S12;否則,返回步驟S8;S12、判斷此次區(qū)域網(wǎng)平差迭代是否符合預(yù)定收斂條件,若符合,則結(jié)束區(qū)域網(wǎng)平差迭代,執(zhí)行步驟S13,否則,返回步驟S5;S13、根據(jù)步驟S11中輸出的新的未知數(shù)改正數(shù)向量u,更新所有的未知數(shù)數(shù)值,并輸出所有的未知數(shù)數(shù)值。本發(fā)明提供的一種基于稀疏塊狀矩陣壓縮存儲(chǔ)結(jié)構(gòu)的預(yù)條件共軛梯度區(qū)域網(wǎng)平差方法,采用一種大規(guī)模稀疏矩陣壓縮存儲(chǔ)算法,對(duì)大數(shù)據(jù)區(qū)域網(wǎng)平差中產(chǎn)生的大規(guī)模法方程進(jìn)行壓縮存儲(chǔ)和運(yùn)算,有效減少對(duì)內(nèi)存的需求,同時(shí)針對(duì)壓縮矩陣的求逆問(wèn)題,引入預(yù)條件共軛梯度法迭代求解法方程,避免了對(duì)壓縮矩陣的直接求逆,克服了傳統(tǒng)區(qū)域網(wǎng)平差中對(duì)于大規(guī)模法方程的存儲(chǔ)和運(yùn)算難題,提高了數(shù)據(jù)處理容量和效率。本發(fā)明特別適用于中大型測(cè)區(qū)(500到10000張影像)數(shù)據(jù)的區(qū)域網(wǎng)平差。附圖說(shuō)明圖1為本發(fā)明實(shí)施例的一種基于稀疏塊狀矩陣壓縮存儲(chǔ)結(jié)構(gòu)的預(yù)條件共軛梯度區(qū)域網(wǎng)平差方法流程圖。具體實(shí)施方式以下結(jié)合附圖對(duì)本發(fā)明的原理和特征進(jìn)行描述,所舉實(shí)例只用于解釋本發(fā)明,并非用于限定本發(fā)明的范圍。實(shí)施例、一種基于稀疏塊狀矩陣壓縮存儲(chǔ)結(jié)構(gòu)的預(yù)條件共軛梯度區(qū)域網(wǎng)平差方法。下面結(jié)合圖1對(duì)本實(shí)施例提供的方法進(jìn)行說(shuō)明。參見(jiàn)圖1,本實(shí)施例提供的方法包括:S1、導(dǎo)入?yún)^(qū)域網(wǎng)平差計(jì)算所需要的原始數(shù)據(jù),其中,所述原始數(shù)據(jù)至少包括初始內(nèi)外方位元素?cái)?shù)據(jù)以及點(diǎn)位數(shù)據(jù);S2、對(duì)導(dǎo)入的所述原始數(shù)據(jù)進(jìn)行時(shí)空基準(zhǔn)統(tǒng)一,并統(tǒng)計(jì)未知數(shù)分組情況以及每一組未知數(shù)的個(gè)數(shù)。具體的,首先導(dǎo)入?yún)^(qū)域網(wǎng)平差計(jì)算需要的原始數(shù)據(jù),原始數(shù)據(jù)主要包括初始內(nèi)外方位元素?cái)?shù)據(jù)、連接點(diǎn)數(shù)據(jù)、控制點(diǎn)數(shù)據(jù)以及檢查點(diǎn)數(shù)據(jù)(有些時(shí)候不存在控制點(diǎn)數(shù)據(jù)和檢查點(diǎn)數(shù)據(jù)),其中,連接點(diǎn)數(shù)據(jù)、控制點(diǎn)數(shù)據(jù)以及檢查點(diǎn)數(shù)據(jù)統(tǒng)稱(chēng)為點(diǎn)位數(shù)據(jù)。對(duì)原始數(shù)據(jù)進(jìn)行預(yù)處理,具體包括對(duì)導(dǎo)入的原始數(shù)據(jù)進(jìn)行時(shí)空基準(zhǔn)統(tǒng)一,包括時(shí)間基準(zhǔn)統(tǒng)一和空間基準(zhǔn)統(tǒng)一,若原始數(shù)據(jù)中存在控制點(diǎn)數(shù)據(jù),還應(yīng)該將連接點(diǎn)物方坐標(biāo)以及初始外方位元素?cái)?shù)據(jù)的坐標(biāo)轉(zhuǎn)換至控制點(diǎn)數(shù)據(jù)所在的坐標(biāo)系內(nèi),以及計(jì)算并統(tǒng)計(jì)區(qū)域網(wǎng)平差計(jì)算過(guò)程中未知數(shù)分組的情況,每一組中未知數(shù)的個(gè)數(shù)以及需要用到的預(yù)條件矩陣M的類(lèi)型和大小等信息。本實(shí)施例中的預(yù)條件矩陣與法方程系數(shù)矩陣大小一致,但構(gòu)造簡(jiǎn)單,更易于求逆,使用其逆矩陣左乘法方程系數(shù)矩陣后,使得法方程系數(shù)矩陣的條件數(shù)減少,從而加快共軛梯度法求解法方程的迭代收斂速度,并保持收斂的穩(wěn)健性,常用的預(yù)條件矩陣有Jacobi預(yù)條件矩陣。S3、根據(jù)統(tǒng)計(jì)的未知數(shù)分組情況以及每一組未知數(shù)的個(gè)數(shù),構(gòu)建稀疏塊狀矩陣壓縮存儲(chǔ)結(jié)構(gòu)。具體的,步驟S2中計(jì)算并統(tǒng)計(jì)了本次區(qū)域網(wǎng)平差計(jì)算中未知數(shù)分組情況,即有多少組未知數(shù),每一組未知數(shù)的類(lèi)型相同,以及每一組中未知數(shù)的個(gè)數(shù),通常情況下每一組中未知數(shù)的個(gè)數(shù)是相同的,比如,本次區(qū)域網(wǎng)平差計(jì)算中有m組未知數(shù),每一組中有n個(gè)未知數(shù),則需要構(gòu)建的稀疏塊狀矩陣為m*m個(gè)塊組成的對(duì)稱(chēng)稀疏塊狀矩陣,其中,每個(gè)塊中包括n個(gè)元素。S4、逐點(diǎn)計(jì)算每個(gè)像點(diǎn)所生成的子法方程系數(shù)矩陣以及法方程常數(shù)項(xiàng)子向量,并計(jì)算每一個(gè)子法方程系數(shù)矩陣、法方程常數(shù)項(xiàng)子向量的大小以及它們?cè)谌址ǚ匠滔禂?shù)矩陣和全局法方程常數(shù)項(xiàng)向量中的索引位置。S5、進(jìn)入?yún)^(qū)域網(wǎng)平差迭代流程:初始化各類(lèi)變量,包括全局法方程常數(shù)項(xiàng)向量c,未知數(shù)向量u,壓縮后的全局法方程系數(shù)矩陣B以及預(yù)條件矩陣M;S6、根據(jù)步驟S3中記錄的每一個(gè)子法方程系數(shù)矩陣在全局法方程系數(shù)矩陣B中的索引位置,將每一個(gè)子法方程系數(shù)矩陣?yán)奂又翂嚎s后的全局法方程系數(shù)矩陣B中,且將位置位于對(duì)角線上的子法方程系數(shù)矩陣同時(shí)累加至預(yù)條件矩陣M中,將法方程常數(shù)項(xiàng)子向量累加至全局法方程常數(shù)項(xiàng)向量c中,得到完整的全局法方程常數(shù)項(xiàng)向量c,作為S8中殘差向量s的初值。首先,本實(shí)施例涉及的稀疏塊狀矩陣壓縮存儲(chǔ)技術(shù)如下:稀疏塊狀矩陣通常包含有很多零元素塊,這些零元素塊對(duì)矩陣的運(yùn)算沒(méi)有影響,因此可以放棄存儲(chǔ)這些零元素塊,僅存儲(chǔ)非零元素塊,若上述矩陣為對(duì)稱(chēng)矩陣時(shí),則只需要存儲(chǔ)上三角部分以及對(duì)角線部分的非零元素塊即可,如表1所示。當(dāng)稀疏塊狀矩陣中存在大量的零元素塊時(shí),此方法可以達(dá)到較高的壓縮效率,在攝影測(cè)量區(qū)域網(wǎng)平差中,其法方程系數(shù)矩陣通常就是一個(gè)零元素塊比例較高的稀疏塊狀對(duì)稱(chēng)矩陣,因此其法方程系數(shù)矩陣非常適合于采用本稀疏塊狀矩陣壓縮存儲(chǔ)結(jié)構(gòu)進(jìn)行壓縮存儲(chǔ)。為了在計(jì)算時(shí)準(zhǔn)確恢復(fù)非零元素塊在原始矩陣中的位置,還需要存儲(chǔ)這些非零元素塊的大小和位置,壓縮存儲(chǔ)結(jié)構(gòu)如表2所示。表1表1中由10*10個(gè)塊組成的對(duì)稱(chēng)稀疏塊狀矩陣,其中每個(gè)塊大小一樣,且都為6*6,空白區(qū)域?yàn)榱阍貕K,黑色塊和灰色塊均為非零元素塊,但僅黑色塊需要進(jìn)行存儲(chǔ)。表2為了測(cè)試本實(shí)施例中壓縮存儲(chǔ)方法的壓縮效率,分別統(tǒng)計(jì)表1中完整結(jié)構(gòu)和表2中壓縮結(jié)構(gòu)在計(jì)算機(jī)中存儲(chǔ)所需的內(nèi)存空間,其結(jié)果如表3所示。壓縮矩陣所需內(nèi)存空間僅是完整矩陣的15.83%,而隨著法方程的尺寸進(jìn)一步增大,矩陣中零元素塊占比增大,本方法的壓縮效率將會(huì)更高。表3表1和表2中的矩陣結(jié)構(gòu)在計(jì)算機(jī)中存儲(chǔ)所需的內(nèi)存對(duì)比本步驟S6具體的實(shí)施過(guò)程為:以物方點(diǎn)為單位,逐點(diǎn)構(gòu)建誤差方程、法方程以及改化法方程(本實(shí)施例中直接針對(duì)改化法方程進(jìn)行預(yù)條件共軛梯度法求解,為描述方便,下文中的改化法方程統(tǒng)一簡(jiǎn)稱(chēng)為法方程)。對(duì)每個(gè)點(diǎn)計(jì)算得到的子法方程(包括子法方程系數(shù)矩陣部分和常數(shù)項(xiàng)向量部分),對(duì)于其中的子法方程系數(shù)矩陣部分,根據(jù)步驟S3中記錄的每一個(gè)子法方程系數(shù)矩陣在全局矩陣中的索引位置,將每一個(gè)子法方程系數(shù)矩陣(包括上三角的子法方程系數(shù)矩陣和對(duì)角線上的子法方程系數(shù)矩陣)累加至壓縮后的全局法方程系數(shù)矩陣B中,對(duì)于位置處于對(duì)角線上的子法方程系數(shù)矩陣被同時(shí)累加至預(yù)條件矩陣M中,法方程常數(shù)項(xiàng)子向量部分被累加至全局法方程常數(shù)項(xiàng)向量c中。S7、對(duì)預(yù)條件矩陣M中的每一個(gè)子塊分別求逆并乘以法方程常數(shù)項(xiàng)向量c中對(duì)應(yīng)的子塊,得到矩陣-向量積M-1c的一個(gè)分量,并將這個(gè)分量累加至矩陣-向量積M-1c中對(duì)應(yīng)的位置,所有分量處理完畢后,得到完整的矩陣-向量積M-1c,作為步驟S8共軛梯度法迭代中方向向量d的初始值。S8、進(jìn)入預(yù)條件共軛梯度法迭代流程:對(duì)未知數(shù)改正數(shù)向量u、殘差向量s以及方向向量d進(jìn)行初始化;具體的,將未知數(shù)改正數(shù)向量u的初始值設(shè)置為0,將全局法方程常數(shù)項(xiàng)向量c作為預(yù)條件共軛梯度法迭代中殘差向量s的初始值,將矩陣-向量積M-1c作為預(yù)條件共軛梯度法迭代中方向向量d的初始值,進(jìn)入預(yù)條件共軛梯度迭代流程。S9、將壓縮后的法方程系數(shù)矩陣B中的每一塊子法方程系數(shù)矩陣與方向向量d中對(duì)應(yīng)的子塊相乘,得到矩陣-向量積Bd的一個(gè)分量,并將這些分量累加至全局矩陣-向量積Bd中對(duì)應(yīng)的位置,所有分量處理完畢后,得到完整的矩陣-向量積Bd。S10、根據(jù)預(yù)條件共軛梯度算法,以及本次迭代中的未知數(shù)改正數(shù)向量u,殘差向量s,方向向量d,預(yù)條件矩陣M以及全局法方程系數(shù)矩陣B,計(jì)算新的未知數(shù)改正數(shù)向量u、新的殘差向量s以及新的方向向量d。S11、判斷此次預(yù)條件共軛梯度迭代是否符合預(yù)定收斂條件,若符合,則結(jié)束預(yù)條件共軛梯度迭代,輸出新的未知數(shù)改正數(shù)向量u,執(zhí)行步驟S12;否則,返回步驟S8;具體的,統(tǒng)計(jì)步驟S10中計(jì)算得到的新的方向向量d中所有元素的絕對(duì)值最大值,若該絕對(duì)值最大值小于第一給定閾值或者迭代次數(shù)大于第二給定閾值,則結(jié)束預(yù)條件共軛梯度迭代,輸出新的未知數(shù)改正數(shù)向量u,執(zhí)行步驟S12,否則,返回步驟S8。本實(shí)施例中設(shè)置預(yù)條件矩陣,減少法方程系數(shù)矩陣的條件數(shù),加快迭代收斂速度,共軛梯度法的特征是無(wú)需對(duì)法方程系數(shù)矩陣進(jìn)行求逆,通過(guò)迭代搜索線性方程組的最優(yōu)解,且每次迭代搜索方向之間時(shí)互相共軛的,具有存儲(chǔ)量少,計(jì)算方便,收斂快等特點(diǎn)。S12、判斷此次區(qū)域網(wǎng)平差迭代是否符合預(yù)定收斂條件,若符合,則結(jié)束區(qū)域網(wǎng)平差迭代,執(zhí)行步驟S13,否則,返回步驟S5;具體的,統(tǒng)計(jì)步驟S11中輸出的新的未知數(shù)改正數(shù)向量u中所有元素的絕對(duì)值最大值,若該絕對(duì)值最大值小于第三給定閾值或者迭代次數(shù)大于第四給定閾值,則結(jié)束區(qū)域網(wǎng)平差迭代,執(zhí)行步驟S13,否則,返回步驟S5。S13、根據(jù)步驟S11中輸出的新的未知數(shù)改正數(shù)向量u,更新所有的未知數(shù)數(shù)值,并輸出所有的未知數(shù)數(shù)值。本方法涉及的利用預(yù)條件共軛梯度法迭代的區(qū)域網(wǎng)平差計(jì)算方法如下所示,具體包括以下幾個(gè)方面:1)影像幾何在經(jīng)典攝影測(cè)量幾何中,共線條件方程是區(qū)域網(wǎng)平差求解的基本方程,如式(1)-(4)所示,共線條件方程將像點(diǎn)坐標(biāo),相機(jī)的內(nèi)部參數(shù),相機(jī)的外部位置和姿態(tài)以及物方點(diǎn)坐標(biāo)聯(lián)系起來(lái),區(qū)域網(wǎng)平差過(guò)程就是以共線條件方程為基礎(chǔ)建立像點(diǎn)觀測(cè)值方程,然后建立法方程,通過(guò)求解法方程得到未知數(shù)的估計(jì)值。其中,(X,Y,Z)是地面點(diǎn)P的物方坐標(biāo),(x,y)是對(duì)應(yīng)的像點(diǎn)坐標(biāo),(Xs,Ys,Zs,phi,omega,kappa)為相機(jī)的外方位元素,f為相機(jī)的焦距,(x0,y0)為相機(jī)的主點(diǎn)偏移,(k1,k2)為相機(jī)鏡頭的畸變參數(shù)。2)構(gòu)建誤差方程和法方程對(duì)每個(gè)像點(diǎn)觀測(cè)值根據(jù)上述共線方程列出誤差方程:v=Ax-l(5)其中v為觀測(cè)值殘差向量,A為法方程系數(shù)矩陣,由觀測(cè)值方程對(duì)未知數(shù)求一階偏導(dǎo)得到,x為未知數(shù)改正數(shù)向量,l為誤差方程常數(shù)項(xiàng)向量,由像點(diǎn)坐標(biāo)的計(jì)算值減去像點(diǎn)坐標(biāo)觀測(cè)值得到。根據(jù)式(5)可以列出法方程:ATAx=ATl(6)為了加強(qiáng)法方程求解的穩(wěn)定性,引入一個(gè)阻尼項(xiàng)(Dampingterm)λD,避免法方程的奇異性對(duì)求解造成不穩(wěn)定影響,新的法方程如下所示:(ATA+λD)x=ATl(7)其中λ為阻尼系數(shù),其取值范圍為(0,1),矩陣D是一個(gè)對(duì)角矩陣,對(duì)角線上的元素與矩陣ATA的對(duì)角線上元素相等,根據(jù)每次迭代的結(jié)果可改變?chǔ)说娜≈?,以增?qiáng)法方程的穩(wěn)定性。3)改化法方程法方程系數(shù)矩陣A可以被分成兩個(gè)部分,相機(jī)參數(shù)(包括內(nèi)參數(shù)和外參數(shù))部分和地面點(diǎn)坐標(biāo)部分,因而矩陣A可以寫(xiě)作A=[ACAP],其中AC代表相機(jī)參數(shù)部分,AP代表地面點(diǎn)坐標(biāo)部分。同理可以得到,D=[DCDP],x=[xcxp],此時(shí),方程(7)可以表示為以下形式:令則可得到下式:其中,VC和VP都是塊對(duì)角矩陣,一般情況下,地面點(diǎn)坐標(biāo)未知數(shù)遠(yuǎn)遠(yuǎn)大于相機(jī)參數(shù)未知數(shù)個(gè)數(shù),因此可以采用基于塊狀矩陣的高斯消元法,將地面點(diǎn)坐標(biāo)未知數(shù)消元,得到改化后的法方程:VPxp=bp-WTuc(11)其中,既是改化后的法方程系數(shù)矩陣,此時(shí),相機(jī)參數(shù)未知數(shù)xc可以通過(guò)求解改化法方程(10)得到,地面點(diǎn)未知數(shù)xp則可以根據(jù)回代方程(11)計(jì)算得到。由于VP是塊對(duì)角矩陣,因此其逆矩陣可以通過(guò)分塊求逆的方法快速計(jì)算得到。假設(shè)相機(jī)個(gè)數(shù)為m,地面點(diǎn)個(gè)數(shù)為n,則改化之前的法方程系數(shù)矩陣大小為(6m+3n)*(6m+3n),改化后的法方程系數(shù)矩陣的大小為6m*6m,由于地面點(diǎn)個(gè)數(shù)n通常是一個(gè)較大的值,因此改化后的法方程大幅減少了法方程的大小,增加了數(shù)據(jù)處理容量,提高了求解效率。4)共軛梯度法共軛梯度法(ConjugateGradients)是求解大型線性方程組的有效方法,該方法是由Hestenes和Stiefel在1952提出,其主要優(yōu)點(diǎn)就是無(wú)需存儲(chǔ)大規(guī)模的法方程,而只需要多次計(jì)算矩陣與向量的乘積即可,通過(guò)迭代搜索的方法,獲取線性方程組的最優(yōu)解。本發(fā)明對(duì)改化的法方程采用共軛梯度法求解,將式(10)改寫(xiě)為下式:Bu=c(12)其中u=xc(14)共軛梯度法的基本思想是采用迭代搜索的辦法求解線性方程組的最優(yōu)解。對(duì)于改化法方程(12)的求解,首先給定初始的未知數(shù)向量u0,然后利用線性方程組系數(shù)矩陣、常數(shù)項(xiàng)矩陣以及上述向量u0,采用共軛梯度算法計(jì)算新的未知數(shù)向量u1,如此反復(fù)循環(huán)迭代,當(dāng)滿(mǎn)足迭代收斂條件之后退出,此時(shí)得到的未知數(shù)向量un即為線性方程組的最優(yōu)解,n為迭代收斂次數(shù)。采用上述方法進(jìn)行迭代求解時(shí),其理論迭代收斂次數(shù)為法方程系數(shù)矩陣B的條件數(shù),為了進(jìn)一步提高迭代收斂次數(shù),可以通過(guò)引入預(yù)條件矩陣M的方法,降低法方程系數(shù)矩陣B的條件數(shù),從而減少收斂所需的迭代次數(shù)。5)預(yù)條件共軛梯度法預(yù)條件共軛梯度法就是在共軛梯度法的基礎(chǔ)上,在線性方程組系數(shù)矩陣之前,左乘一個(gè)預(yù)條件矩陣的逆M-1,以達(dá)到降低線性方程組系數(shù)矩陣的條件數(shù)的目的,從而提高收斂速度,對(duì)改化的法方程(12)引入預(yù)條件矩陣后,法方程變?yōu)?M-1Bu=M-1c(16)此時(shí)改化法方程系數(shù)矩陣的條件數(shù)變?yōu)榫仃嘙-1B的條件數(shù),預(yù)條件矩陣M的選取原則是構(gòu)造簡(jiǎn)單,易于求逆,且能夠有效減少改化法方程系數(shù)矩陣的條件數(shù)。本發(fā)明選取的預(yù)條件矩陣為Jacobi預(yù)條件矩陣,該矩陣由改化法方程對(duì)角線上的塊狀矩陣構(gòu)成,出對(duì)角線上的塊狀矩陣外,其余元素均為0,該矩陣構(gòu)造較為簡(jiǎn)單,對(duì)其進(jìn)行求逆運(yùn)算時(shí),采用分塊求逆的算法,可大幅提高求逆效率,且該矩陣能夠有效減少改化法方程系數(shù)矩陣的條件數(shù),因此是一個(gè)較為理想的預(yù)條件矩陣。預(yù)條件共軛梯度法的具體流程和計(jì)算公式如下:給定一般線性方程組:Bu=c;給定預(yù)條件矩陣:M;設(shè)定初始值:u0;s0=c-Bu0=c;d0=M-1s0=M-1c;k=0;While|sk|<Threshold1:2:xk+1=xk+αkdk3:sk+1=sk-αkBdk4:5:dk+1=M-1sk+1+βkdk6:k=k+1本發(fā)明提供的一種基于稀疏塊狀矩陣壓縮存儲(chǔ)結(jié)構(gòu)的預(yù)條件共軛梯度區(qū)域網(wǎng)平差方法,采用一種大規(guī)模稀疏矩陣壓縮存儲(chǔ)算法,對(duì)大數(shù)據(jù)區(qū)域網(wǎng)平差中產(chǎn)生的大規(guī)模法方程進(jìn)行壓縮存儲(chǔ)和運(yùn)算,有效減少對(duì)內(nèi)存的需求,同時(shí)針對(duì)壓縮矩陣的求逆問(wèn)題,引入預(yù)條件共軛梯度法迭代求解法方程,避免了對(duì)壓縮矩陣的直接求逆,克服了傳統(tǒng)區(qū)域網(wǎng)平差中對(duì)于大規(guī)模法方程的存儲(chǔ)和運(yùn)算難題,提高了數(shù)據(jù)處理容量和效率。本發(fā)明特別適用于中大型測(cè)區(qū)(500到10000張影像)數(shù)據(jù)的區(qū)域網(wǎng)平差。在本說(shuō)明書(shū)的描述中,參考術(shù)語(yǔ)“實(shí)施例一”、“示例”、“具體示例”、或“一些示例”等的描述意指結(jié)合該實(shí)施例或示例描述的具體方法、裝置或者特點(diǎn)包含于本發(fā)明的至少一個(gè)實(shí)施例或示例中。在本說(shuō)明書(shū)中,對(duì)上述術(shù)語(yǔ)的示意性表述不必須針對(duì)的是相同的實(shí)施例或示例。而且,描述的具體特征、方法、裝置或者特點(diǎn)可以在任一個(gè)或多個(gè)實(shí)施例或示例中以合適的方式結(jié)合。此外,在不相互矛盾的情況下,本領(lǐng)域的技術(shù)人員可以將本說(shuō)明書(shū)中描述的不同實(shí)施例或示例以及不同實(shí)施例或示例的特征進(jìn)行結(jié)合和組合。以上所述僅為本發(fā)明的較佳實(shí)施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。