登录

  • 登录
  • 忘记密码?点击找回

注册

  • 获取手机验证码 60
  • 注册

找回密码

  • 获取手机验证码60
  • 找回
毕业论文网 > 毕业论文 > 计算机类 > 物联网工程 > 正文

基于目标跟踪的篮球投篮计数软件的设计与实现毕业论文

 2021-11-01 10:11  

摘 要

OpenCV的中文全称是开源计算机视觉库,基于C语言编写,是可运行于Windows、Mac OS、Android等多个操作系统平台的函数库,由于intel的免费开源举措,开发者们从中受益各种基于OpenCV进行的商业开发和科研活动免费如雨后春笋般涌现。OpenCV支持Windows、Linux、Mac OS、iOS与Android操作系统上的应用开发。在2010年,OpenCV正式支持Android系统并推出了相应的Android SDK。本次毕业设计基于OpenCV 4.2版本进行编译。

Android是一种针对智能手机开发的开源的操作系统,它的名字是源于“Android之父 ”Android Ruby。Android主要使用于手机、平板等移动终端,由Google公司和开放手机联盟领导开发,支持JAVA和Kotlin语言编程。Android终端的便捷性和OpenCV轻量高效的特性相得益彰,很快成为了好搭档。而它们的结合主要通过OpenCV Android SDK完成。然而SDK中的各种算法并非是由JAVA代码编写,OpenCV Android SDK实质上是通过Java接口利用JNI间接调用C函数代码来完成实质的功能。OpenCV Android SDK使得OpenCV能在移动终端如虎添翼,在图像处理方面更进一步。而本文正是借助Android智能终端和OpenCV来实现一款图像识别APP。

关键词: OpenCV视觉库;图像处理;Android系统;目标跟踪

ABSTRACT

The full name of OpenCV is open source computer vision library, based on the C language, which can run on Windows, Mac OS, Android and other operating system platform function library. Thanks to Intel's free open source initiative, developers benefit from the free commercial development and scientific research activities based on OpenCV mushroomed like mushrooms.OpenCV supports application development on Windows, Linux, Mac OS, iOS and Android operating systems.In 2010, OpenCV officially supported the Android system and launched the corresponding Android SDK.This graduation project is compiled based on OpenCV version 4.2.

Android is an open source operating system for smartphones, named after the "father of Android", Android Ruby.Android is mainly used in mobile devices such as mobile phones and tablets. It was developed by Google and the open handset alliance. It supports JAVA and Kotlin programming.The Android terminal's convenience and OpenCV's lightweight and efficient features complement each other, making it a quick match.And their combination is mainly accomplished through OpenCV Android SDK.However, the various algorithms in the SDK are not written by JAVA code. OpenCV Android SDK essentially USES JNI to indirectly call C function code through JAVA interface to complete the essential functions.OpenCV Android SDK enables OpenCV to add wings to mobile terminals and further image processing.This paper is to use Android intelligent terminal and OpenCV to realize an image recognition APP.

Key words: OpenCV;image recognition;Android operation system;object tracking

目 录

摘 要 I

ABSTRACT II

目 录 i

1 绪论 1

1.1 课程设计背景及意义 1

1.2 Android与图像识别的发展 1

1.2.1 Android发展概述 1

1.2.2 图像识别发展概述 2

1.3 结构安排 5

2 智能终端图像识别实现的基本技术 6

2.1 Android系统 6

2.1.1 Android系统简介 6

2.1.2 Android系统结构 6

2.1.3 Android的四大组件 7

2.2 Android Studio简介 9

2.3 OpenCV简介 9

2.3.1 OpenCV的历史与发展 9

2.3.2 OpenCV模块介绍 10

2.4 开发环境搭建 10

2.4.1 开发环境安装 10

2.4.2 环境搭建 11

2.5 本章小结 14

3 系统结构设计与实现 15

3.1 系统总体设计 15

3.2 用户交互界面 15

3.2.1 主界面 16

3.2.2 Camera界面 17

3.2.3 投篮结果显示界面 18

3.2.4 投篮结果查询界面 20

3.3 图像识别算法 20

3.3.1 捕获图像及预处理 21

3.3.2 图像差分与二值化 22

3.3.3 篮球入框的判断 23

3.4 数据库的建立 25

3.4.1 Sharepreferences 25

3.4.2 SQLite数据库 26

3.5 本章小结 27

4 实践、总结与展望 28

4.1 实践展示 28

4.2 总结 28

4.3 展望 28

参考文献 29

致谢 30

绪论

课程设计背景及意义

随着科技的进步,视觉仿生学逐渐走入人们的日常生活,改变着我们的生活方式,这一技术诞生于上世纪中叶,由美国学者 L R 罗伯茨对关于理解多面体组成的积木世界研究开始的,此项技术当时被称为机器视觉技术,并且沿用至今,这就像把人类的智慧和本能传给了电脑。然而在现实中,让计算机识别不同物体的图像是一项困难的任务。计算机视觉与人工智能密切相关,因为计算机必须解释它所看到的,然后执行适当的分析或相应的行动。

事实上,计算机视觉的目标不仅是看,而且是处理和提供基于观察的有用结果。例如,计算机可以从二维图像(例如汽车中的图像)创建三维图像,并向汽车和/或司机提供重要数据。例如,汽车可以安装计算机视觉,它将能够识别和区分道路上和周围的物体,如交通灯,行人,交通标志等,并采取相应的行动。如果路上突然出现障碍,智能设备可以为司机提供输入,甚至可以让车停下来。当开车的人看到有人突然驶入车道时,司机必须立即做出反应。在一刹那,人类视觉完成了一项复杂的任务,那就是识别对象、处理数据和决定要做什么。计算机视觉的目标是使计算机能够以同样的效率完成与人类相同的任务。

Android与图像识别的发展

Android发展概述

Android是专门为移动设备开发的平台,其中包含操作系统、中间件和核心应用等。仔细分析移动互联网与Android的发展脉络,可以发现它们几乎拥有相同的发展曲线。Android之所以拥有如此广泛的使用,主要是源于其开放性、良性交互体验等优点。因此可以发现,在手机和平板电脑等终端上,Android相较于PC操作系统霸主Windows有着无可比拟的优势,它的开放性、移植性、多样性给移动互联网插上了自由轻盈的翅膀,尤其是开放性,吸引了大批的Android开发者,不断壮大着Android阵营。

随着车联网的日益发展,Google将Android的下一个应用目标瞄准了车载系统。车载系统灵活特性和移动互联网需求,使得Android和车联网成为了“天作之合”。在2014年时,Google就逐步开放了Android Auto API用以鼓励并帮助Android车载系统开发者来将Android移动终端APP一直到车载系统上。如之前所提到的,Android系统交互体验、强大开发者生态等优势使得Android系统完全可以在车载的信息娱乐系统(或车联网)大展宏图。与此同时,挑战也接踵而至。由于Android系统是专门为手机设备开发的操作系统,若是把Android手机的操作完全移植于车载系统,那么其体验会大打折扣。因此,Google在过去几年一直致力让基于Android的车载信息系统的操作不再依赖智能手机。同时作为一个后来者,如何吸引保守的车厂投向Android系统的怀抱也是一个关键点,而Android固有的安全性和稳定性的痼疾,也是Google亟待解决的。我相信Android在汽车领域必定能够声名大噪,同时我也怀疑Android不太可能有像在移动终端的统治力,不过百花齐放也是大家很乐于看到的。

您需要先支付 80元 才能查看全部内容!立即支付

企业微信

Copyright © 2010-2022 毕业论文网 站点地图