毕业设计 基于移动设备的眼球追踪系统(源码+论文)

2023-10-23 15:30

本文主要是介绍毕业设计 基于移动设备的眼球追踪系统(源码+论文),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 0 项目说明
  • 1 研究目的
  • 2 研究方法
  • 3 系统实现
  • 3.1 实现视频播放
  • 4 研究结论
  • 5 论文目录
  • 6 项目源码
  • 7 最后


0 项目说明

基于移动设备的眼球追踪技术及其应用

提示:适合用于课程设计或毕业设计,工作量达标,源码开放


1 研究目的

在本文中,我们主要验证在移动设备上进行实时眼球追踪的可行性,并提出使用眼球追踪进行移动设备控制。

2 研究方法

我们首先对眼球追踪技术进行测试,验证了现行眼球追踪算法在移动设备上进行眼球运动方向追踪的准确性。随后基于视频播放场景,在原有的控制技术基础上,实现了基于眼球运动方向的视频播放控制。相较于之前的研究,我们不仅验证了眼球追踪技术在移动设备上应用的准确性,同时提出了其适用的场景和相应的解决方案。

3 系统实现

首先我们设计实现一款简易视频播放器,随后引入眼球追踪技术,对视频播放操作进行重新设计,添加相应功能从而实现基于眼球运动方向的控制方式。
在这里插入图片描述

3.1 实现视频播放

为方便视频播放模块添加眼球控制方式,我们将眼球追踪页面与视频播放页面结合,左侧为视频播放器,右侧为前置摄像头获取人脸图像预览,在视频播放的同时,进行眼球追踪。
在这里插入图片描述

4 研究结论

针对用户观看视频过程中有时不便手动控制这一现象,我们率先将眼球追踪技术与视频播放控制结合起来,改善了用户使用体验。而经过实验验证,基于眼球运动方向进行操作控制的平均准确率达到 70.5%,这一新颖的控制方式被证明是可靠的。
在这里插入图片描述

5 论文目录

第一章 绪论1.1 研究背景1.2 本文工作1.3 论文结构
第二章 相关工作2.1 眼睛行为分析2.1.1 视线估计2.1.2 眼球运动2.2 基于眼睛交互2.2.1 隐式交互2.2.2 显式交互2.3 移动设备控制
第三章 瞳孔检测与眼球追踪3.1 面临挑战3.2 环境影响3.2.1 距离3.2.2 照明条件3.3 眼睛检测3.3.1 Harr特征选择3.3.2 计算积分图像3.3.3 Adaboost 训练3.3.4 级联分类器3.4 瞳孔中心定位3.4.1 梯度方法3.4.2 运行结果3.5 眼球运动方向追踪
第四章 系统实现与性能评估4.1 系统实现4.1.1 视频播放器4.1.2 基于眼球控制实现视频播放4.2 性能评估4.2.1 实验设置4.2.2 眼球追踪模块4.2.3 视频控制模块
第五章 总结与展望
参考文献
致 谢

6 项目源码

package org.opencv.android;import android.app.Activity;
import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.DialogInterface.OnClickListener;
import android.util.Log;/*** Basic implementation of LoaderCallbackInterface.*/
public abstract class BaseLoaderCallback implements LoaderCallbackInterface {public BaseLoaderCallback(Context AppContext) {mAppContext = AppContext;}public void onManagerConnected(int status){switch (status){/** OpenCV initialization was successful. **/case LoaderCallbackInterface.SUCCESS:{/** Application must override this method to handle successful library initialization. **/} break;/** OpenCV loader can not start Google Play Market. **/case LoaderCallbackInterface.MARKET_ERROR:{Log.e(TAG, "Package installation failed!");AlertDialog MarketErrorMessage = new AlertDialog.Builder(mAppContext).create();MarketErrorMessage.setTitle("OpenCV Manager");MarketErrorMessage.setMessage("Package installation failed!");MarketErrorMessage.setCancelable(false); // This blocks the 'BACK' buttonMarketErrorMessage.setButton(AlertDialog.BUTTON_POSITIVE, "OK", new OnClickListener() {public void onClick(DialogInterface dialog, int which) {finish();}});MarketErrorMessage.show();} break;/** Package installation has been canceled. **/case LoaderCallbackInterface.INSTALL_CANCELED:{Log.d(TAG, "OpenCV library installation was canceled by user");finish();} break;/** Application is incompatible with this version of OpenCV Manager. Possibly, a service update is required. **/case LoaderCallbackInterface.INCOMPATIBLE_MANAGER_VERSION:{Log.d(TAG, "OpenCV Manager Service is uncompatible with this app!");AlertDialog IncomatibilityMessage = new AlertDialog.Builder(mAppContext).create();IncomatibilityMessage.setTitle("OpenCV Manager");IncomatibilityMessage.setMessage("OpenCV Manager service is incompatible with this app. Try to update it via Google Play.");IncomatibilityMessage.setCancelable(false); // This blocks the 'BACK' buttonIncomatibilityMessage.setButton(AlertDialog.BUTTON_POSITIVE, "OK", new OnClickListener() {public void onClick(DialogInterface dialog, int which) {finish();}});IncomatibilityMessage.show();} break;/** Other status, i.e. INIT_FAILED. **/default:{Log.e(TAG, "OpenCV loading failed!");AlertDialog InitFailedDialog = new AlertDialog.Builder(mAppContext).create();InitFailedDialog.setTitle("OpenCV error");InitFailedDialog.setMessage("OpenCV was not initialised correctly. Application will be shut down");InitFailedDialog.setCancelable(false); // This blocks the 'BACK' buttonInitFailedDialog.setButton(AlertDialog.BUTTON_POSITIVE, "OK", new OnClickListener() {public void onClick(DialogInterface dialog, int which) {finish();}});InitFailedDialog.show();} break;}}public void onPackageInstall(final int operation, final InstallCallbackInterface callback){switch (operation){case InstallCallbackInterface.NEW_INSTALLATION:{AlertDialog InstallMessage = new AlertDialog.Builder(mAppContext).create();InstallMessage.setTitle("Package not found");InstallMessage.setMessage(callback.getPackageName() + " package was not found! Try to install it?");InstallMessage.setCancelable(false); // This blocks the 'BACK' buttonInstallMessage.setButton(AlertDialog.BUTTON_POSITIVE, "Yes", new OnClickListener(){public void onClick(DialogInterface dialog, int which){callback.install();}});InstallMessage.setButton(AlertDialog.BUTTON_NEGATIVE, "No", new OnClickListener() {public void onClick(DialogInterface dialog, int which){callback.cancel();}});InstallMessage.show();} break;case InstallCallbackInterface.INSTALLATION_PROGRESS:{AlertDialog WaitMessage = new AlertDialog.Builder(mAppContext).create();WaitMessage.setTitle("OpenCV is not ready");WaitMessage.setMessage("Installation is in progress. Wait or exit?");WaitMessage.setCancelable(false); // This blocks the 'BACK' buttonWaitMessage.setButton(AlertDialog.BUTTON_POSITIVE, "Wait", new OnClickListener() {public void onClick(DialogInterface dialog, int which) {callback.wait_install();}});WaitMessage.setButton(AlertDialog.BUTTON_NEGATIVE, "Exit", new OnClickListener() {public void onClick(DialogInterface dialog, int which) {callback.cancel();}});WaitMessage.show();} break;}}void finish(){((Activity) mAppContext).finish();}protected Context mAppContext;private final static String TAG = "OCV/BaseLoaderCallback";
}

7 最后

这篇关于毕业设计 基于移动设备的眼球追踪系统(源码+论文)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/268714

相关文章

不懂推荐算法也能设计推荐系统

本文以商业化应用推荐为例,告诉我们不懂推荐算法的产品,也能从产品侧出发, 设计出一款不错的推荐系统。 相信很多新手产品,看到算法二字,多是懵圈的。 什么排序算法、最短路径等都是相对传统的算法(注:传统是指科班出身的产品都会接触过)。但对于推荐算法,多数产品对着网上搜到的资源,都会无从下手。特别当某些推荐算法 和 “AI”扯上关系后,更是加大了理解的难度。 但,不了解推荐算法,就无法做推荐系

基于人工智能的图像分类系统

目录 引言项目背景环境准备 硬件要求软件安装与配置系统设计 系统架构关键技术代码示例 数据预处理模型训练模型预测应用场景结论 1. 引言 图像分类是计算机视觉中的一个重要任务,目标是自动识别图像中的对象类别。通过卷积神经网络(CNN)等深度学习技术,我们可以构建高效的图像分类系统,广泛应用于自动驾驶、医疗影像诊断、监控分析等领域。本文将介绍如何构建一个基于人工智能的图像分类系统,包括环境

水位雨量在线监测系统概述及应用介绍

在当今社会,随着科技的飞速发展,各种智能监测系统已成为保障公共安全、促进资源管理和环境保护的重要工具。其中,水位雨量在线监测系统作为自然灾害预警、水资源管理及水利工程运行的关键技术,其重要性不言而喻。 一、水位雨量在线监测系统的基本原理 水位雨量在线监测系统主要由数据采集单元、数据传输网络、数据处理中心及用户终端四大部分构成,形成了一个完整的闭环系统。 数据采集单元:这是系统的“眼睛”,

嵌入式QT开发:构建高效智能的嵌入式系统

摘要: 本文深入探讨了嵌入式 QT 相关的各个方面。从 QT 框架的基础架构和核心概念出发,详细阐述了其在嵌入式环境中的优势与特点。文中分析了嵌入式 QT 的开发环境搭建过程,包括交叉编译工具链的配置等关键步骤。进一步探讨了嵌入式 QT 的界面设计与开发,涵盖了从基本控件的使用到复杂界面布局的构建。同时也深入研究了信号与槽机制在嵌入式系统中的应用,以及嵌入式 QT 与硬件设备的交互,包括输入输出设

JAVA智听未来一站式有声阅读平台听书系统小程序源码

智听未来,一站式有声阅读平台听书系统 🌟 开篇:遇见未来,从“智听”开始 在这个快节奏的时代,你是否渴望在忙碌的间隙,找到一片属于自己的宁静角落?是否梦想着能随时随地,沉浸在知识的海洋,或是故事的奇幻世界里?今天,就让我带你一起探索“智听未来”——这一站式有声阅读平台听书系统,它正悄悄改变着我们的阅读方式,让未来触手可及! 📚 第一站:海量资源,应有尽有 走进“智听

【区块链 + 人才服务】可信教育区块链治理系统 | FISCO BCOS应用案例

伴随着区块链技术的不断完善,其在教育信息化中的应用也在持续发展。利用区块链数据共识、不可篡改的特性, 将与教育相关的数据要素在区块链上进行存证确权,在确保数据可信的前提下,促进教育的公平、透明、开放,为教育教学质量提升赋能,实现教育数据的安全共享、高等教育体系的智慧治理。 可信教育区块链治理系统的顶层治理架构由教育部、高校、企业、学生等多方角色共同参与建设、维护,支撑教育资源共享、教学质量评估、

AI hospital 论文Idea

一、Benchmarking Large Language Models on Communicative Medical Coaching: A Dataset and a Novel System论文地址含代码 大多数现有模型和工具主要迎合以患者为中心的服务。这项工作深入探讨了LLMs在提高医疗专业人员的沟通能力。目标是构建一个模拟实践环境,人类医生(即医学学习者)可以在其中与患者代理进行医学

软考系统规划与管理师考试证书含金量高吗?

2024年软考系统规划与管理师考试报名时间节点: 报名时间:2024年上半年软考将于3月中旬陆续开始报名 考试时间:上半年5月25日到28日,下半年11月9日到12日 分数线:所有科目成绩均须达到45分以上(包括45分)方可通过考试 成绩查询:可在“中国计算机技术职业资格网”上查询软考成绩 出成绩时间:预计在11月左右 证书领取时间:一般在考试成绩公布后3~4个月,各地领取时间有所不同

Java ArrayList扩容机制 (源码解读)

结论:初始长度为10,若所需长度小于1.5倍原长度,则按照1.5倍扩容。若不够用则按照所需长度扩容。 一. 明确类内部重要变量含义         1:数组默认长度         2:这是一个共享的空数组实例,用于明确创建长度为0时的ArrayList ,比如通过 new ArrayList<>(0),ArrayList 内部的数组 elementData 会指向这个 EMPTY_EL

系统架构师考试学习笔记第三篇——架构设计高级知识(20)通信系统架构设计理论与实践

本章知识考点:         第20课时主要学习通信系统架构设计的理论和工作中的实践。根据新版考试大纲,本课时知识点会涉及案例分析题(25分),而在历年考试中,案例题对该部分内容的考查并不多,虽在综合知识选择题目中经常考查,但分值也不高。本课时内容侧重于对知识点的记忆和理解,按照以往的出题规律,通信系统架构设计基础知识点多来源于教材内的基础网络设备、网络架构和教材外最新时事热点技术。本课时知识