1. 研究目的与意义(文献综述)
支持向量机是一种现代的模式识别/机器学习方法。svm是一种基于统计学习理论的模式识别方法,主要应用于模式识别领域。由于当时这些研究尚不十分完善,在解决模式识别问题中往往趋于保守,且数学上比较艰涩,这些研究一直没有得到充分的重视。直到90年代,统计学习理论的实现和由于神经网络等较新兴的机器学习方法的研究遇到一些重要的困难,比如如何确定网络结构的问题、过学习与欠学习问题、局部极小点问题等,使得svm迅速发展和完善,在解决小样本、非线性及高维模式识别问题中表现出许多特有的优势,并能够推广应用到函数拟合等其他机器学习问题中。从此迅速的发展起来,现在已经在许多领域(生物信息学,文本和手写识别等)都取得了成功的应用。 android是当前一款主流的基于linux核的移动设备操作系统,常用于手机、平板电脑。基于android的移动端app开发是当前互联网创新创业的一个热点。android系统由linux内核、中间件、c语言的函数库与api、以及在包含java兼容库的应用框架上的应用软件组成,基于android与opencv的手机端支持向量机分类可采用通过java接口调用opencv方式完成。 opencv(open source computer vision)是一个跨平台的开源计算机视觉算法库,实现了图像处理、计算机视觉方面很多通用算法,运用opencv可大幅度降低计算机视觉研究的重复性工作,提高研究开发效率。随着android系统的流行,opencv也提供了面向android的开发版本,这为手机等移动端上的图像开发提供了巨大的便利。 本项毕业设计的目的就是利用androidworks构建android-opencv环境,参考cvsvm类的相关帮助,在opencv中有支持向量机的实现,并在其中利用java接口调用实现支持向量机分类,从而为手机等移动平台的智能化提供技术基础。
2. 研究的基本内容与方案
基本内容: 本文研究的课题是基于Android与OpenCV的手机端支持向量机分类 。论文包括以下几个方面的内容: (1)查阅文献,对Android与OpenCV以及支持向量机方面相关知识的学习,搜集相关资料,完成有与毕业设计相关的外文文献翻译。 (2)完成支持向量机在Android-OpenCV环境中的实现。实现Android-OpenCV环境配置;调用OpenCV相关函数,实现支持向量机分类,研究最优参数;演示程序。 (3)总结工作,然后完成字数不少于1.2万字的毕业设计论文。 技术方案: Android 是 Google 开发的基于 Linux 平台的开源手机操作系统,本意为“机器人”。它包括操作系统、用户界面和应用程序——移动电话工作所需的全部软件,而且不存在任何以往阻碍移动产业创新的专有权障碍。 OpenCV于1999年由Intel建立,现在由Willow Garage提供支持。OpenCV是一个基于BSD许可证授权(开源)发行的跨平台计算机视觉库,可以运行在Linux 、Windows 、Mac OS和Android 操作系统上。它轻量级而且高效,由一系列C函数和少量C 类构成,同时提供了Python 、Ruby 、MATLAB等语言的接口,实现了图像处理和计算机视觉的接口,实现了图像处理和计算机视觉方面的很多通用算法。 Android应用程序是通过Android SDK(Software Develo-pment Kit)利用Java编程语言进行开发的,此虚拟机支持JNI,同时伴随着Android NDK的发布,使开发者利用第三方C/C 库协助编写Android程序成为可能,如OpenCV库便可方便地应用在Android系统中。 支持向量机是一种现代的模式识别/机器学习方法,在解决小样本、非线性及高维模式识别中表现出许多特有的优势,并能够推广应用到函数拟合等其他机器学习问题中。 Android应用程序开发采用Java编程语言,在Windows系统下,需要安装与配置相应的Eclipse IDE、JDK、AndroidSDK以及ADT。OpenCV只提供C/C 、Python 接口,这就涉及到Java与C/C 混合编程、Java程序与C/C 程序互相调用的问题,故需要利用JNI 编写本地代码,并采用Android NDK编译本地代码。Android NDK是一个工具集,集成了 Android交叉编译环境,并提供了一套比较方便的Makefile,可以帮助开发者快速开发 C/C 的共享库。所以,为了在Android系统下使用OpenCV,除了搭建Android开发的基本环境,还需搭建NDK开发环境和OpenCV库。 作为一种开源系统,Android的开发环境配置有很多选择,常常耗费初学者很多的精力,为此nVidia公司开发了AndroidWorks软件配置安装程序,可以一步安装好所有Android环境。在https://developer.nvidia.com/gameworksdownload可直接下载AndroidWorks下载包,安装步骤也可见AndroidWorks文档。 完成支持向量机在Android-OpenCV环境中的实现: a.实现Android-OpenCV环境配置; b.调用OpenCV相关函数,实现支持向量机分类,研究最优参数,完成参数优化; c.演示程序;
3. 研究计划与安排
第1~3周: 查阅文献,包括著作、期刊、会议论文、网络资源等;第4周: 完成开题报告、论文提纲;第5~9周: 基于AndroidWorks完成Android与OpenCV环境配置与平台学习; 第10~13周:完成支持向量机分类的调用与参数优化; 第14~16周:完成论文及ppt; 第17周: 毕业答辩。
4. 参考文献(12篇以上)
[1]姚昱旻,刘卫国.android的架构与应用开发研究[j].计算机系统应用,2008[2]韩露,李祖枢,陈东义.一种java与opencv结合实现的目标检测模块[j].计算机应用,2008.[3]冈萨雷斯.数字图像处理[m].北京:电子工业出版社,2010.[4]李文琴,李翠霞.android开发与实践[m].北京:人民邮电出版社,2014.[5]孙红明.android程序设计入门、应用到精通[m].北京:清华大学出版社,2015.[6]androidworks文档http://docs.nvidia.com/gameworks/#developertools/mobile/androidworks/androidworks_1r2.htm[7]android-opencv教程:http://web.guohuiwang.com/technical-notes[8]opencv4android网站 http://opencv.org/platforms/android.html[9]opencv cvsvm类帮助 http://www.docs.opencv.org/2.4.9/modules/ml/doc/support_vector_machines.html[10]曾健平,邵艳洁.android系统架构及应用程序开发研究[j].微计算机信息,2011.[11]布拉德斯基.学习opencv[m].北京:清华大学出版社,2009.[12]杨云君.android的设计与实现[m].北京:电子工业出版社,2013.[13]刘瑞祯,于仕琪.opencv教程:基础篇[m].北京:北京航空航天大学出版社,2008.[14]邓乃扬,田英杰.支持向量机:理论、算法与拓展[m].北京:科学出版社,2008.[15]克里斯特安尼,李国正.支持向量机导论[m].北京:电子工业出版社,2014.
课题毕业论文、开题报告、任务书、外文翻译、程序设计、图纸设计等资料可联系客服协助查找。