三分钟极速体验:Java版人脸检测

Java版人脸检测详解上篇:运行环境的Docker镜像(CentOS+JDK 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 本篇概览 如果您看过《三分钟极速体验:Java版人脸检测》一文,甚至动手实际操作过,您应该会对背后的技术细节感兴趣,接下来就请随欣宸一起动手实战,从无到有将这个应用开发出来; 首先确定咱们的目标: 开发出java版的人脸检测应用 将此应用制作成docker镜像 在docker环境运行这个应用 基于上述目标,我们可以确定以下操作步骤: 准备好docke. 阅读详情

本篇概览

  • 检测照片中的人脸,用Java可以实现吗?

  • 当然可以,今天咱们用最少的时间、最简单的操作来体验这个实用的功能,当您提交一张带有人脸的照片后,会看到下图效果,所有人脸都被识别到并被框选出来了:

在这里插入图片描述

  • 本篇以体验为主,不涉及具体的开发,后面还会有文章介绍完整的开发过程(包括源码)

风险提前告知

  • 为了简化操作,接下来会用到docker,对应的镜像体积巨大,达到了恐怖的4.69G,建议您为自己的docker做好加速配置,可以减少下载等待时间;

  • 由于opencv体积庞大,再加上javacv的依赖库也不小,这才导致超大镜像的出现,还望您多多海涵,标题中的《三分钟极速体验》是要去掉镜像的等待时间的,您要是觉得欣宸的标题起得很无耻,我觉得您是对的...

环境信息

  • 为了简化体验过程,接下来会用到docker,推荐的环境信息如下:
  • 操作系统:Ubuntu 16.04.1 LTS 服务器版(MacBook Pro也可以,版本是11.2.3,macOS Big Sur)
  • docker:20.10.2 Community
  • 为了加快docker镜像的下载速度,建议您提前做好docker加速配置
  • 文章标题号称三分钟极速体验,没时间说太多,准备好环境就火速动手啦

部署

  • 新建名为images的目录,用于存储处理后的文件,我这里完整路径是/root/temp/202107/17/images
  • 新建名为model的目录,用于存储稍后要下载的模型文件,我这里完整路径是/root/temp/202107/17/model
  • 下载训练好的模型文件,我准备了两个下载地址,您任选一个即可,一个是csdn的(无需积分):
  1. https://download.youkuaiyun.com/download/boling_cavalry/20352221,另一个是
  2. https://raw.githubusercontent.com/zq2599/blog_download_files/master/files/haarcascade_frontalface_default.zip
  • 上述文件下载下来是个压缩包,请先解压,再将文件haarcascade_frontalface_default.xml放入model目录(model里放的必须是解压后的文件)

  • 执行以下命令,会先下载docker镜像文件再创建容器:

docker run \
--rm \
-p 18080:8080 \
-v /root/temp/202107/17/images:/app/images \
-v /root/temp/202107/17/model:/app/model \
bolingcavalry/facedetect:0.0.1
  • 部署完成,开始体验

体验

  • 浏览器访问http://localhost:18080,这里的localhost请改成docker宿主机IP(要关闭防火墙!),可以见到操作页面,如下图(欣宸的前端开发水平渣到令人发指,果然不是空穴来风):

在这里插入图片描述

  • 找一张有人脸的图片(我在百度图片随机找的),点击上图的选取图片按钮进行上传,至于周围检测数量那里先保持默认值32不要动

  • 点击提交按钮后,页面会显示检测结果,如下图,人脸被准确的框选出来了:

在这里插入图片描述

  • 再试试多人的,如下图,居然一个人脸都没有检测到:

在这里插入图片描述

  • 把周围检测数量的值调低些,改成4再试,如下图,这次成功了,八张人脸全部检测到:

在这里插入图片描述

  • 至此,Java版人脸检测的体验已经完成,一分钟概览,一分钟部署,一分钟体验,咱们足够高效(下载超大镜像的时间不能算,不敢算...)

  • 此刻您应该能感受到Java在人脸识别领域的魅力了,聪明的您当然会有很多疑问,例如:

  1. 用了啥框架?
  2. 写了啥代码?
  3. 运行环境好不好配置?只要jar依赖吗?还需要其他操作吗?
  • 这些疑问在下面这两篇文章中完全揭秘,然后您也能轻易做出集成了人脸识别的SpringBoot应用了
Java实现人脸检测,java线程教程 @Auther: DarkKing @Date: 2019/10/2 11:06 @Description: */ public class DetectFace { //定义程序的基础路径 private String basePath =System.getProperty(“user.dir”); //人眼识别分类器路径 private String eyeConfigPath=basePath+"\src\com\facedetect\config\haarcascade_eye.. 阅读详情

相关推荐

Face Detect (JavaCV):使用JavaCV进行人脸检测和面部特征提取-开源

一个使用JavaCV和OpenCV简单人脸检测程序。 实现面部特征提取和面部识别。

JavaCV 实现图片中人脸检测完整代码教程

今天微信群里聊天,群友问道有没有能让人脸露牙齿的接口,我记得想百度阿里的都应该有类似人脸识别,分析、融合的api,但是我百度了一下,确实没有找到,可能他们提供的都是最基础的接口,如果想实现自己的想要的某种效果,比如人脸微笑,露牙等,还需要自己开发。想这样让一张没有露牙的图片,变成露牙的照片,第一步肯能是先要再图片上检测到人脸,其次是嘴巴,然后再用算法合成到图像嘴边的位置。

洛阳泰山的博客 5255

USB HID虚拟电池:Windows零驱动电源状态模拟方案

虚拟电池是一种在硬件测试与功耗分析中替代真实电池、实现可控电源状态注入的关键技术。其核心原理是通过标准USB HID协议(特别是UPS设备类)向操作系统上报可编程的AC/DC状态、剩余电量、容量参数等,绕过内核驱动限制,达成毫秒级响应与跨Windows版本兼容。该技术显著提升SoC能效验证、电池健康度校准及低电量行为触发等场景的可重复性与精度。本文基于CH554微控制器实现符合HID UPS规范的物理层虚拟电池设备,支持零驱动安装、USB原生识别与实时参数调控,适用于笔记本平台功耗建模、电源管理策略验证及自

weixin_35755188的博客 355

Java实现人脸识别

。虹软视觉开放平台是由虹软科技(SenseTime)推出的一套人工智能视觉解决方案。它提供了一系列的视觉算法和开发工具,帮助开发者在各种应用场景中实现人脸识别、人脸检测、人脸比对、人脸属性分析等功能。 虹软视觉开放平台具有较高的准确性和稳定性,并且支持多种平台和编程语言。开发者可以通过使用虹软提供的 API 和 SDK,将人工智能视觉能力集成到自己的应用程序或系统中。

积跬步,至千里。 1万+

【宠物识别系统】设计框架

能跑通的 Demo。收集 10,000 张同品种但不同个体的图片。训练ArcFace模型,验证准确率能否达到 99% 以上。搭建Milvus向量数据库。开发移动端 App/小程序。加入“图像质量检测”和“用户反馈纠错”功能。你是更偏向于做软件服务(如寻宠App、保险API),还是做软硬结合的产品(如智能喂食器)?这决定了我们下一步是深挖云端高并发架构,还是边缘端模型压缩。更偏向于软件,应用更广泛些,继续既然专注于纯软件/SaaS (Software as a Service) 方向。

百态·数智思维 | 聚焦大数据、量化与未来AI 1415

Transformer——从原理、模型架构到内部细节介绍

Transformer模型是一种基于注意力机制的深度学习模型,最早由Google在2017年的论文《AttentionIsAllYouNeed》中提出。自其问世以来就迅速席卷了自然语言处理他(NLP)领域,并在各类主流任务上取得了新的突破,包括机器翻译、语言建模、序列标注和文本分类等。在NLP领域取得巨大成功后,迅速扩展到了计算机视觉(CV)领域,并带来了革命性的变化。这种基于自注意力机制的深度学习模型,不仅在NLP任务中力压群雄,也成为CV领域的新宠。

小拉拉的博客 1万+

Java实现人脸检测

由于文案过于长,在此就不一一介绍了,这份Java后端架构进阶笔记内容包括:Java集合,JVM、Java并发、微服务、SpringNetty与 RPC 、网络、日志 、Zookeeper 、Kafka 、RabbitMQ 、Hbase 、MongoDB、Cassandra 、Java基础、负载均衡、数据库、一致性算法、Java算法、数据结构、分布式缓存等等知识详解。本知识体系适合于所有Java程序员学习,关于以上目录中的知识点都有详细的讲解及介绍,掌握该知识点的所有内容对你会有一个质的提升,

2401_84153146的博客 1480

HFSS螺旋线圈的设计与仿真

undefined.全局变量在这里进行设置:Project/Project Properties, browse and setup the global variables.undefined.方程中的局部变量设置:HFSS/Design Properties, browse and setup the local variables。按照下图填写曲线的方程内容:fill the parameters according to the setup in the following picture。

johnboat的专栏 3847

java人脸识别

‌虹软人脸识别技术‌是由虹软公司开发的一系列人脸识别技术,包括人脸检测活体检测人脸识别等。这些技术基于深度学习算法,能够在复杂环境下快速准确地识别人脸,广泛应用于智能手机、DSC平板IPCamera机器人智能家居智能终端等领域‌。

weixin_65019617的博客 2019

Android无线调试:adb tcpip连接实战指南

本文详细介绍了Android无线调试的完整流程,重点讲解如何使用adb tcpip命令通过Wi-Fi连接设备,摆脱数据线束缚。涵盖环境配置、连接实战、稳定性优化及常见问题排查,帮助开发者高效实现无线adb调试,提升工作效率。

pink的博客 724

【计算机视觉】语义分割实战:FCN、U-Net与DeepLab系列详解

语义分割实战:FCN、U-Net与DeepLab系列详解,人工智能、大模型、AI深度学习在计算机视觉领域取得了令人瞩目的进展,语义分割作为计算机视觉领域的关键任务,旨在将图像中的每个像素都分配到特定的类别中,实现对图像内容的精细理解。与目标检测关注物体的类别与位置不同,语义分割能够对场景中的所有元素进行像素级别的分类,这在自动驾驶、医学图像分析、遥感图像解译等众多领域都有着至关重要的应用。例如,在自动驾驶中,准确的语义分割可以帮助车辆识别道路、行人、交通标志等,为安全行驶提供决策依据;在医学图像分析中……

不踩坑,不知道坑有多深;不总结,踩过的坑白踩。 9万+

三分钟极速体验:Java版人脸检测,springmvc教程视频

这里分类和 《一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》 【docs.qq.com/doc/DSmxTbFJ1cmN1R2dB】 完整内容开源分享 汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 本篇概览 检测照片中的人脸,用Java可以实现吗? 当然可以,今天咱们用最少的时间、最简单的操作来体验这个实用的功能,当您提交一张带有人脸的照片后,会看到下图效果,所有人脸都被识别到并被框选出来了:.

m0_54865014的博客 222

《SAP FICO系统配置从入门到精通共40篇》030、集成配置:FI与生产计划(PP)的自动科目确定

FI和PP的自动科目确定,本质上是把生产业务翻译成会计语言。翻译规则就藏在那些配置表里。配的时候多想一步:这个业务动作,在财务眼里是什么?是材料消耗?是产出入库?还是工费分摊?想清楚这个,再看配置界面,那些代码就不是天书了。最好的测试方式,是月底关账前,让生产部门跑一遍所有类型的生产订单。配置对不对,业务最知道。

985大学毕业,前某大厂员工,啥都会点的程序员! 576

三分钟极速体验:Java版人脸检测,mysql锁机制面试题

为了简化操作,接下来会用到docker,对应的镜像体积巨大,达到了恐怖的4.69G,建议您为自己的docker做好加速配置,可以减少下载等待时间; 由于opencv体积庞大,再加上javacv的依赖库也不小,这才导致超大镜像的出现,还望您多多海涵,标题中的《三分钟极速体验》是要去掉镜像的等待时间的,您要是觉得欣宸的标题起得很无耻,我觉得您是对的… 环境信息 为了简化体验过程,接下来会用到docker,推荐的环境信息如下: 操作系统:Ubuntu 16.04.1 LTS 服务器版(MacB..

m0_65483847的博客 103

基于GPUMD的NEP机器学习势函数—二氧化硅融化

势函数作为分子动力学模拟中最终要的输入之一,其准确性很大程度上决定了模拟结果的可靠性,传统经验势无法很好地描述所有现象,而能进行准确预测的基于第一性原理计算的分子动力学计算量非常大,无法进行大体系长时间的计算。因此最近兴起的机器学习势函数正是解决这一问题的有效工具,它可以通过对第一性原理的计算结果进行学习,通过这个方法得到的势函数具有接近第一性原理的计算精度。这里介绍一种基于GPUMD的NEP机器学习方法。

Rockyoung 5322

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

Java版人脸检测详解上篇:运行环境的Docker镜像(CentOS+JDK+OpenCV)

Java版人脸检测的应用依赖JDK和OpenCV(3.4.3版本),这些依赖项如果做成基础docker镜像,就可以给更多的业务应用使用了

程序员欣宸的博客 4270

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

Java版人脸检测详解下篇:编码

看过《三分钟极速体验:Java版人脸检测》一文后,您可能想知道这是如何实现的,本文咱们一起来开发完整的代码

程序员欣宸的博客 1403

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

Java中利用OpenCV进行人脸识别

​ OpenCV(Open Source Computer Vision Library)是一个开源计算机视觉库,它提供了丰富的工具和算法,用于处理图像和视频数据。该库由一系列高效的计算机视觉算法组成,涵盖了许多领域,包括目标识别、图像处理、机器学习、三维重建等。OpenCV是一个跨平台的计算机视觉库,支持Windows、Linux、macOS、iOS等多个操作系统。OpenCV提供了丰富的图像处理功能,包括图像滤波、边缘检测、形态学操作、颜色空间转换等。

码字不易,大家的支持就是我坚持下去的动力 1万+

java深度学习人脸检测、特征提取、人脸对比

网上几乎没有关于java使用深度学习的人脸识别完整的源码,这个是我进半年来自己摸索出来的,现在开源出来,希望对喜欢人脸识别的java社区有帮助。 人脸识别分为以下3步骤完成: 1.人脸定位,也叫人脸检测,就是在一张图片中去定位人脸区域,并截图人脸照片。 2.根据步骤1得到的人脸截图输入模型,提取特征,得出一个512维度的特征向量数组。 3.根据2得出的向量数组输入分类网络,输出分类最相似的结果:lab和相似度。 本人已经完全封装好了,可直接运行测试代码调用海康等摄像头或者本地usb摄像头进行人

So straw? 7973

算法优化二——如何提高人脸检测正确率

提高人脸检测正确率,如何使用Opencv中自带的人脸分类器

AIGC | 智能洞察,创造未来 2万+

java实现opencv人脸识别(二)

Java下使用opencv进行人脸检测 工作需要,研究下人脸识别,发现opencv比较常用,尽管能检测人脸,但识别率不高,多数是用来获取摄像头的视频流的,提取里面的视频帧,实现人脸识别时通常会和其他框架搭配使用,比如face_recognition、SeetaFace Engine、Facenet。不过这里先简单介绍下opencv在java下的使用(网上大多都是C++的demo,这里是使用其ja...

机器之我心的博客 1万+
上一篇: 浅谈时序数据库内核:如何用单机扛住亿级数据写入
下一篇: 深入理解Java虚拟机之类加载机制篇
在酒吧写代码
博客等级 码龄7年 211粉丝 330原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值