井下人员定位是我做了很多年的老话题。从早期的区域读卡到后来的UWB精确定位大家一直在往“更准”“更实时”两个方向卷。但真正接触过井下安全管理的朋友应该都有同感单靠佩戴式定位设备始终解决不了安全闭环的最后一公里——你能知道某个人到了哪条巷道、靠近了哪台设备却不知道他当时是蹲着检修、站着休息还是已经摔倒了十几秒没动。正是这个缺口让我把技术方向转向了三维重构与微动作识别驱动的矿工无感定位把井下已有的工业摄像仪作为主要感知源通过三维重构建立起巷道的真实空间骨架再叠加微动作识别把传统的“人在哪”升级成“人在哪、在干什么、状态是否正常”。这套系统围绕的核心关键词就是视频驱动、空间感知和透明化安全管理严格来说它不是把定位精度卷到厘米级而是把人员定位从“数据”变成了“可理解的场景”这是我认为未来矿山安全信息化真正值得投入的方向。这篇内容适合正在做智慧矿山、安全信息化、视频AI落地的团队阅读尤其是那些已经在井下部署了摄像仪、但还没把视频数据转化为结构化位置信息的朋友。我会从传统定位方案的瓶颈讲起拆解视频无感定位的主干链路再单独展开微动作识别在定位任务中的三重角色最后把落地过程中我踩过的坑和系统的工程参数一并交代清楚。1. 传统井下定位为什么卡在“精度—成本—体验”三角从UWB和定位卡说起要理解视频无感定位的价值得先看看传统方案到底卡在哪里。过去十年井下人员定位的主流方案无非是射频标签、UWB、惯导、以及它们的组合。UWB在开阔场景下能做到30厘米级甚至更高精度这个数字在理想环境里很好看但放到井下真实工况里问题远没有参数表上那么简单。1.1 主流井下定位方案的物理边界我用一张表把几种典型方案的特性放在一起方便对比方案典型精度核心短板对安全管理的贡献区域读卡/门禁巷道级只能判断“在哪片区域”考勤与区域管控UWB定位0.3–1米视距需佩戴标签、基站部署密度高、金属遮挡严重精确轨迹ZigBee/Wi-Fi3–10米多路径干扰、跳变明显粗略位置惯导/航位推算相对位置长时间误差漂移补盲、隧道内辅助视频视觉定位0.5–1.5米视距依赖光线、遮挡、算力投入轨迹 姿态 行为语义这里最要命的不是精度差值而是佩戴式方案的物理前提每个人都必须规范佩戴定位标签标签得保证有电、不损坏、不被随意放置。做过井下信息化的人都知道实际执行中“人卡分离”是个无解难题——卡在柜子里、挂在矿灯充电架上、被塞进工具箱里诸如此类的情况屡禁不止。UWB再准检测不到人身上照样是白搭。另外UWB基站在弯道、岔口、综采工作面这些金属结构物密集的地方非视距误差会瞬间放大到好几米轨迹抖动得像心电图。1.2 视频无感定位的逻辑起点把“人”而不是“标签”作为被追踪对象视频方案的逻辑起点完全不同。它不假设任何穿戴设备直接把画面里的人本身当成目标。井下安装的防爆摄像仪、巷道里的补光灯本身就是透明化安全管理的基础设施视频定位只是给这批硬件赋予了新的附加值不新增佩戴负担、不依赖电池、不会出现人卡分离同时还能拿到姿态信息和动作序列。有人会质疑视频方案会不会被光照和遮挡限制住会而且限制不小。但它和射频方案并不是替代关系而是互补关系。关键岗位作业面、主要运输巷道、硐室出入口这些安全管理最关注的地方往往也是视频覆盖最密集的地方。视频无感定位的价值恰恰在这些核心区能被放到最大。至于死角老实交给UWB或区域读卡兜底就好没必要指望单个传感器解决所有问题。这也是我在设计系统时一直坚持的思路视频负责“感知场景”射频负责“补盲兜底”。2. 视频无感定位的主干链路从像素到井下坐标要跨越的四个环节视频定位听起来很直观但真正落地时从摄像头画面到输出一个稳定的三维坐标中间隔了整整一条算法链路。我把它拆成四个环节相机标定与三维模型、目标检测与姿态估计、像素坐标到三维坐标的解算、跨相机持续跟踪。任何一个环节掉链子后续定位都是空中楼阁。2.1 相机标定与三维重构给巷道建立“物理尺子”第一件事是让系统知道“画面里的一个像素对应井下哪个真实位置”。这需要两方面的基础数据相机自身的内部参数和外部位姿以及巷道表面的三维结构。相机内参包括焦距、主点、畸变系数一般用标定板离线标定即可。比较麻烦的是外参——井下巷道纹理稀少、白墙黑顶自动找特征点很困难我们团队的常规做法是在巷道里布置临时的编码标靶利用巷道已有的激光点云或断面扫描数据辅助选点再用多张照片联合求解每台相机的位姿。有了内外参数接下来是三维重构。这里我不建议一上来就上摄影测量级的精细重建对定位任务来说真正重要的是“地表面”和“关键结构面”。巷道地面不是理想平面它有人行道、排水沟、斜坡和起伏所以我们要做的是把巷道地面重构为一个带有高程信息的三角网格精度控制在10厘米以内。这个精度对人员定位足够因为人的脚底接地点的真实物理起伏本来就在几厘米到十几厘米之间。地面网格模型出来后每台相机的成像几何就和三维空间牢牢绑定后续所有像素坐标的逆投影都有了参照物。2.2 目标检测与姿态估计从“看到人”到“看到人的关节”井下相机安装位置高视野里的人相对较小矿工又穿着统一的深色工服、戴安全帽轮廓形态相对一致。目标检测环节我推荐用YOLO系列的模型在边缘设备上要选轻量版本同时注意带上多尺度特征保证远处小人目标不被漏检。只检测人的外接框还不够定位需要更精确的地面接地点。这时要引入人体姿态估计把脚踝、髋部、肩膀这些关键点解算出来。姿态估计分为自顶向下和自底向上两条路线。工况里人员稀疏、每帧人不多我优先用自顶向下方案比如HRNet、RTMPose这类模型它们对角点位置更敏感脚踝点的输出稳定性更好。为什么这么在意脚踝因为后面坐标解算要用“脚底接地假设”脚踝点位置直接决定定位坐标的精度。2.3 从二维像素到三维坐标的解算逆投影、接地点与误差放大逻辑拿到脚踝关键点的像素坐标后解算坐标的逻辑并不复杂假设人的脚底贴着巷道地面那么脚踝关键点所在的像素射线和地面网格的交点就是人的真实落脚点。数学上就是一条射线与三角网格求交的过程远没有工业界渲染那么玄妙。但这里有个绕不开的误差放大规律相机离目标越远单个像素对应的地面尺寸越大脚踝点的像素抖动会被放大成几十厘米甚至一米多的坐标跳变。所以单相机定位的精度本质上是“视距”的函数。30米视距内误差可以控制在1米左右50米外就不好保证了。这也是为什么系统设计时要刻意把相机间隔控制在每30到50米一台而不是为了省设备拉大间距。重叠区域的价值在这里就体现出来了当两个相机同时看到一个人时用多视图三角化代替射线接地求解精度能再上一个台阶。2.4 跨相机跟踪与轨迹拼接让“同一个矿工”始终是同一个ID定位系统输出的不能是一堆零散的“树桩点”必须是一条连续轨迹这就要求跨相机跟踪。常用的办法是检测框加外观特征再配多目标跟踪框架做时序匹配比如ByteTrack、DeepSORT这类方案。井下人员外观差异化小纯外观特征在聚集场景里很不靠谱所以我在系统里引入了微动作识别结果作为身份锚这一步在第三章会详细展开。跟踪结果会经过卡尔曼滤波做坐标平滑同时在遮挡消失期间用上一时刻的速度外推插值轨迹短时断裂后还能自动衔接。整个链路跑通之后人的二维像素位置就变成了井下三维空间里有连续时间戳的轨迹点并且每一个轨迹点都关联着一串动作类别标签。这些结构化数据进入中心平台再叠加三维巷道模型就构成了后面的透明化安全管理底座。3. 微动作识别在定位任务中的三重角色身份锚、轨迹纠偏与事件预警微动作识别是这套系统的点睛之笔但很多人对它的理解只停留在“识别跌倒、识别违章”这个层面。实际上在视频无感定位里动作识别承担着三个非常具体的工程任务缺了它系统精度和实用性都会大幅缩水。3.1 角色一跨相机与长时间遮挡下的“身份锚”井下人员的工服、头盔同质化严重两个人在画面里擦肩而过之后再被追踪时ID很容易互换。传统的行人重识别靠衣服颜色和外观特征在这里边几乎失效。微动作识别给出了另外一个特征维度步态和动作习惯。每个人走路时的节奏、跨步幅度、蹲起速度都有细微差异虽然达不到法庭级步态鉴定的水平但配合时空约束上一条轨迹的终点靠近下一条轨迹的起点和速度约束足以把ID误切换率压到一个可接受的水平。我在实际项目里用过一组很直观的组合外观特征算一个相似度动作序列模式算另一个相似度两者加权之后再和位置距离约束一起跑匈牙利匹配。动作序列模式我这边的经验是看“3秒窗口内的骨架姿态序列”折算成步态周期特征。这样当你把两个目标ID合并或分裂时置信度会稳健很多。3.2 角色二用动作类别修正接地点模型第二个角色容易被忽略定位解算时的误差往往不是随机噪声而是由人的姿态造成的系统性偏差。同一个工人站着、蹲着、弯腰他的脚踝点在画面里的位置关系会完全不同。假如系统一律用“髋部中点垂直向下投影”当接地点蹲姿时坐标会偏出去半米甚至更多。所以我在系统中维护了一套姿态相关的接地点规则站立时用脚踝均值点蹲姿时直接用脚踝加脚跟位置弯腰检修时用两脚中心点。这部分就是微动作识别和定位精度的直接融合。动作分类网络输出的标签不但用于展示“人在干什么”还会反馈到坐标解算模块切换不同的接地模型。这也是我在和很多同行交流时发现他们最容易漏掉的优化点。很多人把动作识别和定位看成两条独立流水线最后展示层数据拼在一起白浪费了语义信息。3.3 角色三安全事件预警与报警规则设计第三个角色才是大家最熟悉的事件预警。动作识别输出序列后配合时间窗口和场景上下文可以构建一系列贴合矿山安全管理的报警规则。我把常用的规则类型列一下事件类型核心判断逻辑报警延迟典型误报原因跌倒髋部高度短时骤降、身体倾角突变2–5秒弯腰拾物、快速蹲下长时间静止同一坐标停留超过设定时长可配置工人正常休息、等人禁区闯入轨迹点进入周界区域即时相机切换导致轨迹跳变攀爬/翻越关键点带动腿部大幅上抬、身体重心抬高3秒检修行梯登高作业单人单岗状态异常单人在岗且长时间无操作动作可配置工人站立观察设备报警设计的关键不是“识别算法有多准”而是“规则上下文有多丰富”。比如跌倒检测在皮带边巡检的跌倒和综采支架旁的跌倒风险等级完全不同同样一个蹲姿动作出现在检修时段是正常作业出现在交接班无人时段就可能有问题。动作识别提供的是低层语义真正做出判断的是叠加了空间区域、作业计划、时间班次的规则引擎。这个概念我习惯叫“语义化的定位”比单纯的坐标告警高出一个维度。4. 系统落地中的真实坑位光照、粉尘、防爆约束与数据标注的取舍算法链路只是一部分真正让项目从Demo走向长期运行的是工程细节。这一章我不写理想化的架构图直接讲落地现场最常见的问题和我们摸索出的对策。4.1 光照、粉尘与防爆约束下的相机部署井下视觉的先决条件是光。矿灯强光对相机的自动曝光影响极大——一个工人面朝相机时矿灯会直接冲爆画面自动曝光算法会立刻收缩进光量结果人脸和身体全部变成一片死黑检测模型直接失联。我们的解决方案是关闭自动曝光把曝光时间、ISO、增益全部固定下来目标是在矿灯直射时画面不过曝太多在非直射时依然能分辨出人形轮廓。镜头要选宽动态范围的并开启强光抑制在固定场景参数的前提下做一次性调优。相机安装高度和俯仰角要经过计算。太正对巷道会丢失远端信息太侧斜会让行人姿态变形严重。综合几十个试点巷道的经验我一般推荐相机装在巷帮或者顶部支架安装高度2.8到3.5米俯角20到30度光轴沿巷道方向略倾斜这样兼顾近处细节和远处覆盖。防爆要求也不能忽略井下设备必须符合本安或隔爆认证这直接限制了边缘终端的功耗外壳也就限制了算力选型。4.2 边缘算力与模型压缩的现实博弈算力是矿山视频方案绕不开的紧箍咒。井下不能放一块动不动几百瓦的机房级显卡常见选择是带NPU或低功耗GPU的边缘计算盒子算力大概在十几到几十TOPS之间。在这个约束下检测和姿态估计必须做INT8量化动作识别网络也要压缩成轻量版本。我在几个项目里做过裁剪对比浮点模型换成INT8量化后检测框和关键点精度大约回退2%到4%但推理速度能提升两倍以上边缘端整体带宽占用也大幅下降。模型部署下去之后还要考虑风扇和散热。井下环境粉尘大无风扇被动散热方案更可靠但要注意热降频问题夏天井下温度高的时候模型推理延迟会明显爬升需要给设备留出性能裕量而不是让它满负荷跑在临界点上。4.3 数据集构建与标注策略自建井下场景是唯一的出路公开数据集里的行人检测模型在井下表现不佳原因很直白公开数据的场景是城市街道、商场和校园而井下环境是深色巷道、高噪声图像、大量安全帽和工服。我们做过一个对比测试直接用开源检测模型跑井下低照度视频召回率会跌到70%以下。后来自建了煤矿场景训练集包含不同巷道光照、不同粉尘浓度、白天班与夜班班次并把矿灯补光直射、逆光、人员聚集等困难情况单独作为分类定向补样本检测召回率才稳定到95%以上。标注策略上我强烈建议用“检测预标注 人工修正 主动学习”的打法。先用现有模型自动跑一批井下视频生成初版标注标注员只需要修正错漏效率比从零画框高出好几倍。姿态关键点和动作序列的标注更费人力可以考虑用合成数据在三维巷道模型里放人形模型渲染各种光照和姿态做成仿真视频参与训练。这一步对微动作识别的泛化能力帮助非常大。4.4 与既有定位系统、监控平台的对接问题现实中几乎没有哪个矿是完全的“视觉净室”。很多矿已有UWB定位卡系统、第三方视频平台、人员考勤系统。落地时最容易踩的坑是“两套系统各说各话”视觉轨迹显示在三维地图上UWB轨迹显示在二维CAD图上值班员根本来不及比对。我的建议是不要追求视觉彻底替换射频而是做统一数据中台两条轨迹通道都进时空数据库用同一套人员ID做关联在关键区域用可信度权重做融合。简单说能用视频语义判断的场景以视觉为准射频盲区或视频断线时以UWB为准发生矛盾时按区域优先级仲裁。这种做法听起来不“性感”但稳定性非常好而且客户接受度高。毕竟矿山安全上一旦报警飘忽一线值班员很快就会失去对系统的信任信任一旦没了再好的算法也救不回来。5. 透明化安全管理范式从轨迹回放到时空一体化研判最后回到系统最本质的意义它到底改变了什么我的理解是它把安全管理者的信息获取方式从“事后翻录像”和“只能看2D平面点”升级成了“三维时空场景里的实时推演”。这套范式的核心是三个字可视、可溯、可预测。5.1 三维时空底座人员状态与场景状态叠加的“数字现场”有了三维重构的巷道模型和实时人员轨迹调度中心看到的将不再是割裂的视频墙和CAD平面图而是一个统一的三维时空场景。人的位置以骨架化方式呈现在巷道模型里每个骨架旁边带着工号、身份、动作标签、停留时长点击任意轨迹点可以回放到当时那台摄像机的原始画面拖动时间轴能够看到整个班组在过去四小时内的动线聚合。“透明化”不是说要让管理者随时随地监控每个人的一举一动而是把安全管理需要的要素透明化作业是否超时、危险区域是否有滞留、巡检路线是否完整、单人单岗是否出现异常状态。这套表达方式对地面调度员非常友好他们不用再看几十路视频凭经验续摊而是直接盯着一张“数字现场图”做判断。5.2 关键性能指标与验收口径工程交付不能只讲架构漂亮指标必须可量化。这里给出一版我们实际项目里的验收参考值供同行参考指标项参考值说明单相机定位精度≤1.5米30米视距内多相机重叠区可到0.5米左右人员检测召回率≥95%常规光照下、正常作业姿态轨迹跳变率≤5%每百条关联轨迹中发生ID漂移的比例动作识别准确率≥85%覆盖走、跑、蹲、弯腰、跌倒、站立报警时延≤5秒从事件发生到平台弹出告警系统可用率≥99.5%按月度统计含网络中断排除需要注意的是验收时不要追求单一数字要设计场景化用例。比如“皮带机头有工人蹲下超过30秒并接近转动部位”这种复合场景能一次验证检测、定姿、动作、报警四条链路。现场只看PPT指标没有用拉一段真实作业视频做端到端测试比任何参数表都有说服力。5.3 演进方向从“定位”走向“工效与风险建模”当前这套系统在定位层面已经很成熟但我知道它的价值远不止于此。轨迹和动作数据积累三个月之后可以做岗位工效分析哪条巡检路线实际耗时和标准不一致、哪个作业区域人员过度聚集、哪个工序经常出现重复动作再进一步可以结合设备运行状态做风险耦合预测比如某个闸室在特定时间段出现人员长时间停留而设备振动数据同时异常系统自动给出联合风险提示。三维重构模型本身也在演进。现在井下三维模型主要依赖前期激光点云和相机标定结果变化场景要靠人工更新。未来可以把在线视觉SLAM和语义分割纳入进来让三维模型跟随巷道改造和作业面推进自动更新这才是真正意义上的“数字矿山孪生体”。我在实际项目中体会最深的一件事这套系统的价值最后不在定位误差表里那几行数字而在于安全管理人员的注意力分配方式被改变了。以前他们要在一堆“东西南北坐标点”里推断现场情况现在系统直接把场景呈现在眼前。所谓无感定位最终带给使用者的不是多了多少传感器而是少了很多猜测。至于微动作识别它的长期意义也不只是报警和纠偏而是让机器终于开始理解矿工在井下“做什么”了——这扇门一旦打开后续的应用空间比我写出来的要大得多。
阅读完成 · 觉得有帮助?