盘点18个优秀图像识别开源项目

大家好,我是Echa。

前段时间小编由于发了一篇人脸识别优秀开源项目:推荐6个优秀的人脸识别开源项目

有兴趣的粉丝们可以回过头看看。关于这篇黑科技文章,陆续有粉丝私信小编,有没有关于图像识别的相关优秀开源项目,比如人脸识别、图像分类、场景文字检测、车牌识别、面部表情识别、图像标注、人体姿势识别,拍照识别实物等等,粉丝们的呼吁声,那作为你们的小编,必须给你们安排上。

今天小编给大家分享18个优秀图像识别开源项目,个个都是经典,希望对大家有所帮助。

创作不易,喜欢的老铁们加个关注,点个赞,打个赏,后面会不定期更新干货和技术相关的资讯,速速收藏,谢谢!你们的一个小小举动就是对小编的认可,更是创作的动力。

全文大纲

  1. facenet_facerecognition 基于facenet的实时人脸识别系统
  2. FaceAC 人脸识别扫描(活体检测功能,眨眼、摇头、点头),身份证认证
  3. semantic slam nav ros 针对带有RGBD相机的服务机器人
  4. christmas-hat 自动识别人脸并给头像戴上圣诞帽
  5. frontend-park 一个有趣的前端趣味知识公园
  6. weixinxiaochengxu 小帅一点资讯微信小程序图像识别
  7. face_recognition 人脸识别考勤系统
  8. face-ai 一款入门级的图片识别系统
  9. medicine-identification 中药图像识别系统
  10. EasyPR是一个中文的开源车牌识别系统
  11. hand-keras-yolo3-recognize 基于图像的手语识别系统研究
  12. FaceMerge 人脸融合
  13. yx-image-recognition 图像识别系统
  14. facenet_face_regonistant 智能识别人脸管理系统
  15. meihu-meiyan 直播美颜系统SDK,女生的最爱
  16. PaddleOCR 一套丰富、领先、且实用的OCR工具库
  17. idCardCv 身份证号码识别系统
  18. DeepCamera 开源AI相机识别系统

facenet_facerecognition

Github:https://github.com/windzu/facenet_facerecognition

facenet_facerecognition 基于facenet的实时人脸识别系统

使用opencv+mtcnn+facenet+python+tensorflow,开发环境为ubuntu18.04,实现局域网连接手机摄像头,对目标人员进行实时人脸识别,效果并非特别好,会继续改进

如下图:


这是使用手机摄像头拍摄ipad从网上随便搜来的合照进行测试(也许也不是随便搜的...),能够准确将人脸框出,并进行识别,因为我使用的是knn训练的,而这几个人是未经过特殊训练的,所以将其归结为未知人群,再接下来一段时间会对其进行改进,最终效果应该是可以实现单张图片数据库比对,这样就不用对需要识别的目标每一个都训练一遍了,这也是人脸识别要达到的效果,上面所说的triplet loss就是一种很好的方法


FaceAC

Github:https://github.com/sxpl/FaceAC

FaceAC 人脸识别扫描(活体检测功能,眨眼、摇头、点头),身份证认证

如下图:






semantic slam nav ros

Github:https://github.com/MRwangmaomao/semantic_slam_nav_ros

semantic slam nav ros 针对带有RGBD相机的服务机器人,物流机器人等。具有:语义地图构建、定位导航、三维重构、重定位、动态物体识别、移动避障、手势识别、人脸识别、语音合成与识别等功能。

特性

  1. 动态物体检测
  2. 视觉建图与定位
  3. 重定位
  4. 稠密点云、面元三维重建
  5. 语义地图
  6. 手势识别控制
  7. 语音唤醒与识别控制
  8. 局部避障与DWA控制
  9. 语音识别与播放

如下图:





christmas-hat

Github:https://github.com/hk029/christmas-hat

通过手动的方式,我们是很容易确定圣诞帽应该放在什么位置的,那机器如何能确定呢?有人可能想到了那不就是人脸识别技术?是的,这就是我们今天需要用到的技术。

早在 2017 年之前,纯前端说想实现人脸识别还有点天方夜谭的感觉,但是 Tensorflow.js 的出现让这一切成为了可能:

它是 Google 推出的第一个基于 TensorFlow 的前端深度学习框架。它允许你在浏览器上训练模型,或以推断模式运行预训练的模型。TensorFlow.js 不仅可以提供低级的机器学习构建模块,还可以提供高级的类似 Keras 的 API 来构建神经网络。

Tensorflow.js 是我第一个想到的可以应用的库,但是当我打开官方文档,看到如 Tensors (张量)、Layers (图层)、Optimizers (优化器)……各种陌生概念扑面而来,砸的人生疼,现学感觉是来不及了,那有什么办法能在我不了解各种概念的情况下也能快速上手人脸识别呢?

答案当然有,那就是:face-api.js。

face-api.js

face-api.js 是大神 Vincent Mühler 的最新力作,他为人所知的开源项目还有 opencv4nodejs ,face-recognize(NodeJs 的人脸识别包,不过现在 face-api.js 已经支持 Node 端了,他推荐直接使用 face-api)

face-api.js 是一个建立在 Tensorflow.js 内核上的 Javascript 模块,它实现了三种卷积神经网络(CNN)架构,用于完成人脸检测、识别和特征点检测任务。简而言之,借助它,前端也能很轻松的完成人脸识别的工作。

原理简析

想看实现的童鞋请直接略过这一段,直接开始上手操作。

我们知道机器学习有几个基本要素:数据,模型,算法。他们之间的关系如下:

  • 训练数据: 训练数据就是一系列打过标签的数据,比如一系列人脸和不是人脸的图片数据。
  • 模型(这里我们主要指监督学习模型): 模型你可以简单理解为是一个预测函数(f(x) = y),简单来说就是根据输入的数据,能给出结果。
  • 算法: 算法就是教机器如何获得最优的模型(损失最小)。比如当机器通过当前模型识别到一张训练图片为人脸,但是标签是「非人脸」,此时就需要根据算法对模型进行调整。常见的算法有例如:梯度下降法(Gradient Descent),共轭梯度法(Conjugate Gradient),牛顿法和拟牛顿法,模拟退火法(Simulated Annealing)……

所以,我们可以这么说,只要有了一个训练好的预测模型,我们就可以对未知数据进行分析预测了。

如下图:


光识别出人脸还远远不够,我们的很多应用都需要找到人脸的特征点(眉毛,鼻子,嘴巴这些的)。因此 face-api.js 会从图片中抽取出每个边界框中的人脸居中的图像,接着将其再次作为输入传给人脸识别网络,让其学习。

为了实现特征点识别这个目标,face-api.js 又实现了一个简单的卷积神经网络,它可以返回给定图像的 68 个人脸特征点:

通过该算法,face-api.js 训练了一系列的模型,通过使用这些已经训练好的模型,我们可以快速实现我们想要的功能。




frontend-park

Github:https://github.com/wangrongding/frontend-park

这是一个有趣的前端趣味知识公园~该项目是我平时捣鼓前端相关技术的一些案例集合。【涵盖:(Tensorflow.js-姿态识别,人脸识别),(WebRTC-音视频通话,录屏,虚拟背景,信令服务器),(Threejs-太阳系,3D 动画),(图片处理-千图成像,图片压缩,画板),(隐写术-文本隐写加密,图片隐写加密)等等...】

通过摄像头实时识别人体姿态,可以应用于比如:健身房、瑜伽教室、舞蹈教室等等。

如下图:

weixinxiaochengxu

Github:https://github.com/xiaoshuaishuai319/weixinxiaochengxu

小帅一点资讯微信小程序图像识别源码,微信小程序百度AI接口源码,微信小程序图片上传显示缩放缩略图,人工智能,图像识别,人脸颜值分析,植物、动物、车型、LOGO、食材、手写文字识别等

如下图:


face_recognition

Github:https://github.com/66pig/face_recognition

face_recognition 人脸识别考勤系统,该软件的话从去年到现在,一直完美支持100人以上考勤

如下图:

face-ai

Github:https://github.com/ZhangLe1993/face-ai

face-ai 是一款入门级的人脸识别、视频人脸识别、图片分类, 性别检测, 年龄检测, 照片特效处理, 天空滤镜, 图像色温调整, 图像对比度调整, 图像饱和度调整, 图像高光调整, 图像阴影调整, 图像明度调整算法实战项目. JAVA+OpenCV

功能

  1. 人脸检测、识别(图片、视频)
  2. 更换背景图(例如给任务换一张海景背景图)
  3. 图片合成(多张照片合成)
  4. 证件照更换背景色
  5. 年龄识别
  6. 性别识别
  7. 图片修复(可用于水印去除)
  8. 图片分类
  9. 老照片
  10. 素描
  11. 图像色温调整
  12. 图像对比度调整
  13. 图像高光调整
  14. 图像明度调整
  15. 图像饱和度调整
  16. 图像阴影调整
  17. 天空滤镜
  18. 人脸检测、识别(Dlib版本)

如下图:







medicine-identification

Gitee:https://gitee.com/xiaohaoo/medicine-identification

medicine-identification 中药识别系统主要采用APP端拍照上传的方式,构建卷积神经网络(CNN)对图像进行识别,具有识别效率高,准确度高的特点。APP端的功能包括但不限于拍照识别、中药问答(付费咨询)、检索查询、中药性状以及功效查看、方剂智能推荐【开发中】等;本系统包含APP端以及服务器端。

如下图:




EasyPR

Gitee:https://gitee.com/liuruoze/EasyPR

EasyPR是一个开源的中文车牌识别系统,其目标是成为一个简单、高效、准确的非限制场景(unconstrained situation)下的车牌识别库。

相比于其他的车牌识别系统,EasyPR有如下特点:

  • 它基于openCV这个开源库。这意味着你可以获取全部源代码,并且移植到opencv支持的所有平台。
  • 它能够识别中文。例如车牌为苏EUK722的图片,它可以准确地输出std:string类型的"苏EUK722"的结果。
  • 它的识别率较高。图片清晰情况下,车牌检测与字符识别可以达到80%以上的精度。

如下图:



hand-keras-yolo3-recognize

Gitee:https://gitee.com/cungudafa/hand-keras-yolo3-recognize

手语图像识别系统设计

一个基于人体姿态研究的手语图像识别系统。根据OpenPose人体姿态开源模型和YOLOv3自训练手部模型检测视频和图像,再把数字特征进行分类器模型预测,将预测结果以文本形式展现出来。

基于人体姿态的手语图像识别系统采用了软硬件相结合的方法。硬件部分主要是用于采集手语图像的单目摄像头。软件部分主要是通过ffmpeg对视频图像进行处理,然后在Anaconda下配置Python3.6的开发环境,再结合Cmake编译OpenPose模型,最后在VScode编译器中结合OpenCV中的图像算法,实现了对手语图像识别系统所有程序的编译,通过wxFromBuilder框架整合设计了系统主界面。

如下图:





FaceMerge

Gitee:https://gitee.com/endlesshh/FaceMerge

FaceMerge 人脸融合,基于javacv技术,将两张人脸进行深度融合,使用javacv识别人脸和获取人脸68个关键点.

本项目最终实现一个Java版本的人脸替换软件

  1. 本项目javacv技术无需手动安装opencv
  2. 虽然技术手段不同,但是核心算法还是一样的
  3. 使用opencv的68个关键点实行人脸融合
  4. 使用javacv结合百度AI人脸检测(需要人脸72个关键点)实现人脸融合
  5. 只要会用java就可以轻松实现人脸融合,FaceDetect中有两种关键点识别方法,一个是基于百度API,一个是基于opencv的。

如下图:





yx-image-recognition

Gitee:https://gitee.com/admin_yu/yx-image-recognition

基于spring boot + maven + opencv 实现的图像深度学习Demo项目,包含车牌识别、人脸识别、证件识别等功能,贯穿样本处理、模型训练、图像处理、对象检测、对象识别等技术点

包含功能

  • 蓝、绿、黄车牌检测及车牌号码识别
  • 网上常见的轮廓提取车牌算法JAVA实现
  • hsv色彩分割提取车牌算法JAVA实现
  • harrcascade特征识别算法 JAVA实现
  • 基于svm算法的车牌检测训练JAVA实现
  • 基于ann算法的车牌号码识别训练JAVA实现
  • 人脸检测 接下来将实现人脸识别
  • 图片工具: 目前实现了HSV色彩切割,后续将添加更多使用的图片处理工具,用于辅助算法优化
  • 证件文字识别

如下图:


facenet_face_regonistant

Gitee:https://gitee.com/PanChenGeWang/facenet_face_regonistant

利用facenet实现检测图片中的人脸,将识别到的人脸向量存入数据库,此外利用post提交一个新图片(也可以提交一个图片地址,参考face_recognition_api.py文件中get_url_imgae函数自行修改),返回数据库中相似的人脸的信息 算法主要分为2个步骤
1.提取图片中的人脸 ,并保存到临时目录中
2.将人脸图片转换为128维的向量 ,便于后续求人脸相似度

项目主要分为3个步骤
1.提交post请求,将uid ugroup pic提交,进行人脸信息保存操作
2.收到请求后将pic进行处理解析为128维向量保存,并跟uid和ugroup保存入库 ,返回数据库插入成功的id
3.提交post请求,将ugroup pic提交人脸查询请求,意思为在ugroup中查看与图片pic相似的人脸
4.收到请求后,处理图片解析图片中所有的人脸,进行按库查询,然后与该图片中所有人脸相似的uid和距离(相似度距离)

如下图:





meihu-meiyan

官方网址:http://www.facegl.com/

Gitee: https://gitee.com/MeiHuSDK/meihu-meiyan

直播美颜系统特效SDK: 美狐美颜sdk,满足客户在直播平台实现美颜效果、短视频系统自带美颜特效等众多音视频软件业务场景的美化需求的第三方美颜api,是以人脸识别、人脸关键点技术为核心,提供专业级实时美颜、大眼瘦脸、美颜滤镜、动态贴纸、美白磨皮、美型、萌颜等特效的接口,以打造多功能视频美颜软件为目标。现推出开源版本iOS版,Android开源版本正在研发中敬请期待!

如下图:


PaddleOCR

Gitee: https://gitee.com/paddlepaddle/PaddleOCR

PaddleOCR旨在打造一套丰富、领先、且实用的OCR工具库,助力开发者训练出更好的模型,并应用落地。包含总模型仅8.6M的超轻量级中文OCR,单模型支持中英文数字组合识别、竖排文本识别、长文本识别。同时支持多种文本检测、文本识别的训练算法。

如下图:

idCardCv

Gitee: https://gitee.com/endlesshh/idCardCv

idCardCv 身份证号码识别,适用于web端身份证识别服务器,前端进行身份证号码定位,后端精准处理识别,准确率在96左右,对于自治区的身份证前面有其他文字的一样可以识别

如下图:

DeepCamera

Github: https://github.com/SharpAI/DeepCamera

DeepCamera 通过机器学习技术为您的传统监控摄像机和闭路电视/NVR 提供支持。 它通过本地设备上的推理引擎提供基于开源面部识别的入侵检测、跌倒检测和停车场监控。

SharpAI-hub是AI应用程序的云托管,可帮助您在几分钟内在边缘设备上使用闭路电视摄像机部署AI应用程序。

功能特性

  • 使用 SharpAI Hub CLI 进行安装
  • FFMpeg with Nvidia Nano 硬件解码器
  • Face Detector with Nvidia Nano GPU TensorRT MTCNN
  • Face Embedding with Nvidia Nano GPU Pytorch InsightFace
  • 使用 GPU 进行人员检测
  • 与电报机器人 API 集成
  • 移植到杰森纳米
  • 高精度人脸识别
  • 人脸检测
  • 在 ARM Mali GPU 上进行推理
  • 支持Android TF Lite(GPU/CPU/NPU)
  • 支持开源嵌入式Linux。
  • 从移动应用程序进行控制
  • 设备管理系统
  • 向移动设备推送通知
  • 物体检测
  • 基于芹菜的分布式系统
  • 通过忍者闭路电视处理视频的插件
  • 安卓上的应用程序,使用硬件对视频进行解码
  • 使用安卓 GPU 进行运动检测
  • 从移动设备到边缘设备的标签和火车
  • 原生树莓派相机支持
  • 标记服务器和应用程序已关闭,需要 BYOD 文档 API 服务器存储库
  • 图像上传到 AWS 或本地 AWS 兼容服务器 (MINIO)

如下图:

举报
评论 0