Android OpenCV应用程序设计

作者: (美) 豪斯 (Howse,J.) , 著

出版社: 清华大学出版社

出版日期: 2015-01-01

电子书 ¥18.85 定价:29.0
  • 收藏

  • 加书架

  • 引用

简介

《Android OpenCV应用程序设计》详细阐述了与Android OpenCV程序设计相关的基本解决方案,主要包括构建OpenCV,与相机帧协同工作,添加图像效果,图像识别和跟踪,图像跟踪与3D渲染之间的整合操作等内容。此外,本书还提供了相应的示例、代码,以帮助读者进一步理解相关方案的实现过程。 《Android OpenCV应用程序设计》适合作为高等院校计算机及相关专业的教材和教学参考书,也可作为相关开发人员的自学教材和参考手册。 Copyright Packt Publishing 2013.First published in the English language under the title Android Application Programming with OpenCV. Simplified Chinese-language edition 2014 by Tsinghua University Press.All rights reserved. 本书中文简体字版由Packt Publishing授权清华大学出版社独家出版。未经出版者书面许可,不得以任何方式复制或抄袭本书内容。

更多出版物信息
  • 版权: 清华大学出版社
  • 出版: 2015-01-01
  • 作者:(美) 豪斯 (Howse,J.) , 著
  • 更新: 2023-06-07
  • 书号:9787302384434
  • 中图:TN929.53
  • 学科:
    工学
    电子科学与技术
    工学
    信息与通信工程

作者信息

(美) 豪斯 (Howse,J.) , 著

  本书讲解了如何在Android应用程序中绑定OpenCV的Java内容,进而显示相机画面、保存-共享照片、操控颜色和轮廓边以及跟踪2D或3D中的对象。另外,本书还讨论了OpenGL的整合方式,读者可据此构建增强现实(AR)程序,进而在相机画面的跟踪对象上绘制虚拟3D场景。   作为一类开源、跨平台库,OpenCV提供了计算机视觉和应用构建模块,以及针对捕捉处理和图像数据显示的高层接口。例如,OpenCV抽象了相机硬件的细节内容以及数组的内存分配。同时,OpenCV广泛地应用于教学和软件工业中。   Android则是一类开源移动操作系统,对于Java开发者而言,它提供了称作Android SDK的高层应用框架。Android应用程序是一类模块化程序,并针对数据的发布和共享定义了标准的高层接口。针对照片共享应用,移动、高层抽象和数据共享可视为较好的开始点。   虽然OpenCV和Android提供了大量的高层抽象内容(以及开源代码),但对于初学者而言并不容易掌握,例如构建适宜的开发环境,将库功能项移至应用程序中。对此,本书旨在强调清晰的构建过程、简洁的应用设计以及各功能项的详细内容。   鉴于OpenCV的Java和Android绑定尚为新鲜事物,因而其文档并不完整,针对OpenCV与Android的标准相机、媒介以及图形API尤其如此。需要说明的是,整合工作是应用程序开发者的重要任务之一,也是本书的讲解重点。   OpenCV和Android库之间的整合过程充分体现了广泛的应用程序特征,本书结束时将会对此予以尝试。届时,读者可通过可复用的类库扩展或调整后续的计算机视觉项目,并根据已有的开发环境和知识编写更为丰富的应用程序。 本书内容   第1章讨论OpenCV和Android开发环境的构建过程,其中包括Eclipse和Android SDK。   第2章讨论OpenCV与Android应用程序之间的整合方式,进而预览、捕捉、保存和共享照片数据。   第3章探讨OpenCV的功能项,包括颜色通道的控制以及邻接像素问题。除此之外,还将对现有应用程序进行扩展,以使其包含通道混合滤镜、"曲线"滤镜和黑色轮廓边滤镜。   第4章将展示视频画面中既定目标对象(例如油画作品)的识别和跟踪机制。同时,还将对已有应用程序进行适当扩展,并围绕跟踪目标绘制轮廓线。   第5章通过确定3D环境中目标的位置和旋转改善前述跟踪机制。另外,本章还将构建OpenGL 3D场景,并包含与Android相机设备相同的透视视角。 背景知识   本书将讨论OpenCV和Android开发环境的构建过程,其中包括Eclipse和Android SDK。同时,对应软件均包含跨平台特征,包括Windows、Mac、Linux以及其他类UNIX环境。   读者需要持有一部可运行Android 2.2(Froyo)或后续版本的移动设备,并建议设备包含前置和后置相机。另外,鉴于OpenCV使用Google Play Store管理安装和共享库的更新操作,因而推荐安装Google Play Store应用程序。 本书读者   本书适用于Java开发人员,以及致力于计算机视觉应用开发的读者。本书假设读者具备一定的Java开发经验(但缺乏相应的Android知识),并对图形数据有着基本的理解,例如像素、颜色通道等内容。 本书结构   本书包含了大量不同的文本风格,并以此区分不同种类的信息。下列内容展示了相应的文本风格和对应的解释内容。   文本中的代码字样通常显示为:"编辑系统路径PATH并包含/platform- tools和/tools"。   对应代码块如下所示:    "http://schemas.android.com/apk/res/android" package="com.nummist.secondsight" android:versionCode="1" android:versionName="1.0">      当强调特定的代码段时,相关内容采用粗体表示,如下所示:    mCameraView.enableView(); mBgr = new Mat(); mCurveFilters = new Filter[] {  new NoneFilter(),  new PortraCurveFilter(),  new ProviaCurveFilter(),      命令行输入和输出如下所示:    $ cd /etc/udev/rules.d/ $ sudo touch 51-android.rules $ sudo chmod a+r 51-android-rules      另外,某些新增内容和重要内容也采用粗体表示,而屏幕、菜单或对话框中的文本则采用原文显示,例如"clicking on the Next button moves you to the next screen"。   最后,"提示"表示一些较为重要的提示;"技巧"则表示相关的操作技巧。 读者反馈和技术支持   欢迎读者对本书的建议或意见予以反馈,以进一步了解读者的阅读喜好。反馈意见对于我们来说十分重要,以便改进我们日后的工作。   对此,读者可向feedback@packtpub.com发送邮件,并以书名作为邮件标题。   若读者意欲查询出版信息,可在www.packtpub.com网站的SUGGEST A TITLE表项中填写相关信息,或发送邮件至suggest@packtpub.com。   若读者针对某项技术具有专家级的见解,抑或计划撰写书籍或完善某部著作的出版工作,则可阅读www.packtpub.com/authors中的author guide一栏。 资源下载   读者可访问http://www.packtpub.com下载本书中的示例代码文件;或者访问http://www. packtpub.com/support,经注册后可直接通过邮件方式获取相关文件。   除此之外,读者还可访问作者网站http://nummist.com/opencv/下载本书示例代码。 勘误表   尽管我们在最大程度上做到尽善尽美,但错误依然在所难免。如果读者发现谬误之处,无论是文字错误或是代码错误,还望不吝赐教。对于其他读者以及本书的再版工作,这将具有十分重要的意义。对此,读者可访问http://www.packtpub.com/support,选取对应书籍,单击errata submission form超链接,并输入相关问题的详细内容。经确认后,填写内容将被提交至网站,或添加至现有勘误表中(位于该书籍的Errata部分)。同时,读者还可访问http://www.packtpub.com/support查看当前勘误表。 版权须知   一直以来,互联网上的版权问题从未间断,Packt出版社对此类问题异常重视。若读者在互联网上发现本书任意形式的副本,请告知网络地址或网站名称,我们将对此予以处理。   关于盗版问题,读者可发送邮件至copyright@packtpub.com。对于作者的爱护,我们表示衷心的感谢,并于日后向读者呈现更为精彩的作品。 问题解答   若读者对本书有任何疑问,均可发送邮件至questions@packtpub.com,我们将竭诚为您服务;或者访问作者网站http://nummist.com/opencv/获取常见问题的答案。 本书作者和审校人员   Joseph Howse很可能现在正坐在家中的沙发上撰写某本书籍,或者拎着手提箱处于奔波途中,箱子中被书籍、相机和计算机等设备填满。Joseph Howse喜欢用这种"观察世界的方式"装备自己,要不就是在执行计算机视觉方面的工作。   Joseph Howse在加拿大的Ad-Dispatch公司工作,并负责iOS和Android平台的增强现实游戏的开发工作。当与计算机视觉协同工作时,游戏中使用了大量的真实道具,例如孩子的绘画作品、玩具和毛毯。   另外,Joseph Howse还提供培训和咨询等服务,其中包括基于OpenCV人脸识别的嵌入式系统项目。   Joseph Howse拥有计算机科学专业、国际发展研究专业以及商务管理专业3个硕士学位(加拿大Dalhousie大学),其研究成果曾被ISMAR发表。   本书是Joseph Howse在Packt出版社出版的第二本书籍,另外一本是《OpenCV Computer Vision with Python》,该书介绍了Windows、Mac以及Linux操作系统上的脸部跟踪和深度相机(例如Kinect)等内容。   下面一段文字引自Joseph Howse:   "我擅长写作并享受这一过程。这里要感谢和Sam在一起的日子,以及父母和我的猫咪,他们是我的精神支柱。"   "感谢本书的编辑和审校人员,在他们的指导下本书方得以出版。他们的专业、友好、良好的判断力以及热忱为本书增加了极大的色彩。"   Rohit Bhat是一名毕业于印度BITS Pilani的本科生,并在业界领先的Big Data Analytics公司担任软件工程师一职。他所参与的开发项目涉及多种科技领域,其中包括数据挖掘、Android开发、OpenCV、群集智能、工作流自动化以及视频会议平台。Rohit Bhat热衷于最新技术,并可就任何话题与你展开讨论。另外,阅读、创业、经济学以及时下的新闻同样是他关注的话题。他热爱写作并在业余时间撰写自己的博客。   当前,Rohit Bhat正在为Packt出版社编写一本Bonita Open Solution方面的书籍,相关技术广泛地应用于工作流自动化和商业处理建模中。   Viral Parekh是一名计算机科学专业的大学生,同时也是一名经验丰富的移动应用程序开发者,并熟悉多种开源库,例如OpenCV、OpenNI、FFmpeg。当前,他从事于人机交互和增强现实方面的开发工作。

相关图书