《手机摄像头实现长测量学习教案.pptx》由会员分享,可在线阅读,更多相关《手机摄像头实现长测量学习教案.pptx(19页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、会计学1手机手机(shu j)摄像头实现长测量摄像头实现长测量第一页,共19页。随着智能手机的飞速发展,智能手机的使用逐渐普及起来,随着智能手机的飞速发展,智能手机的使用逐渐普及起来,智能手机提供的摄像功能越来越强,摄像的像素越来越清晰,智能手机提供的摄像功能越来越强,摄像的像素越来越清晰,那么那么(n me)(n me),除了摄像,我们能不能利用智能手机提供的摄,除了摄像,我们能不能利用智能手机提供的摄像功能像功能来扩展一些新的功能呢?来扩展一些新的功能呢?第1页/共19页第二页,共19页。当你在上海旅行时,看到了东方明珠时,是不是既想把它照下来,又想如果要是同时能把它的高度(god)计算
2、出来多好啊?第2页/共19页第三页,共19页。当你在北京博物馆参观时,看到了青铜鼎时,是不是既想把它照下来,又想知道(zh do)这个鼎的高和宽呢?第3页/共19页第四页,共19页。我们队伍设计的基于 Android 手机摄像头实现长度测量 的程序就是来实现上面(shng min)的需求的。这样我们可以不用尺子来测量距离。第4页/共19页第五页,共19页。市场上已有的一些市场上已有的一些(yxi)(yxi)先进的测量仪器先进的测量仪器第5页/共19页第六页,共19页。虽然市场上出现了这些先进的测量距离的仪器,使人们不用尺子就能测量物体的高度,但是他们往往比较昂贵且不易(b y)携带。第6页/共
3、19页第七页,共19页。Contents我们的目标我们的目标不接触目标物体,不使用尺子就能测量人的高度、桌子的长度、远方物不接触目标物体,不使用尺子就能测量人的高度、桌子的长度、远方物体的距离,无需体的距离,无需(wx)(wx)通过高端昂贵的专业仪器,只需要使用随手通过高端昂贵的专业仪器,只需要使用随手可得的带摄像头手机就能完成这些功能。可得的带摄像头手机就能完成这些功能。第7页/共19页第八页,共19页。目标软件的特点目标软件的特点(tdin)移动:运行在移动:运行在Android智能手机上,随时随地可以使用。智能手机上,随时随地可以使用。实用:我们身上不会带上尺子,但手机却是随身携带的物品
4、,实用:我们身上不会带上尺子,但手机却是随身携带的物品,如果需要测量,拿出手机拍两幅物体的照片就能够得到长度如果需要测量,拿出手机拍两幅物体的照片就能够得到长度信息;另外有的时候条件不允许接触测量,比如危险物品、信息;另外有的时候条件不允许接触测量,比如危险物品、贵重物品以及难以触及的物品,但使用这款软件就无需接触贵重物品以及难以触及的物品,但使用这款软件就无需接触实现距离的测量。实现距离的测量。易用:分别从两个角度拍摄物体的两幅图片,选择始点和终点,易用:分别从两个角度拍摄物体的两幅图片,选择始点和终点,程序就会计算出两点的距离展示程序就会计算出两点的距离展示(zhnsh)给用户。给用户。第
5、8页/共19页第九页,共19页。如何如何(rh)实现?实现?n n使用初等凸透镜成像公式?使用初等凸透镜成像公式?n n理想情况,假定理想情况,假定f f可变焦、成像点清晰可变焦、成像点清晰n n实际情况,焦距一般固定,三维物体距离不同实际情况,焦距一般固定,三维物体距离不同(b(b tn)tn),无法在,无法在f f下得到清晰像点,清晰不好判断、坐下得到清晰像点,清晰不好判断、坐标系统不好固定。标系统不好固定。第9页/共19页第十页,共19页。实现方法实现方法古典古典(gdin)+现代现代 射影几何与计算机视觉对极几何射影几何与计算机视觉对极几何 基于针孔摄像头模型,空间中一点基于针孔摄像头
6、模型,空间中一点MM到像平面到像平面(pngmin)(pngmin)点点mm的映射要经过投影矩阵的映射要经过投影矩阵P P的的转换(图转换(图2 2),),sm=KR|TMsm=KR|TM,其中,其中K K是摄像头参数矩阵,是摄像头参数矩阵,R R、T T是摄像头坐标系相对于是摄像头坐标系相对于世界坐标系的旋转和平移矩阵,世界坐标系的旋转和平移矩阵,smsm是像点的齐次坐标。是像点的齐次坐标。第10页/共19页第十一页,共19页。对极几何对极几何(j h)(j h)n n空间物体点通过两个投影矩阵投影到左右两幅图像上,根据空间物体点通过两个投影矩阵投影到左右两幅图像上,根据(gnj)(gnj)
7、三维重构的理论,只需要得到这两个投影矩阵以及两三维重构的理论,只需要得到这两个投影矩阵以及两个像点在图像上的坐标就可以使用三角法定位目标点三维坐个像点在图像上的坐标就可以使用三角法定位目标点三维坐标。标。根据投影矩阵的构成,获取摄像头参数矩阵根据投影矩阵的构成,获取摄像头参数矩阵K、拍摄第二幅、拍摄第二幅图像时候摄像头经历的刚体变换图像时候摄像头经历的刚体变换(binhun)旋转和平移旋转和平移(R|T)矩阵是整个系统实现的关键。矩阵是整个系统实现的关键。第11页/共19页第十二页,共19页。获取手机获取手机(shu j)摄像头参数矩阵摄像头参数矩阵Kn n使用张正友标定法使用张正友标定法”F
8、lexible Camera Calibration By Viewing a Plane”Flexible Camera Calibration By Viewing a Plane From Unknown Orientations”From Unknown Orientations”,这个方法,这个方法(fngf(fngf)操作比较容易,操作比较容易,只需要做一幅黑白棋盘(显示器打开这样一幅图片也可以),只需要做一幅黑白棋盘(显示器打开这样一幅图片也可以),用手机摄像头从不同角度拍摄大约用手机摄像头从不同角度拍摄大约1010幅棋盘的图片,使用他们幅棋盘的图片,使用他们算法实现的标定程序就
9、可以得到摄像头参数矩阵。算法实现的标定程序就可以得到摄像头参数矩阵。第12页/共19页第十三页,共19页。获取获取(huq)旋转平移矩阵旋转平移矩阵R,T 如果以拍摄第一幅图的摄像机坐标系作为参考坐标系,那么第一个摄像头位如果以拍摄第一幅图的摄像机坐标系作为参考坐标系,那么第一个摄像头位置的置的R R就是单位矩阵就是单位矩阵I I,T T没有平移为零。没有平移为零。运用对极几何的理论,第二个位置的运用对极几何的理论,第二个位置的R R和和T T可以利用可以利用(lyng)(lyng)两幅图片的对应关两幅图片的对应关系求出来,只要找到系求出来,只要找到7 7对以上的匹配点就可以把两幅图像的内在关
10、系计算出来,对以上的匹配点就可以把两幅图像的内在关系计算出来,当然匹配的点越多越准确,后继的操作也就越精准。当然匹配的点越多越准确,后继的操作也就越精准。第13页/共19页第十四页,共19页。对应点匹配对应点匹配(ppi)人工目测匹配人工目测匹配 优点:确保优点:确保100%100%准确准确 缺点缺点(qudin)(qudin):费时,匹配的点少:费时,匹配的点少算法自动算法自动(zdng)匹配匹配优点:快速,匹配点多优点:快速,匹配点多缺点:复杂环境下匹配不准确缺点:复杂环境下匹配不准确第14页/共19页第十五页,共19页。计算计算(j sun)R和和T 使用匹配的特征点对计算出基本矩阵使用
11、匹配的特征点对计算出基本矩阵F F,根据匹配点的数目可以选择使用,根据匹配点的数目可以选择使用7 7点法、点法、8 8点法、点法、RANSACRANSAC等计算等计算F F的算法的算法 计算本质矩阵计算本质矩阵E E,E E等于等于K K的转置矩阵左乘的转置矩阵左乘F F再左乘再左乘K K 对对E E进行进行SVDSVD分解分解(fnji)(fnji),得到的,得到的U U矩阵的最后一列乘以单值即为平移向量矩阵的最后一列乘以单值即为平移向量T T,U U矩阵左乘反矩阵左乘反对称矩阵再左乘对称矩阵再左乘V V转置矩阵即得到旋转矩阵转置矩阵即得到旋转矩阵R R。第15页/共19页第十六页,共19页
12、。Android手机手机(shu j)上的实现上的实现 界面:简洁友好,分为操作栏和帮助栏,操作栏的竖排按钮体现了界面:简洁友好,分为操作栏和帮助栏,操作栏的竖排按钮体现了操作的流程,帮助栏有使用方法的详细介绍。选择匹配点也简单好操作的流程,帮助栏有使用方法的详细介绍。选择匹配点也简单好玩,因为只需要选择七个点就足够计算本质矩阵,进入选点界面后玩,因为只需要选择七个点就足够计算本质矩阵,进入选点界面后可以看到七个彩色小点排成北斗七星形状,通过触摸移动可以看到七个彩色小点排成北斗七星形状,通过触摸移动(ydng)(ydng)这些小点到特征明显的位置比如角点。这些小点到特征明显的位置比如角点。处理
13、:为了实现实时处理,核心运算代码会调用到处理:为了实现实时处理,核心运算代码会调用到OpenCvOpenCv(开源计(开源计算机视觉库),编写好算机视觉库),编写好C+C+程序之后通过程序之后通过NDKNDK把源代码编译成可以把源代码编译成可以供供AndroidAndroid端端javajava程序调用的动态链接库。程序调用的动态链接库。第16页/共19页第十七页,共19页。使用使用(shyng)方法方法 1)1)从两个不同角度拍摄目标从两个不同角度拍摄目标(mbio)(mbio)。2)2)在第一幅图片上移动彩色小点,选择七个处于三维空间的点;右图需找到和左图相匹配的在第一幅图片上移动彩色小点,选择七个处于三维空间的点;右图需找到和左图相匹配的七个点。七个点。3 3)点击测量距离按钮得到)点击测量距离按钮得到7 7个点两两以厘米为单位的实际距离,并返回第一和第二个点之间个点两两以厘米为单位的实际距离,并返回第一和第二个点之间的距离。的距离。第17页/共19页第十八页,共19页。第18页/共19页第十九页,共19页。