摄影测量航带设计程序
程序效果图:
已知条件:
需要测绘某地区的1:2000地形图,该地区的地面四角平面坐标分别为:左下角(0,0),右下角(0,7360),左上角(12880,0),右上角(12880,7360)。地面平均高程为750m。现采用1:8000比例尺的航空摄影,航摄相机主距f=150mm,像幅大小为23cm×23cm。
在上述条件下,飞机航摄飞行速度为200km/h,要求满足60%的影像航向重叠度和30%的影像旁向重叠度,第1航带中飞机飞行方向为自西向东,第1摄站摄影中心的平面坐标位置为(-368.000,184.000),第2航带中飞机飞行方向则为自东向西,以此类推。假设飞机为水平飞行、垂直摄影,并且不考虑地面起伏影响。
(上述条件中若无特别注明,平面坐标的单位均为m。)
计算:
1)飞机在每个航带航摄飞行过程中,相邻像片曝光拍摄的时间间隔应为多少?
如下图所示,设飞机沿航向飞行x千米相机曝光一次。
由题意可得
Px%=Px/lx=Px/23cm=60% 则 Px=13.8cm
(lx-Px)·10-5km/x=1/8000 则 x=0.736km
则相邻相片曝光时间间隔t=x/v=0.736km/200km/h=13.248s
2)航带内相邻两像片航摄基线长度为多少?
如下图所示,设航带内相邻两像片航摄基线长度为L。
则依题意及上图可得
[Px-2(Px-lx·50%)]/L=1/8000
即 [13.8cm-2(13.8cm-23cm*50%)]/L=1/8000 则 L=736m
3)完成对上述整个地区进行航空摄影的航带设计,即:设计并计算对上述整个地区进行航摄时各个摄站摄影中心的三维坐标位置。
通过比例尺计算可得,航向方向两相邻摄影站间的距离为736m,由题意可知,航向方向为x轴方向,则y轴方向上两相邻摄影站的距离通过同样的方法也可以算出,距离为1288m。
设航高为H。则 150mm/H=1/8000 即 H=1200m 所以摄站点Z轴坐标都为1200
X坐标和Y坐标通过编程计算出。程序截图:
计算结果:
程序主要代码:
void CSheYingHangXianSheJiDlg::OnBnClickedOk()
{UpdateData(true);int c = m.GetLength();double M = _wtof(m.Right(c - 2));double H = _wtof(Str_f)*M / 1000.0;int n = Str_LxLy.Find(_T("*"));CString str_Lx = Str_LxLy.Left(n);double dLx = _wtof(str_Lx)*M;int k = Str_LxLy.GetLength();CString str_Ly = Str_LxLy.Right(k - n - 1);double dLy = _wtof(str_Ly)*M;double Px = _wtof(Str_Px) / 100 * _wtof(str_Lx);double Py = _wtof(Str_Py) / 100 * _wtof(str_Ly);double Lx = Px - 2 * (Px - _wtof(str_Lx) / 2);double Ly = _wtof(str_Ly) / 2 - Py + _wtof(str_Ly) / 2;Lx = Lx*M / 100;Ly = Ly*M / 100;int index = S0.Find(_T(","));CString str1 = S0.Left(index);int j = str1.GetLength();CString str_X0 = str1.Right(j - 1);int i = S0.GetLength();CString str2 = S0.Right(i - index - 1);int d = str2.GetLength();CString str_Y0 = str2.Left(d - 1);double Sx[100][100];double Sy[100][100];double maxX = _wtof(Str_maxX);double maxY = _wtof(Str_maxY);int hang = 0;Sx[0][0] =_wtof( str_X0);int lie = 0;Sy[0][0] =_wtof(str_Y0);while (Sx[0][lie] < maxX){lie++;Sx[0][lie] = Sx[0][lie - 1] + Lx;}while (Sy[hang][0] < maxY){hang++;Sy[hang][0] = Sy[hang - 1][0] + Ly;}for (int ii = 0; ii <= hang; ii++)for(int jj = 0; jj <= lie; jj++){Sx[ii][jj] = Sx[0][jj];Sy[ii][jj] = Sy[ii][0];}CString str3 = _T("");CString Coordernate = _T("");int index2 = 0;int ii = 0;int jj = 0;int ncount = 0;for (ii = 0; ii <= hang; ii++)for (jj = 0; jj <= lie;jj++){if(jj%6==0)Coordernate +=_T("\r\n");if(ii%2==0)str3.Format(_T("S%d(%.1f,%.1f) "), ncount, Sx[ii][jj], Sy[ii][jj]);else str3.Format(_T("S%d(%.1f,%.1f) "), ncount, Sx[ii][lie-jj], Sy[ii][lie-jj]);ncount++;Coordernate += str3;
}coordernat= Coordernate;MessageBox(Coordernate,_T("摄站坐标计算结果"));UpdateData(false);
}void CSheYingHangXianSheJiDlg::OnBnClickedButton1()
{if (coordernat == _T("")){MessageBox(_T("请先计算再保存"), _T("提示"));return;}else{CFileDialog dlgSaveFile(FALSE, _T("txt"), _T("result"), OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, _T("(文本文件)|*.txt|(所有文件)|*.*||")); //创建保存文件对话框if (dlgSaveFile.DoModal() == IDCANCEL) return;//如果选择取消按钮,则退出CString strSavePath = dlgSaveFile.GetPathName();//获取选择的文件的名称CStdioFile sw;if (!sw.Open(strSavePath, CFile::modeCreate | CFile::modeWrite)){MessageBox(_T("错误"));return;}sw.WriteString(coordernat);sw.Close();MessageBox(_T("保存成功!"), _T("提示"));}
}
摄影测量航带设计程序相关推荐
- 摄像头线性矫正的c语言实现,摄影测量考试试题及详细答案
1摄影测量学 2航向重叠 3单像空间后方交会 4相对行高 5像片纠正 6解析空中三角测量 7透视平面旋转定律 8外方位元素 9核面 10绝对定向元素 一.填空 1摄影测量的基本问题,就是将______ ...
- 摄影测量(二):航空摄影
摄影测量的成像方式:中心投影 一.传感器 1. 胶片航摄仪AFC(Aerial Film Camera) 摄影原理:小孔成像 量测用摄影机的特殊要求: 物镜具有良好的光学特性:畸变差小,分辨率高,透光 ...
- 一篇文章带你了解!什么是贴近摄影测量
贴近摄影测量是由武汉大学遥感信息工程学院张祖勋院士于2018年提出,一种新的摄影测量的数据获取方式. 当时提出的目的是针对滑坡和危岩的数据获取,例如长江三峡有一块危岩,叫做[箭穿洞]. 在这个三峡库区 ...
- 摄影测量期末复习cumt
前言:以上是本人在期末复习时整理比较重要(不太全)的笔记,有些细节的内容还需要自己看课本复习. 不懂的可以看mooc,范老师讲的非常好 第一章 摄影测量的定义:看老师ppt 摄影测量的分类: 按照平台 ...
- 张祖勋:摄影测量的信息化与智能化
摄影测量经过了模拟.解析到数字 3 个发展阶 段,而数字摄影测量由1992 年17 届华盛顿ISPRS 大 会到2012 年22 届墨尔本ISPRS 大会,经历了20 年的 发展.它大致可分为 3 个 ...
- 初步去了解——摄影测量
摄影测量学的定义和任务 摄影测量[photogrammetry]指的是通过影像研究信息的获取.处理.提取和成果表达的一门信息科学. 传统摄影测量学定义:是利用光学摄影机获取的像片,经过处理以获取被摄物 ...
- 激光雷达与摄影测量相结合如何提高点云质量?
是否可以通过将激光雷达与摄影测量技术相结合来提高点云的准确性和密度?激光雷达数据可以穿透树木并测量阴影区域以生成非常准确的点云.被动成像相机衍生出更详细的 3D 模型并使用多光谱信息对点云进行编码,从 ...
- 从计算机视觉(slam)和摄影测量两个维度进行BA算法原理推导
点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 摄影测量作为历史悠久的学科,在3D视觉里面很多算法发挥着重要的作用:而slam 的出现对摄影测量是某种 ...
- 摄影测量(计算机视觉)中的三角化方法
提到三角化大家都十分熟悉,在CV 领域中,由像点计算物点的过程称为三角化,但在摄影测量领域,其称作为前方交会.值得注意的是单张影像是无法恢复像点的三维坐标,至少需要两张影像才能得到像素点的真实坐标(这 ...
最新文章
- 微服务网关Gateway
- Java新特性:数据类型可以扔掉了?
- php概率计算_替你总结一份MIT计算机课程
- twisted系列教程六–继续重构twisted poetry client
- dva源码解析(一)
- Helios Service Release 2安装SVN
- 解决DesignMode不能正确反应是否处于设计模式的问题
- mysql必知必会第一节
- IIS 7管理API——Microsoft.Web.Administration介绍
- jquery系列教程1-选择器全解
- 百战学堂python教学文档_尚学堂百战程序员:python对文件的操作
- 先验 超验_经验、先验、超验
- 美国交通信号配时实践经验
- redis实现单点登录系统
- 分布式文件系统:原理、问题与方法
- proteus电路仿真软件使用方法
- cocos2d-x Tile Map 教程(一)
- 第11课:JSP指令 Include指令 Taglib指令 (JSP教程 JSP入门实战教程 黄菊华Java网站开发系列教程)
- new DecimalFormat(#0.###)中0与#
- hdu 4405 全期望公式
热门文章
- 关于px/rem/vw 之间的换算关系
- 深度总结 | 知识蒸馏在推荐系统中的应用
- Cris 带你快速入门 Flink
- SIKI学院:MySQL数据库从零到精通:二十三:课时 27 : 26-数据库的备份和恢复+课时 28 : 27-结语
- 计算机组装配件选择,组装电脑选配件时需要注意哪几方面?
- 查看域名证书到期时间
- 【Yolact训练自己的数据从实战到调参】
- vgg16卷积层的计算量_卷积神经网络VGG16详解
- 基于用户的协同过滤算法详解
- 波形分辨率与FFT分辨率的区别