人脸识别java算法有哪些

人脸识别java算法有:1、特征脸法(Eigenface);2、局部二值模式(Local Binary Patterns,LBP);3、Fisherface算法。特征脸法(Eigenface)是近期发展起来的用于人脸或者一般性刚体识别以及其它涉及到人脸处理的一种方法。

1、特征脸法(Eigenface)

特征脸技术是近期发展起来的用于人脸或者一般性刚体识别以及其它涉及到人脸处理的一种方法。使用特征脸进行人脸识别的方法首先由Sirovich和Kirby(1987)提出(《Low-dimensional procedure forthe characterization of human faces》),并由Matthew Turk和Alex Pentland用于人脸分类(《Eigenfaces for recognition》)。首先把一批人脸图像转换成一个特征向量集,称为“Eigenfaces”,即“特征脸”,它们是最初训练图像集的基本组件。识别的过程是把一副新的图像投影到特征脸子空间,并通过它的投影点在子空间的位置以及投影线的长度来进行判定和识别。

将图像变换到另一个空间后,同一个类别的图像会聚到一起,不同类别的图像会聚力比较远,在原像素空间中不同类别的图像在分布上很难用简单的线或者面切分,变换到另一个空间,就可以很好的把他们分开了。

Eigenfaces选择的空间变换方法是PCA(主成分分析),利用PCA得到人脸分布的主要成分,具体实现是对训练集中所有人脸图像的协方差矩阵进行本征值分解,得到对应的本征向量,这些本征向量就是“特征脸”。每个特征向量或者特征脸相当于捕捉或者描述人脸之间的一种变化或者特性。这就意味着每个人脸都可以表示为这些特征脸的线性组合。

2、局部二值模式(Local Binary Patterns,LBP)

局部二值模式(Local binary patterns LBP)是计算机视觉领域里用于分类的视觉算子。LBP,一种用来描述图像纹理特征的算子,该算子由芬兰奥卢大学的T.Ojala等人在1996年提出(《A comparative study of texturemeasures with classification based on featured distributions》)。2002年,T.Ojala等人在PAMI上又发表了一篇关于LBP的文章(《Multiresolution gray-scale androtation invariant texture classification with local binary patterns》)。这一文章非常清楚的阐述了多分辨率、灰度尺度不变和旋转不变、等价模式的改进的LBP特征。LBP的核心思想就是:以中心像素的灰度值作为阈值,与他的领域相比较得到相对应的二进制码来表示局部纹理特征。

LBP是提取局部特征作为判别依据的。LBP方法显著的优点是对光照不敏感,但是依然没有解决姿态和表情的问题。不过相比于特征脸方法,LBP的识别率已经有了很大的提升。

3、Fisherface算法

线性鉴别分析在降维的同时考虑类别信息,由统计学家Sir R. A.Fisher1936年发明(《The useof multiple measurements in taxonomic problems》)。为了找到一种特征组合方式,达到最大的类间离散度和最小的类内离散度。这个想法很简单:在低维表示下,相同的类应该紧紧的聚在一起,而不同的类别尽量距离越远。1997年,Belhumer成功将Fisher判别准则应用于人脸分类,提出了基于线性判别分析的Fisherface方法(《Eigenfaces vs. fisherfaces:Recognition using class specific linear projection》)。

延伸阅读

人脸识别技术特点

  • 非强制性:用户不需要专门配合人脸采集设备,几乎可以在无意识的状态下就可获取人脸图像,这样的取样方式没有“强制性”;
  • 非接触性:用户不需要和设备直接接触就能获取人脸图像;
  • 并发性:在实际应用场景下可以进行多个人脸的分拣、判断及识别;
  • 除此之外,还符合视觉特性:“以貌识人”的特性,以及操作简单、结果直观、隐蔽性好等特点。

文章标题:人脸识别java算法有哪些,发布者:Z, ZLW,转载请注明出处:https://worktile.com/kb/p/46576

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
Z, ZLWZ, ZLW站长
上一篇 2023年3月4日
下一篇 2023年3月5日

相关推荐

  • 团队协作中有效的反馈机制是什么样的

    团队协作中有效的反馈机制关键在于建立开放性、及时性、建设性和目标导向性。该机制应1、鼓励成员之间的相互尊重和信任;2、即时分享反馈,以保持信息的实时性和相关性;3、确保反馈的具体性和可操作性,以促进个体和组织的成长;4、通过定期的回顾会议和个人发展计划,将反馈与个人目标及团队目标相结合。这样的反馈机…

    2023年11月28日
    700
  • 什么是 IP

    IP指网际互连协议,Internet Protocol的缩写,是TCP/IP体系中的网络层协议。设计IP的目的是提高网络的可扩展性:一是解决互联网问题,实现大规模、异构网络的互联互通;二是分割顶层网络应用和底层网络技术之间的耦合关系,以利于两者的独立发展。文章将从以下几个方面对IP进行全面剖析:一、…

    2022年10月24日
    15.1K00
  • 什么是IaaS,PaaS,SaaS和DaaS,区别是什么

    Iaas(Infrastructure as a server):基础设施即服务,是基础层。PaaS(Platform as a Server):平台即服务,云端把客户所需的软件的平台作出租。SaaS(Software as a Server):软件即服务,拿来即用。DaaS(Data as a S…

    2023年4月29日
    20200
  • 办公室oa属于什么分类

    办公室oa是用网络和OA软件构建的一个单位内部办公平台,用于辅助办公。OA办公系统是将计算机、通信等现代化技术运用到传统办公方式,进而形成的一种新型办公方式。办公自动化利用现代化设备和信息化技术,代替办公人员传统的部分手动或重复性业务活动。 OA系统就是用网络和OA软件构建的一个单位内部办公平台,用…

    2023年5月28日
    7600
  • SAAS主要用于什么行业

    SAAS主要用于适合以下情况的行业:1、看实力;2、看安全;3、看案例;4、看顾问;5、看服务;6、看管理;7、看功能;8、看技术。一个SaaS服务商的运营的稳定性非常重要,因此,信息化系统项目实施前需要考虑SaaS服务商的规模、盈利能力、增长情况等。 一、看实力 虽说目前各大SaaS服务商承诺支持…

    2023年4月29日
    7800
  • R语言中$和@各自的作用是什么

    $表示从一个dataframe中取出某一列数据;@是从R的类实例里面读取数据。$是S3类的引用方式,$比较常用,当一个函数里需要返回多个值(比如有变量,有向量,有矩阵)时,我们要用list,而不是return,这时如果想提取某个变量的结果,就需要用到$。 $表示从一个dataframe中取出某一列数…

    2023年2月21日
    65900
  • 塞班系统和安卓系统的区别是什么

    塞班系统的操控体验要比安卓差,不如安卓的简洁顺畅。全触控的塞班还好一些,全按键的塞班就体验就差很远了。塞班的封闭系统无法获得足够丰富的应用支持,开发成本和应用联通性方面完全被安卓超越,导致塞班的软件资源要远少于android。 一、安卓系统和塞班系统的区别 安卓系统的英文是android。它由计算机…

    2023年2月13日
    70600
  • devops是什么

    devops是:DevOps(Development和Operations的组合词)是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合。它是一种重视“软件开发人员(Dev)”和“IT运维技术人员(Ops)”之间沟通合作的文化、运动或…

    2023年4月20日
    11800
  • 钉钉上有okr管理工具吗

    钉钉上有okr管理工具,名称为Tita OKR。OKR(Objectives and Key Results)全称为“目标和关键成果”,是企业进行目标管理的一个简单有效的系统,是套定义和跟踪目标及其完成情况的管理工具和方法,Tita OKR管理工具能够将目标管理自上而下贯穿到基层。 一、钉钉的okr…

    2023年4月7日
    28000
  • continue和break的区别

    continue和break的区别:1、功能不同;2、使用场景不同;3、效果不同;4、适用范围不同。整体对比来看,continue主要用于跳过本次循环,进入下一次循环,而break则是用于立即跳出循环。理解两者的不同可以帮助我们在编程中更有效地使用循环结构。 一、功能不同 continue的功能是跳…

    2023年6月1日
    57700

发表回复

登录后才能评论
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部