• Octave AR应用实战
21年品牌 40万+商家 超1.5亿件商品

Octave AR应用实战

正版保障 假一赔十 可开发票

80.75 5.4折 149 全新

库存45件

广东广州
认证卖家担保交易快速发货售后保障

作者于红博

出版社清华大学出版社

ISBN9787302652632

出版时间2024-02

装帧平装

开本16开

定价149元

货号29699554

上书时间2024-10-22

兴文书店

三年老店
已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:全新
商品描述
前言

AR技术是增强现实技术的简称,是一种将虚拟信息与真实世界进行融合的技术。AR技术通过计算机生成的图像、声音和其他感官输入,将虚拟元素叠加到真实环境中,使用户可以与虚拟和真实世界进行交互。
AR技术通常使用智能手机、平板电脑、AR眼镜或头戴式显示器等设备来呈现虚拟内容。通过这些设备,用户不仅可以看到真实场景,还可以看到额外添加的特效。
AR技术在人们的生活中逐渐普及。用户可以通过支持AR芯片的手机拍摄实时的特效视频,可以通过AR眼镜等新型外设看到增强的景象,还可以通过智能驾驶技术更轻松地驾车出行。
AR技术的应用场景广泛。AR技术可用于制作电子游戏,有些AR游戏可以在现实世界中放置桌椅模型,并将所有用户虚拟成卡通人物。AR技术可用于制作远程教育应用,为学生营造出一种轻松愉快的学习氛围;在AR应用中的教具也可能是虚拟的模型,拥有更丰富的动作,因此教师也能更好地发挥自己的教学水平。AR技术可用于零售行业,消费者可以通过AR应用远程查看商品的任意角度;AR应用还支持试穿功能,实时拍摄用户的视频影像,并将服饰模型放置在人物之上,达到远程试穿的效果。制造业中的AR技术可实时展示工业设计、维修和装配的效果,提供实时指导和可视化信息,提高工作效率和准确性。
笔者依据真实的工业研发经验和在科学计算领域的积累,将实际的应用场景和理论的AR算法相融合,博采其他编程语言的经典概念,配合Octave编程的基础知识进行实战,力求使读者由浅入深地上手AR技术中的各个环节。
本书共分为13章,主要内容如下。
第1章绪论,为Octave的概述内容。
第2章从简单的模型入手,到如何创建复杂的模型,再到实际研发过程中的模型背景如何透明等技术细节,最后编写在AR画面中放置模型的实战应用。
第3章讲解与位姿相关的知识。从数学和力学等基础理论入手,到仿射变换的理论和应用,再配合Octave的仿射变换函数和其他工具的空间变换命令,最后编写机器人模型位姿变换的实战应用。从传统的几何变换到复杂的仿射变换,这种思维的转变是本章的一大难点。
第4章讲解与投影相关的知识。读者需要先理解投影的理论,再配合Octave的相机概念,即可在软件层面上轻松控制机器人模型的投影效果,最后编写控制机器人模型的投影效果的实战应用。
第5章讲解与畸变相关的知识。从投影的分类入手,再讲解畸变矫正工具的用法,配合畸变矫正的公式理论,帮助读者在拍摄AR画面时能够一步微调画面的显示效果,最后编写畸变矫正的实战应用。
第6章讲解与计算机视觉相关的知识。先讲解经典且常用的SIFT和SURF等算法,再深入讲解计算机视觉的代码如何在Octave上实现,引导读者根据实际的应用场景去编写新的算法。还涉及点云模型在计算机视觉中的用法,引领读者在开发AR应用时脱离固有的RGB彩色图像的限制,最后介绍YOLOv8等顶级的计算机视觉算法。
第7章从AR系统的硬件选型入手,意在让读者领悟理论的算法与实际的硬件之间的关联。不同的算法往往对应不同的选型方案,本章的内容对提高读者的AR系统设计能力有较大帮助。
第8章讲解与倾斜摄影相关的知识。倾斜摄影是一种高新技术,在遥感测绘等方面的AR应用上被广泛应用,并且具备卓越的性能优势。
第9章讲解SLAM算法的入门知识。先从SLAM算法的流程开始讲解,又讲解了Octave的传感器数据读取函数等基础用法,最后从头编写一套SLAM算法代码,帮助读者从能够开发单个的算法提升到能够开发整套SLAM算法。
第10章和第11章讲解SLAM算法的常用库和开源算法的实现,帮助读者能够在已有的SLAM算法基础上进行二次开发,希望读者能够具备拿来就用和知道用什么的能力。二次开发已有的开源算法也是业界常用的一种做法。
第12章讲解与贴图相关的知识。贴图是一种具有艺术性的工序,本章不但从代码层面上讲解贴图的各种实战应用,还举了大量生活中的例子,使内容更贴近实际且更容易理解。
第13章讲解推流和拉流。本章中的实战内容将算法处理完的AR视频以流媒体的形式在网络上传输,并且涵盖和部署应用相关的技术难点。
素材(源代码)等资源: 扫描封底的文泉云盘防盗码,再扫描目录上方的二维码下载。
限于本人的水平和经验,书中一定存在疏漏之处,恳请专家与读者批评指正。

于红博2023年11月于哈尔滨



导语摘要

Octave为GNU项目下的开源软件,旨在解决线性和非线性的数值计算问题。本书全面讲解AR技术在理论上的基础和在行业内的应用,帮助读者尽快掌握Octave的应用技巧。
本书共13章,涵盖广泛的AR技术应用场景,将庞大的AR技术分解为可视化技术、计算机视觉、硬件选型、SLAM算法等方面,分类进行详细讲解,并提供大量实用程序示例,让读者不仅可以在学习过程中减小阻碍,在实际的工程研究中也方便查找,内容覆盖全面。
本书针对零基础的读者,有VR方向研发经验的程序设计人员也可以学到很多Octave独有的特性。



作者简介

于红博,曾在某世界500强公司担任测试开发工程师,参与内部框架的维护和开发。主要涉及科学计算、图像处理、自动化系统设计、模式识别、神经网络等分支的算法设计和程序设计领域。在业余时间爱好编写、审阅及完善开源软件,对于开源软件的发展做出了一定的贡献。



目录

第1章绪论1
第2章模型与背景画面52.1定义二维模型5
2.1.1matgeom5
2.1.2矩形6
2.1.3圆形7
2.1.4圆弧7
2.1.5椭圆9
2.1.6椭圆弧9
2.2定义三维模型11
2.2.1胶囊体11
2.2.2立体圆形11
2.2.3立体圆弧12
2.2.4圆柱体12
2.2.5球体14
2.2.6立体椭圆14
2.2.7椭球体15
2.2.8圆环面15
2.2.9圆顶面17
2.2.10正方体17
2.2.11长方体17
2.3盒子模型19
2.4制作复杂的模型20
2.4.1制作二维机器人模型20
2.4.2制作三维机器人模型27
2.5以图片格式保存模型35
2.6FFmpeg36
2.6.1安装FFmpeg37
2.6.2FFmpeg支持的命令37
2.7播放真实的背景画面37
2.7.1ffplay命令的主要选项38
2.7.2ffplay命令的键盘操作选项40
2.7.3ffmpeg命令的用例41
2.8模型图片背景透明化42
2.8.1SVG格式42
2.8.2SVG格式的不透明度属性42
2.8.3SVG格式的点属性43
2.8.4SVG格式的svg片段元素43
2.8.5SVG格式的多边形元素43
2.8.6SVG格式的组合对象元素43
2.8.7Octave保存的SVG图片的结构44
2.8.8通过Octave修改SVG图片背景的透明度45
2.8.9GIF格式46
2.8.10GIF格式的背景透明效果46
2.9ImageMagick47
2.9.1安装ImageMagick47
2.9.2安装magick47
2.9.3ImageMagick的用例47
2.9.4制作透明背景的GIF图片48
2.10读取或写入图像48
2.10.1读取图像48
2.10.2写入图像49
2.10.3设置或返回读取图像的路径50
2.10.4返回图像信息50
2.10.5管理支持的图像格式51
2.10.6Octave默认支持处理的图像格式53
2.11显示图像54
2.11.1以基础方式显示图像54
2.11.2将图像矩阵显示为图像54
2.11.3以缩放模式显示图像54
2.12转换图像类型55
2.12.1将图像转换为double格式55
2.12.2将灰度图像或黑白图像转换为索引图像55
2.12.3将索引图像转换为灰度图像或黑白图像56
2.12.4将RGB图像转换为索引图像56
2.12.5将索引图像转换为RGB图像56
2.13将模型放置于真实的背景画面上56
2.13.1预览AR画面57
2.13.2背景画面为视频时的处理方法57
2.13.3加快视频的处理速度57
2.14放置模型应用58
2.14.1放置模型应用原型设计58
2.14.2放置模型应用视图代码设计58
2.14.3放置模型应用属性代码设计62
2.14.4放置模型应用回调函数代码设计69
2.14.5选择图像文件74
2.14.6将视频解压为图片78
2.14.7生成输出文件名或文件夹79
2.14.8初始化轴对象81
2.14.9设置轴对象的宽高比82
2.14.10生成预览图片或视频83
2.14.11更新AR画面的预览效果90
2.14.12实际采用的视频预处理方式和处理方式92
2.15日志功能94
2.15.1日志的原理94
2.15.2日志级别94
2.15.3日志格式95
2.15.4日志持久化96
2.15.5实例化日志对象96
2.15.6日志类97
2.15.7在放置模型应用中使用日志类101
第3章位姿103
3.1位姿在不同坐标系下的数学表述103
3.1.1球面角103
3.1.2球面坐标103
3.1.3欧拉角103
3.1.4RPY角104
3.2计算几何相关知识104
3.2.1两点求角度104
3.2.2三点求角度104
3.3力学相关知识104
3.3.1质点104
3.3.2质点系104
3.3.3质心104
3.3.4质心运动定理105
3.3.5刚体105
3.4旋转矩阵105
3.4.1旋转矩阵的用法105
3.4.2欧拉角与旋转矩阵的变换106
3.4.3根据旋转角度创建旋转矩阵107
3.4.4根据旋转矩阵计算转轴或旋转角度107
3.5仿射变换108
3.5.1平移变换108
3.5.2缩放变换108
3.5.3剪切变换108
3.5.4旋转变换109
3.5.5仿射变换矩阵的尺寸描述109
3.6Octave的空间变换函数110
3.6.1安装image工具箱110
3.6.2实例化仿射变换对象110
3.6.3根据仿射变换对象进行仿射变换112
3.6.4根据仿射变换对象进行仿射变换的逆变换112
3.6.5推断仿射变换矩阵112
3.6.6裁剪图像函数114
3.6.7缩放图像函数114
3.6.8旋转图像函数115
3.6.9快速旋转和缩放图像函数116
3.6.10透视变换函数116
3.6.11高斯金字塔函数117
3.6.12重新映射图像函数117
3.6.13剪切变换函数118
3.6.14平移变换函数119
3.7ImageMagick的空间变换命令119
3.7.1resize参数119
3.7.2geometry参数121
3.7.3thumbnail参数121
3.7.4sample参数122
3.7.5scale参数122
3.7.6filter参数122
3.7.7magnify参数123
3.7.8adaptiveresize参数123
3.7.9interpolate参数123
3.7.10interpolativeresize参数123
3.7.11distort参数123
3.7.12 distort参数131
3.8通过GUI控制模型的位姿132
3.8.1控制模型的位姿应用原型设计132
3.8.2控制模型的位姿应用视图代码设计133
3.8.3控制模型的位姿应用回调函数代码设计139
3.8.4位姿的默认值142
第4章投影144
4.1平行投影和透视投影144
4.2建立模型的边界盒145
4.2.1判断边界145
4.2.2hggroup146
4.2.3图形对象定位148
4.2.4根据边界点的位置绘制边界盒150
4.2.5自动确定模型的边界150
4.2.6在模型类中添加绘制边界盒功能157
4.3将二维模型投影为三维模型160
4.4Octave的相机概念164
4.4.1相机位置165
4.4.2相机目标165
4.4.3相机视角165
4.4.4轴对象的方向166
4.5更改三维模型的投影效果167
4.5.1视点变换167
4.5.2观察点变换167
4.6通过GUI控制模型的投影效果167
4.6.1控制投影效果应用原型设计168
4.6.2控制投影效果应用视图代码设计168
4.6.3更新模型文件的预览效果172
4.6.4显示当前的选项值174
4.6.5修改当前的选项值176
4.6.6保存模型文件的预览效果179
第5章畸变182
5.1图像畸变182
5.1.1径向畸变182
5.1.2桶形畸变和枕形畸变182
5.1.3切向畸变183
5.2Hugin183
5.2.1安装Hugin183
5.2.2Hugin镜头校准的默认状态184
5.2.3Hugin镜头校准的镜头类型184
5.2.4Hugin镜头校准的图片要求185
5.2.5Hugin镜头校准的必选参数185
5.2.6Hugin镜头校准的可选参数185
5.2.7Hugin镜头校准的常见错误185
5.2.8Hugin镜头校准的预览功能185
5.2.9Hugin保存镜头186
5.3kalibr188
5.3.1kalibr在Docker之下安装并校准相机188
5.3.2kalibr源码安装并校准相机189
5.3.3kalibr以ROS包的格式收集数据190
5.3.4kalibr校准多个相机190
5.3.5kalibr校准带IMU的相机191
5.3.6kalibr校准多个IMU193
5.3.7kalibr校准滚动快门相机194
5.3.8kalibr对优化校准结果的改进建议194
5.3.9kalibr使用数据集校准194
5.3.10kalibr支持的相机模型194
5.3.11kalibr支持的畸变模型195
5.3.12kalibr支持的校准目标195
5.3.13kalibr设置相机焦点196
5.3.14kalibr校准验证器197
5.3.15kalibr配合ROS 2使用197
5.4畸变的校准197
5.4.1用现成的参数校准畸变197
5.4.2用Hugin校准畸变198
5.5畸变的矫正200
5.5.1用校准参数矫正畸变200
5.5.2用坐标映射矫正畸变202
5.6通过GUI控制矫正效果205
5.6.1控制矫正效果应用原型设计205
5.6.2控制矫正效果应用视图代码设计206
5.6.3控制矫正效果应用回调函数代码设计211
5.6.4校准参数的默认值214
第6章计算机视觉216
6.1Canny边缘检测216
6.2Hough直线检测217
6.3自适应局部图像阈值处理218
6.4SIFT算法218
6.4.1高斯金字塔218
6.4.2高斯尺度空间219
6.4.3DoG空间219
6.4.4SIFT特征点定位220
6.4.5SIFT特征点方向220
6.4.6SIFT特征匹配221
6.5SURF算法221
6.5.1SURF算法和SIFT算法的区别221
6.5.2积分图像222
6.5.3构造Hessian矩阵222
6.5.4用盒子滤波器代替高斯滤波器223
6.5.5SURF特征点定位223
6.5.6SURF特征点方向分配223
6.5.7SURF特征匹配224
6.6生成图像处理时需要的特殊矩阵224
6.6.1生成均值滤波器224
6.6.2生成圆形区域均值滤波器225
6.6.3生成高斯滤波器226
6.6.4生成高斯拉普拉斯算子227
6.6.5生成拉普拉斯算子228
6.6.6生成锐化算子228
6.6.7生成运动模糊算子229
6.6.8生成Sobel算子229
6.6.9生成Prewitt算子230
6.6.10生成Kirsch算子230
6.7ImageMagick的计算机视觉变换命令230
6.7.1edge参数230
6.7.2canny参数231
6.7.3houghlines参数231
6.7.4lat参数231
6.8文件扩展名为oct的程序231
6.8.1编译oct程序232
6.8.2编译oct程序时支持的可选参数232
6.8.3编译oct程序时支持的环境变量234
6.9PCL库235
6.9.1安装PCL库235
6.9.2PCL库的点的类型236
6.9.3在Octave中使用PCL库238
6.10点云模型239
6.10.1点云模型的概念239
6.10.2点云模型的存储格式239
6.10.3读取PCD模型240
6.10.4写入PCD模型241
6.10.5PCD模型可视化242
6.10.6OpenNI点云捕捉247
6.10.7点云分割248
6.11通过GUI控制计算机视觉变换效果252
6.11.1控制计算机视觉变换效果应用原型设计252
6.11.2控制计算机视觉变换效果应用视图代码设计256
6.11.3控制计算机视觉变换效果应用回调函数代码设计262
6.11.4计算机视觉变换参数的默认值266
6.11.5显示当前修改的参数267
6.11.6计算机视觉变换的关联关系269
6.11.7计算机视觉变换的流程272
6.12OctoMap279
6.12.1OctoMap源码安装280
6.12.2OctoMap通过vcpkg安装280
6.12.3octomap ROS包的用法281
6.12.4octomap_rviz_plugins281
6.13Caffe281
6.13.1Caffe源码安装281
6.13.2Caffe使用Docker安装283
6.13.3Caffe训练MNIST模型283
6.13.4Caffe训练ImageNet模型287
6.14SOLD2288
6.14.1SOLD2源码安装288
6.14.2SOLD2使用pip安装288
6.14.3SOLD2训练模型288
6.14.4SOLD2使用模型289
6.15YOLOv5290
6.15.1YOLOv5源码安装290
6.15.2YOLOv5推断290
6.15.3YOLOv5使用detect.py推断291
6.15.4在其他应用中使用YOLOv5291
6.15.5YOLOv5数据集训练292
6.16YOLOv8292
6.16.1YOLOv8源码安装292
6.16.2YOLOv8的模式293
6.16.3YOLOv8的CLI模式293
6.16.4YOLOv8的Python模式298
6.16.5YOLOv8的三大组件300
6.17Fast RCNN303
6.17.1Fast RCNN源码安装304
6.17.2Fast RCNN运行用例304
第7章硬件选型与AR算法306
7.1相机选型306
7.1.1单目相机和双目相机306
7.1.2景深相机307
7.1.3全景相机307
7.1.4柱面全景相机308
7.1.5网络摄像头308
7.2镜头选型308
7.2.1变焦镜头和定焦镜头308
7.2.2正圆镜头和椭圆镜头309
7.2.3不同焦段的镜头309
7.2.4不同视角的镜头309
7.2.5标准镜头309
7.2.6广角镜头309
7.2.7长焦镜头310
7.2.8鱼眼镜头310
7.2.9微距镜头310
7.2.10移轴镜头310
7.2.11折返镜头310
7.3IMU选型311
7.3.13轴IMU311
7.3.26轴IMU311
7.3.39轴IMU312
7.3.4不同精度的IMU312
7.3.5不同封装的IMU312
7.4激光雷达选型312
7.4.1不同线数的激光雷达313
7.4.2不同记录光能方式的激光雷达313
7.4.3不同工作条件的激光雷达313
7.5声呐选型313
7.5.1不同频率的声呐313
7

   相关推荐   

—  没有更多了  —

以下为对购买帮助不大的评价

此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP