当前位置: 首页 > news >正文

基于开源模型搭建实时人脸识别系统(五):人脸跟踪

继续填坑,之前已经讲了人脸检测,人脸识别实战之基于开源模型搭建实时人脸识别系统(二):人脸检测概览与模型选型_开源人脸识别模型_CodingInCV的博客-CSDN博客,人脸检测是定位出画面中人脸的位置,理论上把检测到的人脸进行提特征就能做人脸识别了,不过直接这样做是有缺陷,一是存在很大的资源浪费,毕竟同一个人出现在画面,我们实际上应该只需要做一次识别就知道他的身份(理想情况下),而不需要每一帧都去做;二是如果对每一帧都进行独立的检测->识别,就会出现频繁的事件,不利于业务的开发。当然,还有一些其他需要使得我们需要一种方式在不做识别的情况下,就知道当前帧的目标和前面帧的目标是同一个目标,比如我们要对一个门口进行进出的计数,这个领域就是目标跟踪。
多目标跟踪是对于给定的视频序列,找到每一帧图像中的运动 目标,在连续视频帧中对同一个目标分配相同的身份标识号(ID), 从而形成不同物体各自的运动轨迹。这些物体可以是任意的,如行 人、车辆、运动员、动物以及足球等无生命物体,人脸跟踪属于目标跟踪。

基于机器学习的目标跟踪

与其他领域类似,在深度学习爆发前,也有很多基于机器学习的目标跟踪方法,一般是依据目标的颜色分布信息,如Meanshift,或相邻帧的像素匹配,如光流法。感兴趣可以自行搜索。

基于目标检测的跟踪(tracking by detection)

这类方法对每一帧的检测结果与历史跟踪结果进行匹配(对于第一次出现的目标分配新的ID),最简单的一种方式是用目标检测框与历史跟踪框的IOU来评价目标的匹配度,使用贪心算法进行两两匹配,将IOU超过阈值的且最匹配的检测框作为最新的跟踪框,若有检测框未匹配上,则新建ID, 若有跟踪框未匹配上,则删除ID。匹配方法还有匈牙利匹配等。
除了直接使用检测框更新跟踪框外,还有与卡尔曼滤波相结合更新跟踪框的方式,代表性的方式是SORT(Simple Object Realtime Tracking)。

基于目标回归的跟踪

基于目标检测的跟踪比较依赖目标检测框的精度和速度,且实际上没有利用上历史信息来帮助检测。基于目标回归的方法则利用历史跟踪框,回归该目标在当前帧预测目标的位置。比如人脸中,有些方法利用MTCNN的Onet去回归人脸位置,这种方法一般要比每帧检测要快(单目标下)。

基于深度特征的目标跟踪

在发生目标遮挡时,完全基于框匹配或传统机器学习的方法容易出现目标丢失,从而目标ID发生变化。基于深度特征的目标跟踪通过提取目标的特征然后匹配的方式将目标重新关联上,代表方法是DeepSort, 这种方式需要提取目标特征,计算量较高。

基于端到端的目标跟踪

上面的方法基本都是分步骤的实现目标跟踪:目标检测/回归->框匹配,还有一种方式是端到端的方式,不分多个步骤,对硬件要求高,笔者也没有了解过。

本系统的选择

考虑到CPU实时需要,选择基于目标检测的跟踪, 具体而言选择sort方法。

项目源码

https://mbd.pub/o/bread/mbd-ZJyTmZty

相关文章:

基于开源模型搭建实时人脸识别系统(五):人脸跟踪

继续填坑,之前已经讲了人脸检测,人脸识别实战之基于开源模型搭建实时人脸识别系统(二):人脸检测概览与模型选型_开源人脸识别模型_CodingInCV的博客-CSDN博客,人脸检测是定位出画面中人脸的位置&#xff0c…...

VUE | 配置环境变量

本篇目录 1. 创建开发环境配置文件2. 创建正式环境配置文件3. 在代码中访问环境变量4. 加载环境变量 在 Vue 项目中是使用 .env 文件来定义和使用不同的环境变量,这些文件在 Vue 项目根目录下创建。推荐有几种环境就创建几个 .env 文件,下面就开发环境和…...

Dynamic-TP入门初探

背景 在使用线程池的过程中,会出现一些痛点: 代码中创建了一个线程池,但是不知道那几个核心参数设置多少比较合适。凭经验设置参数值,上线后发现需要调整,改代码重新发布服务,非常麻烦。线程池相对开发人…...

Git的基本操作:远程操作

7 Git的远程操作 远程操作主要是指,在不同的仓库之间进行提交和代码更改。是一个明显的对等的分布式系统。其中本地个仓库与远程仓库,不同的远程仓库之间都可以建立这种关系。这种关系之间的操作主要有pull和push。 远程仓库 创建SSH key远程仓库和本…...

【IOC,AOP】spring的基础概念

IOC 控制反转 对象的创建控制权转交给外部实体,就是控制反转。外部实体便是IOC容器。其实就是以前创建java对象都是我们new一下,现在我们可以把这个new交给IOC容器来做,new出来的对象也会交由IOC容器来管理。这个new出来的对象则称为Bean。 …...

安全实战 | 怎么用零信任防范弱密码?

防范弱密码,不仅需要提升安全性,更需要提升用户体验。 比如在登录各类业务系统时,我们希望员工登录不同系统不再频繁切换账号密码,不再需要3-5个月更换一次密码,也不再需要频繁的输入、记录、找回密码。 员工所有的办…...

1-4 AUTOSAR方法论

总目录——AUTOSAR入门详解AUTOSAR入门详解目录汇总:待续中。。。https://xianfan.blog.csdn.net/article/details/132818463 目录 一、前言 二、方法论 三、单个ECU开发流程 一、前言 汽车生产供应链上有以下角色:OEM、TIER1、TIER2,其主…...

MFC C++ 数据结构及相互转化 CString char * char[] byte PCSTR DWORE unsigned

CString: char * char [] BYTE BYTE [] unsigned char DWORD CHAR:单字节字符8bit WCHAR为Unicode字符:typedef unsigned short wchar_t TCHAR : 如果当前编译方式为ANSI(默认)方式,TCHAR等价于CHAR,如果为Unicode方式&#xff0c…...

多版本CUDA安装切换

系统中默认的安装CUDA为12.0,现在需要在个人用户下安装CUDA11.7。 CUDA 下载 CUDA官网下载 安装 Log file not open.Segmentation fault (core dumped)错误 将/tmp/cuda-installer.log删除即可。重新安装,去掉驱动的安装,设置Toolkit的安装…...

sqlserver union和union all 的区别

1.首先在数据库编辑1-40数字&#xff1b; 2.查询Num<30的数据&#xff0c;查询Num>20 and Num<40的数据&#xff0c;使用union all合并&#xff1b; 发现30-20的数字重复了&#xff0c;可见union all 不去重&#xff1b; 3.查询Num<30的数据&#xff0c;查询Num…...

Matlab 如何计算正弦信号的幅值和初始相角

Matlab 如何计算正弦信号的幅值和初始相角 1、概述 如果已知一个正弦信号的幅值&#xff0c;在FFT后频域上该信号谱线的幅值与设置值不同&#xff0c;而是大了许多&#xff1b;如果不知道某一正弦信号的幅値&#xff0c;又如何通FFT后在頻域上求出该正弦信号的幅值呢? 2、…...

华为hcie认证培训报班培训好?还是自学好

华为HCIE认证培训报班培训和自学各有优势。 培训的优势&#xff1a; 系统性学习&#xff1a;培训课程通常会系统地涵盖HCIE认证所需的各个知识点&#xff0c;帮助你建立全面的理论体系。指导与互动&#xff1a;培训中&#xff0c;能够与资深讲师互动&#xff0c;及时解答疑惑…...

ASP.NET+sqlserver通用电子病历管理系统

一、源码描述 这是一款简洁十分美观的ASP.NETsqlserver源码&#xff0c;界面十分美观&#xff0c;功能也比较全面&#xff0c;比较适合 作为毕业设计、课程设计、使用&#xff0c;感兴趣的朋友可以下载看看哦 二、功能介绍 该源码功能十分的全面&#xff0c;具体介绍如下&…...

wireshark通常无法抓取交换机所有端口报文

Wireshark 是一种网络分析工具&#xff0c;它通常在计算机的网络接口上进行数据包捕获和分析。然而&#xff0c;Wireshark 默认情况下无法直接捕获交换机所有端口的报文。 交换机是一种网络设备&#xff0c;它在局域网内转发数据包&#xff0c;根据目的MAC地址将数据包仅发送到…...

猫头虎的技术笔记:Spring Boot启动报错解决方案

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f984; 博客首页——&#x1f405;&#x1f43e;猫头虎的博客&#x1f390; &#x1f433; 《面试题大全专栏》 &#x1f995; 文章图文…...

Istio网关流量转发

摘要 Istio网关转发到后端服务的步骤&#xff0c;可以按照以下详细说明进行操作&#xff1a; 配置Istio Sidecar&#xff1a;确保目标后端服务已经部署并成功运行&#xff0c;并为其启用Istio Sidecar。Istio Sidecar负责在Pod中注入Istio代理&#xff0c;以便实现流量控制和…...

阿里云acp云计算认证考试科目有哪些?

阿里云ACP云计算认证考试科目包括以下内容&#xff1a; 阿里云云计算基础知识&#xff1a;包括云计算的定义、特点、服务模式、部署模式、虚拟化技术等相关知识。阿里云产品&#xff1a;包括阿里云ECS、RDS、SLB、OSS、DNS等核心产品的架构、使用方法、优化技巧等相关知识。云…...

8、Spring security配置放过的请求又被拦截了

项目场景&#xff1a; 在项目中有一些接口需要放开spring security拦截&#xff0c;配置方法如下&#xff0c;其中permitUrls为需要放过的请求路径。 Override public void configure(WebSecurity web) {web.ignoring().antMatchers(permitUrls); }问题描述 实际请求地址&am…...

4.后端·新建子模块与开发(传统模式)

文章目录 学习资料新建子模块与各层查询entity的列表entitymapper层service层controller层 测试 学习资料 https://www.bilibili.com/video/BV13g411Y7GS?p8&spm_id_frompageDriver&vd_sourceed09a620bf87401694f763818a31c91e b站的学习视频 新建子模块与各层 在r…...

.netcore 连接 apache doris

apache doris 兼容mysql协议&#xff1b;所以我们在.netcore项目中&#xff0c;可以使用Mysql的驱动 dotnet add package MySqlConnector 测试代码&#xff1a; [HttpGet]public async Task<string> Get2(){//打开连接await using var connection new MySqlConnectio…...

Pi0 Web演示服务监控:Prometheus+Grafana指标采集与告警配置

Pi0 Web演示服务监控&#xff1a;PrometheusGrafana指标采集与告警配置 1. 项目概述与监控需求 Pi0作为一个先进的视觉-语言-动作流机器人控制模型&#xff0c;其Web演示服务的稳定运行对于用户体验和开发测试至关重要。在生产环境中&#xff0c;我们需要实时掌握服务的运行状…...

Xilinx UltraScale GT收发器实战:从时钟配置到8B/10B编码的避坑指南

Xilinx UltraScale GT收发器实战&#xff1a;从时钟配置到8B/10B编码的避坑指南 在高速数字系统设计中&#xff0c;Xilinx UltraScale系列FPGA的GT收发器是实现多Gbps数据通信的核心组件。然而&#xff0c;许多工程师在实际部署时会遇到时钟配置混乱、弹性缓冲区溢出等棘手问题…...

手把手教你用逻辑分析仪抓取DVC1124的I2C波形(附CRC校验分析)

手把手教你用逻辑分析仪抓取DVC1124的I2C波形&#xff08;附CRC校验分析&#xff09; 在嵌入式硬件调试中&#xff0c;I2C通信的波形分析是验证设备交互正确性的关键步骤。集澈DVC1124作为一款高性能AFE芯片&#xff0c;其I2C协议中独特的CRC校验机制为通信可靠性提供了保障。本…...

从格式枷锁到自由播放:ncmdumpGUI的NCM解码技术突围

从格式枷锁到自由播放&#xff1a;ncmdumpGUI的NCM解码技术突围 【免费下载链接】ncmdumpGUI C#版本网易云音乐ncm文件格式转换&#xff0c;Windows图形界面版本 项目地址: https://gitcode.com/gh_mirrors/nc/ncmdumpGUI 当你花费数小时精心收藏的音乐专辑在智能音箱上…...

告别BibTeX混乱:在LaTeX中精准控制单条参考文献格式(颜色、字体)的实战技巧

告别BibTeX混乱&#xff1a;在LaTeX中精准控制单条参考文献格式&#xff08;颜色、字体&#xff09;的实战技巧 学术写作中&#xff0c;参考文献的视觉呈现往往被忽视。当审稿人要求"突出显示新增文献"时&#xff0c;当需要区分自己的前期工作与奠基性研究时&#x…...

半方差函数四大参数保姆级解读:从块金值到变程的空间自相关分析

半方差函数四大参数保姆级解读&#xff1a;从块金值到变程的空间自相关分析 刚接触地理统计时&#xff0c;看到"半方差函数"这个术语总让人望而生畏。但当我第一次用气象站数据绘制出那条神奇的曲线时&#xff0c;突然理解了空间数据背后隐藏的对话——就像侦探通过蛛…...

Hunyuan-MT-7B真实案例集:电商商品描述多语言生成效果

Hunyuan-MT-7B真实案例集&#xff1a;电商商品描述多语言生成效果 1. 引言&#xff1a;当电商遇上多语言翻译 想象一下这个场景&#xff1a;你是一家跨境电商公司的运营&#xff0c;手头有一款新品的英文描述&#xff0c;需要快速翻译成法语、西班牙语、德语、日语等十几种语…...

告别数据丢失!用ArcMap的‘图层组’功能,一次性搞定Shapefile转KML和标注

告别数据丢失&#xff01;用ArcMap的‘图层组’功能高效实现Shapefile转KML与标注一体化 在GIS数据处理中&#xff0c;Shapefile转KML是常见需求&#xff0c;但保留标注信息往往让用户头疼。传统方法需要分别处理数据和标注&#xff0c;步骤繁琐且容易出错。本文将介绍如何利用…...

插件管理终极指南:从入门到精通的全方位策略

插件管理终极指南&#xff1a;从入门到精通的全方位策略 【免费下载链接】Magpie An all-purpose window upscaler for Windows 10/11. 项目地址: https://gitcode.com/gh_mirrors/mag/Magpie 为什么80%的用户都没用对插件功能&#xff1f;在开源工具Magpie的使用过程中…...

单片机电子产品开发全流程指南

基于单片机的电子产品开发全流程解析1. 项目概述现代电子产品设计中&#xff0c;单片机已成为实现复杂功能的核心器件。从智能家居设备到健康监测仪器&#xff0c;各类产品都依赖单片机实现可编程控制功能。本文将系统介绍基于单片机的电子产品开发全流程&#xff0c;涵盖从需求…...