本書按照新時期“雙一流”學科建設課程的教學大綱要求編寫而成,在簡要介紹C++程序設計語言和測量平差數學模型的基礎上,討論各種平差方法的程序設計原理、編程思路、編程技巧,并給出完整的程序代碼和應用算例。本書以自編能夠實現水準網、平面控制網、GNSS向量網、攝影測量數據處理及點云數據處理等通用平差計算程序為主線,完整、系統(tǒng)、循序漸進地闡述測量平差計算的數學模型和程序實現方法,將對培養(yǎng)和提高學生的學習興趣及分析問題和解決問題的能力起到較大作用。
更多科學出版社服務,請掃碼獲取。
目錄
第1章 平差理論 1
1.1 條件平差 1
1.1.1 條件平差原理及步驟 1
1.1.2 條件方程及其線性化 3
1.1.3 精度評定 6
1.2 間接平差 8
1.2.1 間接平差原理及步驟 8
1.2.2 間接平差在測量中的應用 9
1.2.3 精度評定 12
1.3 誤差橢圓 13
1.3.1 點位中誤差 13
1.3.2 點位任意方向的位差 14
1.3.3 誤差曲線 15
1.3.4 誤差橢圓 15
1.4 Helmert方差分量 16
1.4.1 Helmert方差分量估計過程 16
1.4.2 Helmert方差分量估計步驟 17
第2章 程序設計基礎 18
2.1 算法與流程圖 18
2.1.1 算法 18
2.1.2 流程圖 18
2.2 文件 20
2.2.1 標準C++文件操作函數 20
2.2.2 I/O文件流類fstream 21
2.2.3 文件操作 23
2.2.4 示例 23
2.3 樹與圖 26
2.3.1 樹 26
2.3.2 圖 27
2.4 圖形開發(fā)基礎 28
2.4.1 坐標系統(tǒng) 28
2.4.2 GDI繪圖 28
2.4.3 誤差橢圓繪制 31
第3章 測量平差數據結構 36
3.1 角度類 37
3.2 矩陣類 40
3.3 控制點類 48
3.4 觀測值類 49
3.5 控制網類 49
3.6 平差類 50
第4章 測量平差輔助工具 52
4.1 算法設計 52
4.1.1 坐標方位角 52
4.1.2 大地坐標與空間直角坐標轉換 52
4.1.3 大地主題正反算 53
4.1.4 高斯投影正反算 54
4.1.5 平面坐標轉換 55
4.1.6 空間直角坐標轉換 55
4.1.7 圖幅號計算 55
4.1.8 基本比例尺代碼及經緯差 55
4.2 流程圖 56
4.2.1 坐標方位角 56
4.2.2 大地坐標與空間直角坐標轉換 56
4.2.3 大地主題正反算 56
4.2.4 高斯投影正反算 56
4.2.5 平面坐標轉換 58
4.2.6 空間直角坐標轉換 59
4.2.7 圖幅號計算 59
4.3 主要函數設計及說明 60
4.3.1 坐標方位角計算 60
4.3.2 大地坐標與空間直角坐標轉換 60
4.3.3 大地主題正反算 63
4.3.4 高斯投影正反算 67
4.3.5 平面坐標轉換 70
4.3.6 空間直角坐標轉換 70
4.3.7 圖幅號計算 71
4.4 示例 72
4.4.1 坐標方位角計算 72
4.4.2 大地坐標與空間直角坐標轉換 73
4.4.3 大地主題正反算 73
4.4.4 高斯投影正反算 74
4.4.5 平面坐標轉換 74
4.4.6 空間直角坐標轉換 74
4.4.7 換帶計算 75
第5章 水準網平差 76
5.1 數學模型 76
5.1.1 誤差方程式 76
5.1.2 觀測權 77
5.1.3 法方程 77
5.1.4 精度評定 78
5.1.5 水準網間接平差計算步驟 78
5.2 水準平差類設計 79
5.2.1 類設計 79
5.2.2 成員函數 79
5.3 數據文件格式及存儲 80
5.3.1 數據文件格式 80
5.3.2 數據存儲 82
5.4 近似高程計算 86
5.4.1 近似高程計算步驟 86
5.4.2 ComputeCoordinate函數 87
5.5 水準路線簡易平差 88
5.5.1 數據組織與存儲 89
5.5.2 計算過程 89
5.6 水準間接平差 90
5.6.1 誤差方程組成 90
5.6.2 平差處理過程 92
5.7 閉合差檢驗 94
5.7.1 Dijkstra算法 94
5.7.2 水準路線 97
5.7.3 示例 100
5.8 自由網平差 101
5.8.1 自由網平差公式 101
5.8.2 程序設計 102
第6章 平面控制網平差 103
6.1 數學模型 103
6.1.1 誤差方程 103
6.1.2 平面控制網間接平差計算步驟 104
6.2 平面控制網平差類設計 104
6.2.1 CugPlainAdjust類定義 104
6.2.2 成員函數 105
6.3 數據文件格式及導入 106
6.3.1 數據文件格式 106
6.3.2 數據導入 109
6.3.3 Read函數設計 109
6.4 近似坐標計算 110
6.4.1 邊角網 111
6.4.2 測角網 114
6.4.3 測邊網 116
6.5 平差處理 116
6.5.1 誤差方程組成 116
6.5.2 平差處理過程 123
6.5.3 誤差橢圓繪制 124
6.6 示例 125
第7章 GNSS向量網平差 127
7.1 數學模型 127
7.2 GNSS向量網平差類設計 128
7.2.1 CugGNSSVecAdj類定義 128
7.2.2 協因數陣CugCovariance類定義 129
7.2.3 誤差方程CugErrorEQ類定義 129
7.2.4 法方程CugNormEQ類定義 130
7.2.5 精度評定CugAccuracy類定義 130
7.2.6 結果輸出CugResOutput類定義 130
7.3 程序流程圖 130
7.4 數據文件格式及導入 131
7.4.1 數據文件格式 131
7.4.2 數據導入 132
7.5 示例 133
7.5.1 同步環(huán) 133
7.5.2 異步環(huán) 134
第8章 攝影測量數據處理 135
8.1 單像空間后方交會 135
8.1.1 單像空間后方交會原理 135
8.1.2 程序流程圖 139
8.1.3 核心代碼 140
8.2 空間前方交會 143
8.2.1 空間前方交會原理 143
8.2.2 程序流程圖 144
8.2.3 核心代碼 145
8.3 解析法像對的相對定向 147
8.3.1 相對定向原理 147
8.3.2 連續(xù)法相對定向程序流程圖 153
8.3.3 單獨法相對定向程序流程圖 154
8.3.4 核心代碼 155
8.4 解析法模型的絕對定向 160
8.4.1 絕對定向原理 160
8.4.2 絕對定向計算步驟 165
8.4.3 核心代碼 166
8.5 特征提取及影像匹配 170
8.5.1 特征提取 170
8.5.2 相關系數影像匹配 176
8.5.3 最小二乘影像匹配 180
8.6 基于移動曲面擬合法的DEM生成 186
8.6.1 移動曲面擬合原理 186
8.6.2 核心代碼 187
第9章 點云數據處理 192
9.1 LAS文件結構及代碼實現 192
9.1.1 LAS文件結構 192
9.1.2 代碼實現(C#版)193
9.2 KD樹點云數據索引 197
9.3 濾波 198
9.3.1 面向地形構建的濾波 198
9.3.2 基于數學形態(tài)學的濾波 198
9.3.3 漸進加密三角網濾波 199
9.4 DEM與DSM生成 200
9.4.1 GRID建立 201
9.4.2 不考慮特殊地貌和地物的TIN建立 201
9.4.3 考慮特殊地貌和地物的TIN建立 203
9.5 建筑物特征提取 204
9.5.1 室內頂部點云探測 204
9.5.2 房間天花板點云提取 205
9.5.3 門口和窗戶點云提取 206
9.6 森林參數提取 208
9.6.1 聚類法森林點云提取 208
9.6.2 基于生長模型的樹分割 209
9.6.3 森林參數信息提取 210
參考文獻 213