RK3399平台上基于MTCNN实现人脸识别

RK3399平台上基于MTCNN实现人脸识别

本文将介绍如何在RK3399平台上使用MTCNN算法实现人脸检测和识别,同时提供相关的源代码。MTCNN是一种多任务卷积神经网络,能够高效准确地检测和定位图像中的人脸,并识别出人脸的特征。

  1. 环境搭建

首先需要在RK3399平台上安装相关的依赖库,包括TensorFlow、Keras、OpenCV等。可以通过以下命令进行安装:

sudo apt-get update
sudo apt-get install libatlas-base-dev python3-pip
pip3 install tensorflow keras opencv-python
  1. MTCNN算法介绍

MTCNN算法包括三个级别的人脸检测器:P-Net、R-Net和O-Net。P-Net是最快速的一级检测器,负责产生候选窗口;R-Net在P-Net检测的候选窗口中对人脸进行更准确的定位;O-Net进一步对候选窗口进行筛选,并进行人脸特征提取。

MTCNN算法具有以下特点:

  • 高速:MTCNN算法可以在非常短的时间内检测到图片中的所有人脸。
  • 鲁棒性:MTCNN算法对于人脸遮挡、光照变化等问题都有很好的鲁棒性。
  • 高精度:MTCNN算法对于小尺寸人脸的检测也非常准确。
  1. 实现步骤

接下来我们将介绍如何在RK3399平台上使用MTCNN实现人脸检测和识别。具体步骤如下:

firefly-rk3399 开发记录5-人脸检测实现 1.人脸检测 在前面实现的基础上,这里实现人脸检测就相对方便得多了,实现方式简单的采用opencv的分类级联处理haarcascade_frontalface_default.xml。在检测之后,返回人脸检测框,送到上一章节实现的自定义viewfinder中绘制。 首先先加载级联器 QSmartMethod::QSmartMethod(QObject *parent) : QObject(parent) { cascade.load( "/usr/share/OpenCV/haarc 阅读详情

相关推荐

瑞芯微板子人脸识别demo展现

我使用的瑞芯微板子是RK3399Pro,这个板子自带有人脸识别功能,于是参看Rockchip_Developer_Guide_RockX_SDK_CN.pdf这个文档进行测试,具体操作手册上还算详细,在此不赘述。 原始的程序中是可以用摄像头来demo的,但是板子没直接接显示器,你imshow不了呀,无赖之下只能采用网络通讯方式来把结果发送到pc端然后绘制结果,最后显示,在此我采用了python3中的socket来通讯并收发json数据,下面直接上程序吧,先说明下,原始代码写的...

007的博客 2188

基于YOLOv5算法实现人数统计和人脸识别并部署于开发板rk3588

YOLO算法在开办板rk3588上部署

Lost_The_Mind的博客 9879

RK3399平台开发系列讲解(项目实践篇)1.3、在RK3399上通过MTCNN进行人脸识别(一)MTCNN介绍

平台 内核版本 安卓版本 RK3399 Linux4.4 Android7.1 文章目录为什么是嵌入式平台使用MTCNN进行人脸识别MTCNN整体处理过程 为什么是嵌入式平台使用MTCNN进行人脸识别 ------图像金字塔—>------NMS----> MTCNN算法优势: 针对此目标检测算法的优势,可分为以下来说明: (1)准确度(recall):它采用的是级联卷积神经网络,由粗到细的对目标进行检测,同时使用了关键点的信息对目标进行定位和 Online Ha...

内核笔记 4369

RK3399平台开发系列讲解(项目实践篇)1.4、MTCNN-人脸识别代码分析

MTCNN(Multi-task Cascaded Convolutional Networks)算法是用来同时实现face detection和alignment,也就是人脸检测和对齐。 今天详细分析下关键部分程序。 系列 内容 深度学习 MTCNN-人脸识别代码分析 文章目录DetectFace API 接口detect 识别程序过程P-Net网络代码候选框的生成程序非极大...

内核笔记 3258

52、人脸检测部署RK3399 PRO,完成RKNN的人脸检测

基本思想:帮助好友部署一个人脸检测模型,也是自己业务需求,部分代码来自好友陈同学,自己改了改c++的代码可以部署rk3399pro上了,其它资料见附录吧。链接: https://pan.baidu.com/s/1MSZG-XeIFmBfYJwUMThzDQ?pwd=1ujq 提取码: 1ujq。一、测试mnn效果,其中mnn直接搬运了大佬参考附录一。二、测试rknn效果。

sxj731533730 2439

RK3568平台的人脸检测与五点关键点识别实战

本文还有配套的精品资源,点击获取 简介:本项目着重于在RK3568处理器上实现人脸检测和人脸五点关键点检测的AI应用。RK3568是一款专为嵌入式AI设计的高性能低功耗SoC,提供了CPU、GPU及AI加速器等强大硬件支持。项目将通过使用深度学习模型如MTCNN和基于CNN的方法来完成人脸检测和关键点识别任务。此外,还包含了从数据准备到模型移植、硬件集成和性能优化的完整开发...

weixin_30674431的博客 3130

Python经常遇到导入xlwings就出错,如何解决

Python经常在导入xlwings时遇到错误。有人建议尝试重装或升级xlwings,但这些操作后仍然无法解决导入错误问题。

felix_8的博客 1740

ADRV902x射频评估实战:手把手教你用TES GUI生成ARM bin与JESD204C配置文件

在射频前端系统设计中,ADRV902x系列收发器凭借其宽带性能和灵活配置能力,已成为5G基站、微波回传等场景的核心器件。然而当工程师面对非官方硬件平台时,如何高效利用Transceiver Evaluation Software(TES)完成关键配置,成为项目推进的第一道门槛。本文将彻底解析脱离ADS9母板后的完整离线工作流,从参数预设到文件生成,手把手解决真实工程中的配置痛点。在Demo模式下,所有硬件状态检测都会被跳过,但配置文件生成功能完全可用。作为基础模板,因其配置最为简洁,便于后续自定义修改。

weixin_33704591的博客 429

最优化方法 25:PDHG

前面的章节要么从原始问题出发,要么从对偶问题出发,通过求解近似点或者一个子优化问题进行迭代,而且推导过程中我们发现根据问题的参数特征,比如矩阵 AAA 是瘦高型的还是矮胖型的,采用对偶和原始问题的复杂度会不一样,可以选择一个更简单的。而这一节,我们将要从原始对偶问题出发来优化,什么是原始对偶问题呢?就是原始优化变量和对偶优化变量(原始函数和共轭函数)混合在一块,看下面的原理就知道了。 1. 原始对偶问题 现在考虑原始优化问题,其中 f,gf,gf,g 为闭凸函数 min⁡f(x)+g(Ax) \min \q

Glooow的博客 4602

从时频谱图到智能感知:雷达信号处理的AI进化之路

本文探讨了人工智能在雷达信号处理中的革命性应用,特别是深度学习在时频谱图分析中的突破性进展。通过对比传统信号处理方法与AI驱动的解决方案,展示了CNN、3D CNN等模型在目标检测、行为识别等场景中的优势,并分析了数据获取、模型优化等关键技术挑战。AI赋能的雷达技术已广泛应用于智能交通、工业检测和医疗健康领域,展现出巨大的发展潜力。

weixin_29284201的博客 507

FreeRTOS任务调度实战:如何让STM32同时处理温湿度采集、OLED显示和云端通信

本文通过一个基于STM32的物联网终端项目,详细讲解了如何利用FreeRTOS实现多任务调度,同时处理温湿度采集、OLED显示和云端通信。文章深入探讨了任务规划、堆栈分配、信号量与消息队列等核心机制,并重点优化了ESP8266通信任务的非阻塞设计与稳定性,为构建响应迅速、运行可靠的嵌入式系统提供了实战指南。

weixin_29188043的博客 331

[STC32G144K246入门第三步]驱动串口收发(接收不定长数据)

本文介绍了STC32G144K246单片机的串口功能配置与使用。该芯片具有8组独立USART,支持异步/同步模式,各串口可独立配置波特率并支持DMA传输。重点讲解了串口寄存器配置方法,包括引脚设置、波特率计算和中断处理。特别指出RX引脚需配置为开漏或准双向口以避免接收乱码。还介绍了通过定时器实现不定长数据接收的技术方案,并提供了完整的初始化代码和中断处理函数示例。文中包含串口时序图、寄存器配置表等实用参考信息,适合嵌入式开发者快速上手多串口应用开发。

sinat_58149788的博客 196

《网络安全自学教程》- MySQL脱库原理和步骤

MySQL脱库,脱库的原理,怎么脱库,脱库的步骤,一库三表六字段

wangyuxiang946的博客 1万+

STM32实战开发(122):基于STM32的溶解氧检测系统设计与实现

溶解氧(DO, Dissolved Oxygen)是水质检测中至关重要的指标之一,尤其是在环境监测、工业废水处理以及水产养殖等领域,溶解氧的浓度直接影响到水体的生态环境和生物的健康。电流的大小就可以用来反映水中溶解氧的浓度。本博客将详细介绍如何基于STM32微控制器开发一个智能溶解氧检测系统,内容涵盖系统的硬件设计、软件开发、优化与调试等方面,提供实际的代码实现与实验数据,并展望溶解氧检测系统在物联网环境下的应用。为了提高系统的精度,可以优化ADC的采样率,增加传感器的校准频率,或使用更加精确的传感器。

2201_76125393的博客 1602

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

上一篇: 深入探究Linux内核锁机制——单片机应用
下一篇: USB网络驱动开发——基于单片机
普通网友
博客等级 码龄4年 1011粉丝 1742原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

编码实践

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值