人脸矫正之人眼检测实例(Android)

2024-08-29 16:48

本文主要是介绍人脸矫正之人眼检测实例(Android),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

最近在做人脸识别的研究和开发,其中用的还是传统的支持向量机 ——SVM和特征提取方法 LBP(具有灰度不变形的优点)

在少量的数据下,传统的机器学习方法相对于现在比较热门的深度学习算法有一定的优势,比如计算速度等。

其中的SVM我使用的是台湾大学的LIBSVM的开源项目,这个开源项目是很经典而且很实用。
对于非端对端的学习,一个好的分类问题,需要的就是提取最有价值的特征,那么如何更好的使用LBP和对图片的预处理是至关重要的。

那么,对于LBP算法,我对他进行了改进,依照的是很多论文中的改进算法,通过做了很多的实验,也验证了对LBP算法改进的优势。

那么剩下的就是图片的预处理问题了,其中的最重要的步骤就是对人脸图片的归一化。

怎么进行归一化呢?

一般情况下我们先进行人脸检测,那么检测出的 人脸类似下图。

这里写图片描述

除了有些背景稍微大些之外,这已经算是很标准的人脸图了。

但是特殊情况

这里写图片描述

对这种情况我们该怎么办?

无疑,我们需要对图片进行旋转。

那么问题来了,改怎么旋转?
就引入了我们的题目,我们的方法如下:
通过人脸检测,找到双眼的位置,然后根据坐标,找到旋转角度,然后进行旋转。

下面我们介绍如何寻找人脸的位置。

方法一:

通过Opencv 自带的 CascadeClassifier类,然后使用自带的训练好的人眼模型。

这里写图片描述

核心代码(JAVA)如下:

detector2.detectMultiScale(eyeMat , eyeDetections  , 1.01 , 2 , 0

这篇关于人脸矫正之人眼检测实例(Android)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Go异常处理、泛型和文件操作实例代码

《Go异常处理、泛型和文件操作实例代码》Go语言的异常处理机制与传统的面向对象语言(如Java、C#)所使用的try-catch结构有所不同,它采用了自己独特的设计理念和方法,:本文主要介绍Go异... 目录一:异常处理常见的异常处理向上抛中断程序恢复程序二:泛型泛型函数泛型结构体泛型切片泛型 map三:文

Android使用java实现网络连通性检查详解

《Android使用java实现网络连通性检查详解》这篇文章主要为大家详细介绍了Android使用java实现网络连通性检查的相关知识,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录NetCheck.Java(可直接拷贝)使用示例(Activity/Fragment 内)权限要求

2025最新版Android Studio安装及组件配置教程(SDK、JDK、Gradle)

《2025最新版AndroidStudio安装及组件配置教程(SDK、JDK、Gradle)》:本文主要介绍2025最新版AndroidStudio安装及组件配置(SDK、JDK、Gradle... 目录原生 android 简介Android Studio必备组件一、Android Studio安装二、A

springboot+mybatis一对多查询+懒加载实例

《springboot+mybatis一对多查询+懒加载实例》文章介绍了如何在SpringBoot和MyBatis中实现一对多查询的懒加载,通过配置MyBatis的`fetchType`属性,可以全局... 目录springboot+myBATis一对多查询+懒加载parent相关代码child 相关代码懒

C++中的解释器模式实例详解

《C++中的解释器模式实例详解》这篇文章总结了C++标准库中的算法分类,还介绍了sort和stable_sort的区别,以及remove和erase的结合使用,结合实例代码给大家介绍的非常详细,感兴趣... 目录1、非修改序列算法1.1 find 和 find_if1.2 count 和 count_if1

MySQL中如何求平均值常见实例(AVG函数详解)

《MySQL中如何求平均值常见实例(AVG函数详解)》MySQLavg()是一个聚合函数,用于返回各种记录中表达式的平均值,:本文主要介绍MySQL中用AVG函数如何求平均值的相关资料,文中通过代... 目录前言一、基本语法二、示例讲解1. 计算全表平均分2. 计算某门课程的平均分(例如:Math)三、结合

C#自动化实现检测并删除PDF文件中的空白页面

《C#自动化实现检测并删除PDF文件中的空白页面》PDF文档在日常工作和生活中扮演着重要的角色,本文将深入探讨如何使用C#编程语言,结合强大的PDF处理库,自动化地检测并删除PDF文件中的空白页面,感... 目录理解PDF空白页的定义与挑战引入Spire.PDF for .NET库核心实现:检测并删除空白页

PyQt6 键盘事件处理的实现及实例代码

《PyQt6键盘事件处理的实现及实例代码》本文主要介绍了PyQt6键盘事件处理的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起... 目录一、键盘事件处理详解1、核心事件处理器2、事件对象 QKeyEvent3、修饰键处理(1)、修饰键类

Android实现图片浏览功能的示例详解(附带源码)

《Android实现图片浏览功能的示例详解(附带源码)》在许多应用中,都需要展示图片并支持用户进行浏览,本文主要为大家介绍了如何通过Android实现图片浏览功能,感兴趣的小伙伴可以跟随小编一起学习一... 目录一、项目背景详细介绍二、项目需求详细介绍三、相关技术详细介绍四、实现思路详细介绍五、完整实现代码

在Android中使用WebView在线查看PDF文件的方法示例

《在Android中使用WebView在线查看PDF文件的方法示例》在Android应用开发中,有时我们需要在客户端展示PDF文件,以便用户可以阅读或交互,:本文主要介绍在Android中使用We... 目录简介:1. WebView组件介绍2. 在androidManifest.XML中添加Interne