2019年C题 视觉情报信息分析
2019 年第十六届中国研究生数学建模竞赛C 题
任务1中 图三:图3 中拍照者距离地面的高度

目录:
0.试题分析:
1.构建摄像机模型
2.摄像机参数假定
3.像平面坐标计算
4.图像标定及数值测量
5.计算
6.总结其中误差
0.试题分析:
试题涉及内容为:图像处理之图像理解——摄像机成像
1.构建摄像机模型:
一般摄像机模型(世界坐标系统与摄像机坐标系统不重合时的投影成像示意图)



摄像机观察3D 场景示意图

2.摄像机参数假定:
设摄像头中心位置为(0,0,1),摄像机的焦距为0.05m,扫视角为135度(考虑广角镜头:视角在90度以上),倾斜角为135度,目的为了确定此时空间中的点(1,1,0)的像平面坐标。
即:λ=0.05;γ=135度;α=135度;Dx=0;Dy=0;Dz=1;X=1;Y=1;Z=1
3.像平面坐标计算:
代入1中最后的公式计算得:x = 0 m,y = 0.00884 m

4.图像标定及数值测量

此图像为525像素*394像素,即13.89厘米*10.42厘米。而我的计算机屏幕目前放置此图片大小为26厘米*19.5厘米。

在图片正中间选中如图所示的区域。此区域是矩形,在26厘米*19.5厘米去测量,大概上边的边是汽车的车尾到车头右侧的距离:3.4 cm,下边的是马路两个栅栏的距离:3.6 cm。
求平均:(3.4 cm+3.6 cm)/2 = 3.5 cm
实际估算(世界坐标系下):汽车的车尾到车头右侧的距离4.2 m,下边的是马路两个栅栏的距离2 m。此考虑的是实际的水平长度。
求平均:(4.5 m+ 2 m)/2 = 3.25 m

这里有个偏差需要注意,就是栏杆和车都不是与图片上下边界(即所圈出的长方形边界)平行,而是有一定的旋转角度,这个需要考虑:
圈出图片左下角,去计算偏离的角度:在26厘米*19.5厘米去测量,斜边为8.5 cm,下边的那条直角边为7.5 cm;
所以夹角θ余弦为:7.5/8.5=0.882。
所以实际的水平距离是:3.5 cm * 0.882 = 3.087cm
实际的图片中斜的长度:3.25 m /0.882 = 3.685m

5.计算
图像尺寸:13.89厘米*10.42厘米
实际(我测量用的)26厘米*19.5厘米
考虑水平方向,所以图片中矩形框中间部分的长度为:13.89 cm * 3.087cm / 26cm = 1.649 cm
由3.像平面坐标计算:最后的公式计算得:x = 0 m,y = -0.00884 m,去估算水平距离。
由比例公式得:
3.685m — — 1.649 cm
X — — 0.00884 m
3.685m = 368.5 cm, 所以 X = 368.5 cm * 0.00884 m / 1.649 cm = 1.975 m
6.总结其中误差
1)用0.00884 m去估算水平距离存在误差
2)图片中心标注不准确,矩形框计算比较粗略,存在误差
3)还有两个因素未考虑:摄像头镜头的失真和计算机中使用的图像坐标单位是离散的像素,所以对像平面的坐标计算需要取整。
4)参数估计中:摄像机参数,栏杆长度,汽车长度的参数估计有偏差。
参考:
1.数字图像处理(第三版)——冈萨雷斯
2.图像工程(第四版)——章毓晋
2019年C题 视觉情报信息分析的更多相关文章
- $2019$ 暑期刷题记录1:(算法竞赛DP练习)
$ 2019 $ 暑期刷题记录: $ POJ~1952~~BUY~LOW, BUY~LOWER: $ (复杂度优化) 题目大意:统计可重序列中最长上升子序列的方案数. 题目很直接的说明了所求为 $ L ...
- DA - 信息分析思路概要
要素 局部 --->整体 显性 --->隐性 表面 --->本质 割裂 --->联系 特殊 --->普遍 串行 --->并发 纵向 --->横向 单点 --- ...
- javaweb学习总结十九(http协议概述以及http请求信息分析)
一:http协议概述 1:http协议定义 2:使用telnet程序连接web服务器,获取资源 3:http协议:超文本传输协议,它是基于tcp/ip协议,就是建立在tcp/ip之上工作的, http ...
- linux驱动调试--段错误之oops信息分析
linux驱动调试--段错误之oops信息分析 http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=29401328&id= ...
- 基于‘BOSS直聘的招聘信息’分析企业到底需要什么样的PHP程序员
原文地址:http://www.jtahstu.com/blog/scrapy_zhipin_php.html 基于'BOSS直聘的招聘信息'分析企业到底需要什么样的PHP程序员 标签(空格分隔): ...
- Info - 信息分析思路概要
信息分析要素 局部 --->整体 显性 --->隐性 表面 --->本质 割裂 --->联系 特殊 --->普遍 串行 --->并发 纵向 --->横向 单点 ...
- 网页图表Highcharts实践教程标之添加题副标题版权信息
网页图表Highcharts实践教程标之添加题副标题版权信息 Highcharts辅助元素 辅助元素图表的非必要元素,如标题.版权信息.标签.载入动态.它们不和图表数据发生关联,只是额外说明一些基本信 ...
- 多线程_java多线程环境下栈信息分析思路
导读:Java多线程开发给程序带来好处的同时,由于多线程程序导致的问题也越来越多,而且对问题的查找和分析解决对于菜鸟程序原来是是件头疼的事.下面我就项目中使用多线程开发程序过程中遇到的问题做详细的分析 ...
- 网页图表Highcharts实践教程标之加入题副标题版权信息
网页图表Highcharts实践教程标之加入题副标题版权信息 Highcharts辅助元素 辅助元素图表的非必要元素.如标题.版权信息.标签.加载动态.它们不和图表数据发生关联,仅仅是额外说明一些基 ...
随机推荐
- getchwd() 函数返回当前工作目录。
getchwd() 函数返回当前工作目录.
- RabbitMQ简单Java示例——生产者和消费者
添加Maven依赖: 使用rabbitmq-client的最新Maven坐标: <!-- https://mvnrepository.com/artifact/com.rabbitmq/amqp ...
- node.js运行内存堆溢出的解决办法
我是在将一组80多列13万多行的数据通过node-xlsx的时候出现的内存堆溢出的情况. 解决办法时将: node app.js 改成: node --max_old_space_size=10000 ...
- Apache Spark大数据分析入门(一)
摘要:Apache Spark的出现让普通人也具备了大数据及实时数据分析能力.鉴于此,本文通过动手实战操作演示带领大家快速地入门学习Spark.本文是Apache Spark入门系列教程(共四部分)的 ...
- 数据质量、特征分析及一些MATLAB函数
MATLAB数据分析工具箱 MATLAB工具箱主要含有的类别有: 数学类.统计与优化类.信号处理与通信类.控制系统设计与分析类.图像处理类.测试与测量类.计算金融类.计算生物类.并行计算类.数据库访问 ...
- python 实现对象去重
利用set()方法实现对象去重,重写__hash__方法和__eq__方法告诉程序什么样的对象是同一个对象 # 写一个类 拥有100个对象 # 拥有三个属性 name age sex # 如果两个对象 ...
- KVM虚拟化介绍(1)
一.虚拟化分类 1.虚拟化,是指通过虚拟化技术将一台计算机虚拟为多台逻辑计算机.在一台计算机上同时运行多个逻辑计算机,每个逻辑计算机可运行不同的操作系统,并且应用程序都可以在相互独 立的空间内运 ...
- ie兼容promise
引入 <script src = "https://cdn.polyfill.io/v2/polyfill.min.js"></script> 或 < ...
- Mysql错误--Table 'mysql.servers' doesn't exist.
问题: 今天在初始化数据库的时候,在配置文件里加了"--skip grant tables",登陆进去之后,发现无法修改root密码,报这个错误. Table 'mysql.s ...
- Java编程思想(第一章 对象入门)总结
面向对象编程(oop) 1.1抽象的进步 所有编程语言的最终目的都是提供一种“抽象”方法. 难点是 在机器模型(位于“方案空间”)和实际解决问题模型(位于“问题空间”)之间,程序员必须建立起一种联 ...