位置: IT常识 - 正文

【Android App】人脸识别中使用Opencv比较两张人脸相似程度实战(附源码和演示 超详细)(android_app.intro)

编辑:rootadmin
【Android App】人脸识别中使用Opencv比较两张人脸相似程度实战(附源码和演示 超详细)

推荐整理分享【Android App】人脸识别中使用Opencv比较两张人脸相似程度实战(附源码和演示 超详细)(android_app.intro),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:android apkpure,apk.renme,apprentice,apk.renme,android-app,android render,apk.renme,android render,内容如对您有帮助,希望把文章链接给更多的朋友!

需要全部代码请点赞关注收藏后评论区留言私信~~~

一、比较两张人脸的相似程度

直方图由一排纵向的竖条或者竖线组成,横轴代表数据类型,纵轴代表数据多少。 图像直方图经常应用于特征提取、图像匹配等方面。

 假设有两幅图像,它们的直方图很相似,这说明两幅图的像素分布相当接近,他们很可能来自相邻场景,相似度越高,两幅图越可能是同样来源,这便是直方图应用于图像匹配的缘由。OpenCV的Imgproc工具有一个compareHist方法,可以比较两个矩阵结构的相似程度,其内部就采用直方图比较两幅图像像素点灰度值的分布情况,因为只有灰度值参加比较,所以要先将全彩矩阵转为灰度矩阵再调用Imgproc的compareHist方法加以判断

相似度比较步骤如下

(1)分别对两张图片检测人脸,得到各自的人脸矩阵数组;

(2)两张图片都找到人脸的话,再从中截取人脸矩阵并转成位图对象;

【Android App】人脸识别中使用Opencv比较两张人脸相似程度实战(附源码和演示 超详细)(android_app.intro)

(3)调整位图尺寸,使得两幅图片的宽高保持一致,也就是把较大的位图缩放到较小位图的尺寸;

(4)把两个位图对象转为灰度矩阵,再通过直方图比较它们的相似度;

由于compareHist方法的返回值在0-1之间,值越大表示越相似,一般相似度达到0.5就很高了

二、效果展示

世界杯进行的如火如荼,现在十六强的名单已经全部出来了,接下来让我们用世界杯中的著名球星的照片来进行相似度比较

1:内马尔与梅西 由结果可见不太像 

2: C罗与梅西 由结果可见比较高了

 

 3:C罗与贝克汉姆(年轻的时候) 由结果可见是相当高的相似度

 三、代码

部分源码如下 需要全部代码请点赞关注收藏后评论区留言私信~~~

package com.example.face;import android.content.Context;import android.content.Intent;import android.graphics.Bitmap;import android.net.Uri;import android.os.Bundle;import android.util.Log;import android.widget.ImageView;import android.widget.TextView;import android.widget.Toast;import androidx.appcompat.app.AppCompatActivity;import com.example.face.util.BitmapUtil;import com.example.face.util.FaceUtil;import org.opencv.android.BaseLoaderCallback;import org.opencv.android.LoaderCallbackInterface;import org.opencv.android.OpenCVLoader;import org.opencv.android.Utils;import org.opencv.core.Mat;import org.opencv.core.MatOfRect;import org.opencv.core.Rect;import org.opencv.core.Scalar;import org.opencv.core.Size;import org.opencv.imgproc.Imgproc;import org.opencv.objdetect.CascadeClassifier;import java.io.File;import java.io.FileOutputStream;import java.io.InputStream;public class CompareImageActivity extends AppCompatActivity { private final static String TAG = "CompareImageActivity"; private int CHOOSE_CODE1=31, CHOOSE_CODE2=32; // 挑选第一张图片和挑选第二张图片的请求码 private Bitmap mBitmap1, mBitmap2; // 第一张图片和第二张图片的位图对象 private ImageView iv_face1, iv_face2; // 第一张图片和第二张图片的图像视图 private TextView tv_result; //
本文链接地址:https://www.jiuchutong.com/zhishi/290753.html 转载请保留说明!

上一篇:阿拉普扎的船屋,印度喀拉拉邦 (© Martin Harvey/The Image Bank/Getty Images)(阿普拉萨)

下一篇:卢塞恩老城,瑞士 (© Xantana/Getty Images)(卢塞恩小镇瑞士)

  • 手机qq如何临时对话(手机qq怎么临时对话)

    手机qq如何临时对话(手机qq怎么临时对话)

  • 华为mate30pro快充怎么开(华为mate30pro快充协议)

    华为mate30pro快充怎么开(华为mate30pro快充协议)

  • 手机微信发出的信息字体颜色怎么改变(手机微信发出的信息对话框是绿色的怎么改成白色)

    手机微信发出的信息字体颜色怎么改变(手机微信发出的信息对话框是绿色的怎么改成白色)

  • iphone红外线功能怎么开(苹果红外功能)

    iphone红外线功能怎么开(苹果红外功能)

  • 华为nova7怎么关闭hd(华为nova7怎么关闭防误触模式)

    华为nova7怎么关闭hd(华为nova7怎么关闭防误触模式)

  • 电脑显示证书过期怎么回事(电脑显示证书过期或未生效)

    电脑显示证书过期怎么回事(电脑显示证书过期或未生效)

  • 如何新建bmp文件(如何新建bmp文件并添加照片)

    如何新建bmp文件(如何新建bmp文件并添加照片)

  • 易班密码忘记了怎么办(易班密码忘记了怎么找回电脑)

    易班密码忘记了怎么办(易班密码忘记了怎么找回电脑)

  • 快手小店和魔筷有什么区别(快手小店和魔筷哪个好)

    快手小店和魔筷有什么区别(快手小店和魔筷哪个好)

  • 为什么路由器的光信号灯变红(为什么路由器的ip地址进不去)

    为什么路由器的光信号灯变红(为什么路由器的ip地址进不去)

  • ip协议又称为什么协议(ip协议是用于什么的协议)

    ip协议又称为什么协议(ip协议是用于什么的协议)

  • 手机莫名其妙重启是怎么回事(手机莫名其妙重启电量还变少了)

    手机莫名其妙重启是怎么回事(手机莫名其妙重启电量还变少了)

  • 小米8电池一般多久换一次(小米电池一般多久换)

    小米8电池一般多久换一次(小米电池一般多久换)

  • 华为有没有来电闪光灯(华为有没有来电语音播报)

    华为有没有来电闪光灯(华为有没有来电语音播报)

  • fx8350配什么显卡(fx8350cpu怎么样)

    fx8350配什么显卡(fx8350cpu怎么样)

  • 确认收货会二次收钱么(确认收货了还能申诉吗)

    确认收货会二次收钱么(确认收货了还能申诉吗)

  • 微信每天都被拉群怎么办(微信一直被拉黑是什么原因)

    微信每天都被拉群怎么办(微信一直被拉黑是什么原因)

  • vivo一体机进水怎么办(一体机手机进水后会不会爆炸)

    vivo一体机进水怎么办(一体机手机进水后会不会爆炸)

  • pr如何去掉视频上的字幕(pr如何去掉视频里面的不需要的部分效果是)

    pr如何去掉视频上的字幕(pr如何去掉视频里面的不需要的部分效果是)

  • 小黑记事本护眼模式怎么关闭(小黑记事本护眼精灵怎么卸载)

    小黑记事本护眼模式怎么关闭(小黑记事本护眼精灵怎么卸载)

  • word默认字体是几号字体(word默认字体是等线怎么改)

    word默认字体是几号字体(word默认字体是等线怎么改)

  • 怎么把两个盘合成一个盘(怎么把两个盘合成一个)

    怎么把两个盘合成一个盘(怎么把两个盘合成一个)

  • amazfit是小米的吗(amazfit与小米)

    amazfit是小米的吗(amazfit与小米)

  • vivo手机如何补电(VIVO手机如何补电funtouch)

    vivo手机如何补电(VIVO手机如何补电funtouch)

  • 抖音城市位置自动更新(抖音城市位置自动更新怎么设置)

    抖音城市位置自动更新(抖音城市位置自动更新怎么设置)

  • 怎么修改金税盘登录密码
  • 固定资产未转固属于什么风险
  • 税务申报差额征收 服务减除清单
  • 残保金减免需要每月发放不低于本市最低工资标准是应发
  • 进销存账需要合并吗
  • 工会经费计入现金流量表哪项
  • 社保费补缴有滞纳金吗
  • 公司支付宝付款
  • 营改增后非增值税应税项目包括哪些
  • 代开专票需要去报税吗?
  • 2017年事业单位b类真题及答案
  • 为什么电脑上找不到蓝牙耳机
  • 收到委托代销清单,确认收入的会计分录
  • 没有预付账款科目计入哪里
  • 商贸公司怎么结算成本
  • 购货申请书
  • 债券分期还本利息怎么算
  • mac怎么安装dmg软件
  • 如何解决win10关机后usb还在供电
  • 银行存款转定期存款计入什么科目
  • 往年多交的税能退吗
  • php 反射 性能
  • 受托代销商品会计科目
  • 纳税人转让不动产增值税征收管理暂行办
  • 纳税人代扣代缴
  • 建筑安装企业核定征收企业所得税
  • framework启动
  • 一般纳税企业增值税计算
  • php作品
  • php编程入门教程
  • h5的开发
  • timit数据集
  • vue父子组件传值方法
  • python 命令行参数解析
  • 帝国cms功能
  • 代开增值税发票需要预交所得税吗
  • 营改增后还有企业所得税吗?
  • 网上学电脑哪个软件好
  • php 引入
  • 流动资产比例大说明什么
  • 政府会计的会计要素有哪几个?会计要素之间的关系如何?
  • SQL Server实现split函数分割字符串功能及用法示例
  • 借贷记账法的记账依据是什么
  • 库存现金月末是怎么样结账的
  • 税费损失
  • 公司收到加盟费会计分录
  • 印花税如何计提缴纳
  • 去年未分配利润 负数 结转今年
  • 自建厂房会计处理
  • 汽车配件属于什么业务类型
  • 预收货款未发货怎么办
  • 工程年底结账
  • 库存现金的主要活动
  • 贷款服务可以抵扣进项税额吗
  • 红字冲销有没有时间限制
  • 银行存款日记账与银行对账单之间的核对属于
  • 私企干不长久
  • sql server使用的是什么逻辑模型
  • 怎样升级智慧中小学版本软件
  • win8的系统
  • linux chkdsk
  • win7对比vista
  • linux文本模式无法打字
  • centos怎么安装yum源
  • linux实用技巧
  • windows7文件丢失
  • win10系统打开安装程序没反应
  • linux怎么挂载文件夹
  • Android OpenGL ES(三)----编程框架
  • nodejs可以直接操作数据库
  • web ui控件
  • bat批处理删除文件
  • accessviolation怎么解决
  • jquery 图片预览
  • 开源 android 播放器
  • javascript七种数据类型
  • 拆迁房抵税政策
  • 安徽增值税普通发票税率1%
  • 温州电子税务局电话号码
  • 武汉税务地区编号是多少
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设