本网站(662p.com)打包出售,且带程序代码数据,662p.com域名,程序内核采用TP框架开发,需要联系扣扣:2360248666 /wx:lianweikj
精品域名一口价出售:1y1m.com(350元) ,6b7b.com(400元) , 5k5j.com(380元) , yayj.com(1800元), jiongzhun.com(1000元) , niuzen.com(2800元) , zennei.com(5000元)
需要联系扣扣:2360248666 /wx:lianweikj
Android AR相机
kenrry1992 · 851浏览量 · 发布于2019-05-24 +关注

作者SimonCherryGZ,源码face-landmark-android。Android AR相机:根据人脸图片构建简单的 3D 人脸模型,然后在摄像头预览画面中展示,基于该人脸模型进行换脸或者添加装饰品。

应用截图

GIF 演示

image image

显示人脸 3D 模型

image image image

显示装饰品

image image image image

测试页面

image image

原理

  • 根据人脸图片构建 3D 人脸模型

    使用 Dlib 可以检测出人脸的 68 个关键点:

    image

    根据这 68 个点可以连线得到一个低面数的人脸模型:

    image

    我使用Blender 建立了该模型,这里称其为 BaseModel,格式为 obj。

  • 动态修改 BaseModel

    查询 obj 文件结构可知,以“v”开头的行描述的是模型的顶点,以“vt”开头的行描述的是模型的贴图坐标点。

    那么只要找到这些点与人类关键点的对应关系,就可以简单地通过替换对应行的数据,来达到动态修改模型的目的。

不足

  • Dlib 库依赖 shape_predictor_68_face_landmarks.dat,其大小约 100M,加载需要花费数秒。

  • Dlib 库检测人脸的速度与图像的大小成反比,因此需要对摄像头的预览画面进行截取。

    截取得太小的话也检测不出人脸。在大小不影响检测的情况下,检测速度依然不理想。

  • 由于是从单张图片构建 3D 人脸,无法获取 Z 轴的数值,所以在估算三维姿态时用的是模拟数据,得出的数值可能不准确。

构建

  1. 按照dlib-android 描述的步骤来构建 Dlib-Android 库。

  2. 从dlib-android-app 中找到 shape_predictor_68_face_landmarks.dat,将其复制到手机根目录中。

依赖库

  • RxJava

  • fastjson

  • Realm

  • Glide



源码使用过程中,如无法搭建或有增加其他功能需求,可联系QQ:236-0248-666 ,付费搭建安装修改服务!
温馨提示:网站源码只作为学习或研究使用,如需商业使用请购买正版!

相关推荐

图片滤镜处理,相机滤镜实时处理 安卓源码

相关信息 kenrry1992 · 582浏览 · 2019-12-04 11:31:16
图片生成 Low Poly 风格图片的 app 安卓源码

相关信息 kenrry1992 · 584浏览 · 2019-09-25 17:58:15
android仿爱壁纸App项目源码

相关信息 kenrry1992 · 1302浏览 · 2019-06-05 11:17:34
一款集成了相机

相关信息 匿名 · 3305浏览 · 2015-08-19 09:46:48
一个妹子图应用客户端源码

相关信息 匿名 · 4094浏览 · 2015-08-13 13:43:50
加载中

0评论

评论
  • 源码信息
  • 所需 0 点数
  • 源码作者:匿名作者
  • 源码大小:16.163 MB
  • 源码类型:android源码
  • 显示语言: 简体中文
  • 运行环境:未知
分类专栏
小鸟云服务器
扫码进入手机网页