边缘AI安全帽检测实战:RK3588部署YOLOv5s全流程
1. 为什么要在边缘侧做安全帽检测1.1 从一次工地现场的实际需求说起去年下半年我接手了一个工地智能化改造的活儿。需求说起来很简单在工地出入口和几个关键作业区域实时检测工人有没有佩戴安全帽没戴的抓拍留证同时给现场安全员一个实时告警。听起来是个很成熟的场景对吧市面上做安全帽检测的方案一抓一大把但真正落地的时候问题远比想象中复杂。工地的网络环境是第一个拦路虎。很多作业区域根本没有稳定的有线网络无线信号也时好时坏。如果走传统的“摄像头推流到云端、云端推理、结果再回传”的路线先不说带宽成本光是延迟和断网就够喝一壶的。安全员需要的是“当下这一刻”的告警而不是十秒之后才弹出来的通知。更现实的问题是工地老板对每个月的流量费用和云服务器费用非常敏感你跟他讲“弹性扩容”“按量付费”他只会问你一句能不能一次性投入后面别再月月掏钱这就是我把目光转向边缘计算的直接原因。把推理能力直接放到现场设备上视频数据在本地完成分析只把结构化的结果有没有戴安全帽、时间、抓拍图传出去带宽需求从几十兆的连续视频流降到几KB的告警信息这个账算下来太划算了。1.2 边缘AI视频分析到底解决什么问题边缘AI视频分析说白了就是把原本跑在云端服务器上的神经网络推理搬到靠近数据源的设备上执行。对于安全帽检测这个具体场景它解决了三个核心痛点。第一是实时性。视频帧在本地采集、本地推理从摄像头捕获到输出告警整个链路可以控制在200毫秒以内。云端方案光是网络往返就可能超过500毫秒遇到网络抖动更是没谱。安全帽检测这种场景早一秒告警和晚一秒告警意义完全不同。第二是带宽与成本。一路1080P的视频流H.264编码后大约4到8Mbps如果工地有8路摄像头那就是32到64Mbps的上行带宽。走4G网络的话这个流量费用相当可观。边缘方案只需要上传告警事件和少量抓拍图带宽占用可以忽略不计。第三是数据隐私与合规。工地视频涉及工人的人脸和行动轨迹很多甲方明确要求视频数据不出场区。边缘方案天然满足这个要求视频数据在本地处理完就丢弃只保留必要的告警记录。1.3 为什么是RK3588而不是其他方案确定了边缘路线之后选型就是下一个关键决策。市面上能跑深度学习推理的边缘芯片不少我前后对比了五六款最终锁定RK3588原因有几个。首先是算力够用且接口丰富。RK3588内置NPU算力标称6TOPS对于YOLO系列这种目标检测模型来说跑1080P视频的多路推理完全够用。更关键的是它的视频编解码能力很强支持多路H.264/H.265硬解码这意味着我可以直接把摄像头的RTSP流拉进来硬解不需要额外的解码芯片。其次是生态相对成熟。RK3588的NPU支持RKNN工具链可以把ONNX、TensorFlow等框架训练出来的模型转换成RKNN格式官方提供了比较完整的量化、转换、推理API。虽然踩坑不少但至少有一条可行的路径。第三是功耗和成本平衡。一块RK3588核心板加上底板成本可以控制在几百块以内功耗在5到10瓦之间不需要风扇主动散热加个散热片就行。相比之下同算力的GPU方案功耗动辄几十瓦还需要考虑散热和供电整体BOM成本高出一大截。当然这个选择也不是没有代价。RK3588的NPU对某些算子和模型结构的支持并不完美量化过程中精度损失需要仔细调优工具链的文档和社区支持也比不上英伟达的CUDA生态。这些后面会详细说。2. 整体架构设计与关键取舍2.1 从摄像头到告警的完整数据链路整个系统的数据流是这样的摄像头通过RTSP协议输出H.264视频流RK3588上的程序用FFmpeg或者GStreamer拉流利用硬件解码器把视频帧解出来然后做预处理缩放、颜色空间转换送给NPU做推理推理结果经过后处理NMS、置信度过滤判断是否有人未戴安全帽如果是就抓拍当前帧、记录时间戳、触发告警。这条链路看起来简单但每一步都有取舍。比如拉流环节是用FFmpeg还是GStreamerFFmpeg的兼容性好但延迟控制不如GStreamer灵活。我最终选了GStreamer因为它的pipeline模式可以很方便地把硬解码、缩放、推理串起来而且可以通过appsink把帧取出来做自定义处理。推理环节的取舍更大。是用RKNN的C API直接写还是用Python绑定C的性能更好但开发效率低Python开发快但GIL和解释器开销在实时场景下可能成为瓶颈。我最终选择了C主框架加Python做模型转换和调优的混合模式推理核心用C模型转换和精度验证用Python。2.2 为什么选择YOLOv5s而不是更大的模型模型选型上我试过YOLOv5s、YOLOv5m和YOLOv8n三个版本。最终选了YOLOv5s原因如下。YOLOv8n虽然更轻量但在安全帽这种小目标检测上召回率明显不如YOLOv5s。工地场景里安全帽在画面中占的像素往往不多尤其是远景摄像头安全帽可能只有二三十个像素宽模型的特征提取能力直接决定了能不能检出来。YOLOv5m的精度更好但推理耗时增加了近一倍在RK3588上跑多路视频时帧率掉得厉害。YOLOv5s在精度和速度之间取得了比较好的平衡。在自建的测试集上YOLOv5s的mAP0.5能到0.87左右单帧推理耗时在RK3588 NPU上大约25到35毫秒取决于输入分辨率配合视频帧的抽帧策略比如每两帧推理一次可以做到多路视频的实时分析。这里有个经验不要盲目追求大模型。边缘设备的算力是有限的模型大一点精度可能提升两三个百分点但帧率可能直接腰斩。在实际场景中帧率稳定比精度多那几个点重要得多。2.3 抽帧策略与推理频率的权衡视频是连续的但安全帽检测并不需要每一帧都推理。工人戴没戴安全帽是一个持续状态不是瞬时的动作。所以抽帧是必须的。我最初的方案是每5帧推理一次也就是在25fps的视频里每秒推理5次。实测下来这个频率对于安全帽检测足够了但有一个问题如果工人快速走过画面可能在两次推理之间就走出去了导致漏检。后来调整为自适应抽帧当画面中检测到人时提高推理频率到每2帧一次当画面中没有检测到人时降低到每10帧一次。这样既保证了检测的及时性又节省了算力。实现上用一个简单的状态机来管理推理频率根据上一帧的检测结果动态调整。这个策略的效果很明显在典型工地场景下CPU和NPU的占用率下降了约30%而漏检率几乎没有增加。3. RK3588上的模型部署实操3.1 模型训练与导出模型训练这一步我是在一台带GPU的服务器上完成的用的是YOLOv5的官方代码库。数据集是自己标注的大概8000张工地场景图片涵盖了不同光照、不同角度、不同遮挡情况。标注类别就两个hat戴了安全帽和no_hat没戴。训练参数方面输入分辨率设的是640x640batch size 16训练了300个epoch。数据增强用了Mosaic、随机缩放、随机裁剪和色彩抖动。这里有个细节工地场景的光照变化非常大早上、中午、傍晚、阴天、晴天色彩差异明显所以色彩抖动的幅度我调得比默认值大一些增强模型的泛化能力。训练完成后导出ONNX模型。导出时要注意opset版本我用的opset 12兼容性比较好。导出命令大致是这样的python export.py --weights best.pt --include onnx --opset 12 --img-size 640 640导出后用ONNX Runtime验证一下推理结果和PyTorch是否一致确保转换没有引入错误。3.2 ONNX到RKNN的转换与量化这一步是整个部署过程中最折腾的环节。RKNN Toolkit2提供了ONNX到RKNN的转换工具但并不是所有ONNX算子都能完美支持。首先需要准备一个量化校准集大概200到500张图片要能代表实际场景的分布。我用的是从测试集里随机抽的300张图。校准集的质量直接影响量化后的精度所以不要随便找几张图凑数。转换脚本的核心部分大概是这样from rknn.api import RKNN rknn RKNN(verboseTrue) rknn.config( mean_values[[0, 0, 0]], std_values[[255, 255, 255]], target_platformrk3588, quantized_dtypeasymmetric_quantized-8, optimization_level3 ) rknn.load_onnx(modelbest.onnx) rknn.build(do_quantizationTrue, datasetcalibration.txt) rknn.export_rknn(best.rknn)这里有几个关键参数需要解释。mean_values和std_values是归一化参数要和训练时的预处理保持一致。quantized_dtype选的是非对称8位量化这是RK3588 NPU支持的主要量化方式。optimization_level设为3会启用一些图优化但有时候也会引入问题如果转换后精度异常可以试着降到2或1。转换过程中最常见的报错是“Unsupported op”意思是某个ONNX算子在RKNN里没有对应实现。YOLOv5里比较容易出问题的是Focus层和某些激活函数。解决办法通常是把Focus层替换成等价的卷积操作或者把不支持的激活函数换成ReLU。3.3 量化精度损失的排查与补偿量化一定会带来精度损失关键是损失有多大能不能接受。我第一次转换后在测试集上跑了一遍mAP从0.87掉到了0.79掉了8个百分点这个损失太大了。排查过程是这样的先用RKNN Toolkit的精度分析工具逐层对比量化前后的输出差异找出误差最大的层。发现主要是 backbone 里几个C3模块的卷积层量化误差偏大。原因是这些层的权重分布比较分散8位量化不足以精确表示。补偿措施有几个。一是增加校准集的数量和多样性从300张增加到800张覆盖更多场景。二是调整量化算法RKNN支持不同的量化策略我试了normal和mmse两种最终mmse的效果更好。三是对部分敏感层保持浮点计算RKNN支持混合量化可以把误差大的层设为16位或浮点。混合量化会稍微增加推理耗时但精度恢复明显。经过这些调整最终量化后的mAP恢复到了0.85只比浮点模型低了2个百分点完全可以接受。3.4 多路视频推理的资源分配工地现场通常有4到8路摄像头RK3588要同时处理这么多路视频资源分配是个大问题。RK3588的NPU是共享资源多路推理需要排队。我的做法是给每一路视频分配一个独立的推理线程但用一个全局的信号量控制同时进行的推理请求数量。实测下来NPU同时处理2到3个推理请求时效率最高再多就会因为上下文切换导致整体吞吐下降。CPU方面视频解码是硬件加速的不占CPU。但预处理缩放、颜色空间转换和后处理NMS是CPU做的这部分需要优化。我把预处理用RGARK3588的2D加速器来做后处理用多线程并行CPU占用从最初的80%降到了40%左右。内存方面每一路视频的帧缓冲和推理输入输出都需要内存。1080P的RGB帧大约是6MB8路就是48MB加上模型本身和中间张量整体内存占用在200MB左右RK3588的4GB或8GB内存完全够用。4. 实际部署中踩过的坑与解决方案4.1 视频流拉取的稳定性问题RTSP拉流在实际网络环境下非常容易出问题。摄像头重启、网络抖动、RTSP会话超时都会导致拉流中断。最初的版本没有做重连机制一旦断流程序就卡在那里不动了。解决方案是加一个看门狗线程定期检查每一路视频的帧率。如果超过3秒没有收到新帧就判定为断流销毁当前的GStreamer pipeline重新创建并拉流。重连时要注意加一个退避策略比如第一次断流后等1秒重连第二次等2秒第三次等4秒避免频繁重连导致摄像头拒绝服务。还有一个坑是时间戳同步。多路视频的时间戳如果不一致告警记录的时间就会乱。我的做法是以系统时间为基准每一帧到达时打上本地时间戳而不是用RTSP流里的时间戳。这样虽然和摄像头的绝对时间可能有偏差但至少多路之间是同步的。4.2 NPU推理的内存泄漏排查这个问题困扰了我很久。程序跑上几个小时之后内存占用会慢慢涨上去最终OOM被杀掉。用valgrind查了半天没发现明显的泄漏。后来定位到是RKNN的推理接口使用方式有问题。RKNN的rknn_run和rknn_outputs_get需要配对使用每次推理后必须调用rknn_outputs_release释放输出张量。我最初的代码在某些异常分支里漏掉了release导致输出张量累积。修复方法很简单用RAII的方式封装RKNN的输入输出确保无论正常返回还是异常退出资源都能被释放。C里可以用一个简单的guard类来实现。另外RKNN的上下文context创建和销毁也有讲究。不要每次推理都创建和销毁context那样开销很大。正确的做法是每个线程创建一个context线程结束时销毁。但要注意context不是线程安全的不能多个线程共用一个context。4.3 误检与漏检的调优经验安全帽检测的误检和漏检直接关系到系统的可用性。误检太多安全员会被频繁的假告警烦死漏检太多系统就失去了意义。误检的主要来源有几个。一是把其他圆形物体误认为安全帽比如安全帽放在地上、挂在墙上或者工人手里拿着安全帽。二是把戴了其他帽子比如鸭舌帽的工人误判为没戴安全帽。三是光线不足时的误判。针对这些情况我做了几件事。首先是在训练数据里增加负样本把安全帽放在地上、挂在墙上的图片标注为背景让模型学会区分“戴在头上”和“放在别处”。其次是增加一个后处理逻辑检测到的人体框和头部框如果有重叠且头部框内检测到安全帽才判定为“戴了安全帽”如果人体框存在但头部区域没有检测到安全帽才判定为“没戴”。这个逻辑利用了人体检测和安全帽检测的关联性显著降低了误检。漏检的主要原因是小目标和遮挡。远处的工人、被其他物体遮挡的工人检测难度大。解决办法一是提高输入分辨率从640提到800或960但推理耗时增加二是用切片推理把大图切成小块分别推理再合并结果但实现复杂。我最终选择了折中方案主路用640分辨率做快速筛查对检测到人体的区域裁剪出来用更高分辨率做二次推理。这样既保证了速度又提升了小目标的检出率。4.4 常见问题速查表问题现象可能原因排查方法解决方案程序启动后无推理结果模型加载失败或输入格式不对检查RKNN日志确认模型路径和输入shape重新转换模型核对预处理参数推理结果全为背景量化过度或校准集不具代表性用浮点模型对比输出增加校准集调整量化策略帧率突然下降NPU过热降频或内存不足查看温度传感器和内存占用加散热片优化内存使用视频流频繁断连网络不稳定或摄像头限制抓包分析RTSP交互加看门狗重连调整退避策略告警图片模糊抓拍的是解码后的低质量帧检查抓拍时机和帧来源从解码前的原始流抓拍或提高抓拍帧质量多路视频时间不同步各路线程独立计时对比各路的帧时间戳统一用系统时间打戳定期校准5. 性能优化与效果评估5.1 推理速度的优化手段RK3588上YOLOv5s的推理速度从最初的每帧50毫秒优化到了25毫秒左右翻了一倍。主要的优化手段有几个。第一是输入分辨率的调整。从640x640降到512x512推理耗时减少了约30%精度只掉了1个百分点。对于安全帽检测来说这个 trade-off 是值得的。第二是模型结构的微调。把YOLOv5s的 backbone 里部分C3模块的通道数减少模型参数从7M降到了5M左右推理速度提升了约15%。这个需要重新训练和量化但效果明显。第三是NPU的批处理。RK3588的NPU支持一次推理多个输入把多路视频的帧拼成一个batch送进去可以充分利用NPU的并行能力。但batch size不能太大否则内存吃不消我试下来batch size 2到4比较合适。第四是后处理的优化。NMS是后处理里最耗时的部分尤其是检测框多的时候。我把NMS用C重写并且用SIMD指令加速耗时从5毫秒降到了1毫秒以内。5.2 精度与速度的最终平衡点经过多轮调优最终的配置是这样的输入分辨率512x512YOLOv5s精简版8位量化batch size 2自适应抽帧。在这个配置下单路1080P视频的推理帧率可以稳定在15fps以上8路视频同时运行时每路也能保持在8到10fps。对于安全帽检测来说这个帧率完全够用。精度方面在自建测试集上的mAP0.5是0.84召回率0.82准确率0.88。在实际工地场景中跑了一个月安全员的反馈是“误报不多漏报很少”基本达到了可用状态。这里我想强调一点不要追求极致的精度或极致的速度要找平衡点。边缘AI项目的成功标准是“在实际场景中稳定可用”而不是在 benchmark 上刷分。一个mAP 0.95但帧率只有2fps的模型在安全帽检测场景里毫无意义。5.3 长期运行的稳定性观察系统在工地上连续跑了一个月中间遇到过几次问题但整体稳定性还是可以的。一次是因为工地临时断电设备重启后程序没有自动启动。后来加了一个systemd服务设置成开机自启并且加了自动重启策略。一次是因为夏天高温设备温度到了75度以上NPU降频导致帧率下降。加了一个小散热风扇之后温度控制在60度以下问题解决。还有一次是摄像头被工人不小心碰歪了画面角度变了导致检测效果下降。这个不是技术问题但提醒我需要在系统里加一个画面质量检测当画面异常时及时告警。6. 边缘AI视频分析的扩展思考6.1 从安全帽检测到更多场景安全帽检测跑通之后这套架构其实可以复用到很多类似的场景。比如反光衣检测、危险区域入侵检测、烟火检测、人员摔倒检测等等。核心的架构不变只需要替换模型和调整后处理逻辑。我后来用同样的架构做了一个反光衣检测的demo从模型训练到部署上线只用了不到一周时间。这就是边缘AI视频分析平台化的价值一次投入多处复用。6.2 多设备协同与集中管理单个RK3588设备能处理的视频路数有限大型工地可能需要多台设备。这就涉及到多设备协同和集中管理的问题。我的做法是每台设备独立运行推理只把告警结果上传到一个中心服务器。中心服务器负责汇总、展示和存储告警记录。设备之间不需要直接通信降低了系统复杂度。设备的管理配置下发、状态监控、固件升级通过一个轻量的MQTT协议来实现中心服务器可以实时看到每台设备的运行状态。这个架构的好处是去中心化单台设备故障不影响其他设备中心服务器只做数据聚合压力很小。6.3 成本核算与ROI分析最后算一笔账。一台RK3588设备核心板底板散热电源外壳的成本大约在600到800元可以处理4到8路视频。一个中型工地按8路摄像头算需要1到2台设备硬件成本在1500元以内。加上摄像头和网络设备整体硬件投入在5000到8000元。如果走云端方案8路视频的带宽费用每月大约500到1000元云服务器费用每月300到500元一年下来就是一万元左右。边缘方案的一次性投入不到一年就能回本。更重要的是边缘方案的实时性和可靠性是云端方案比不了的。安全帽检测这种场景可靠性就是价值。我个人在实际操作中的体会是边缘AI视频分析这件事技术上的难点不在于模型本身而在于工程化的细节。模型训练和转换只是第一步真正的挑战在于如何让系统在真实的网络环境、温度环境、光照环境下稳定运行。那些文档里不会写的坑才是决定项目成败的关键。如果你也在做类似的事情我的建议是先把最简单的场景跑通再逐步增加复杂度不要一开始就追求大而全。一个能稳定运行的单路检测比一个跑不起来的八路系统有价值得多。

相关新闻

基于昇腾CANN+MindSpore的家庭安防AI系统:从模型训练到端侧部署实战

基于昇腾CANN+MindSpore的家庭安防AI系统:从模型训练到端侧部署实战

家里人一直让我把老家的摄像头监控升级一下,说是白天能看到画面,晚上或者人不在家的时候,光有画面没啥用,最好能自动识别出异常情况。我一开始也想过直接上云服务,但算了一笔账:视频流持续上传不仅吃带宽&a…

2026/10/19 15:14:14 阅读更多 →
万可750/753 PROFINET组态:GSDML文件解析与避坑指南

万可750/753 PROFINET组态:GSDML文件解析与避坑指南

简介:这份资源是德国万可(WAGO)750与753系列数字输入输出扩展模块的GSD硬件配置文件,版本为GSDML-V2.33,发布日期2021年1月15日,面向工业自动化领域的电气工程师、系统集成人员及PLC编程调试人员。GSD文件用…

2026/10/19 15:14:14 阅读更多 →
医学图文预训练抗噪声实战:MIRAGE的鲁棒对齐策略

医学图文预训练抗噪声实战:MIRAGE的鲁棒对齐策略

做医学图文预训练的人应该都有过这种体验:同一套对比学习框架,放到自然图像-文本对上效果还行,一换成胸片、病理切片加临床报告,表现就明显缩水。我梳理相关工作时反复碰到同一个原因——噪声。医学图像-文本配对数据里的噪声不是…

2026/10/19 15:14:14 阅读更多 →

最新新闻

传输层核心机制与计算题突破:TCP/UDP协议期末考点全解析

传输层核心机制与计算题突破:TCP/UDP协议期末考点全解析

1. 传输层到底在整条网络链路里扮演什么角色1.1 从寄快递的类比说起:为什么需要传输层很多同学学到第五章的时候会有一种割裂感——前面几章讲物理层、数据链路层、网络层,好歹还能摸到网线、网卡、IP地址这些看得见摸得着的东西,一到传输层&…

2026/10/19 16:08:53 阅读更多 →
AIGC重复率高怎么办?十大检测改写工具实测与降重全攻略

AIGC重复率高怎么办?十大检测改写工具实测与降重全攻略

你有没有遇到过这种情况:同一段需求,丢给五个AI平台,回来的五段内容居然八九不离十;好不容易熬夜写完一篇稿子,丢进检测工具里,系统却标注你是“疑似AI生成”。这不是错觉,AIGC重复已经成为内容…

2026/10/19 16:08:53 阅读更多 →
垂直领域大模型建设全路径:从数据清洗到微调落地实战

垂直领域大模型建设全路径:从数据清洗到微调落地实战

做垂直领域大模型这件事,我不打算绕弯子。过去一年多,我陆续参与几条行业线的落地项目,覆盖零售、保险、医疗、制造,亲眼看着不少团队把“训练大模型”搞成一场烧钱大赛——模型训完了,demo演示很惊艳,上生…

2026/10/19 16:08:53 阅读更多 →
手游SDK接入最佳实践(进阶篇)最佳实践与踩坑记录

手游SDK接入最佳实践(进阶篇)最佳实践与踩坑记录

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 16:08:53 阅读更多 →
开源可落地的代码审查范式:LLM Agent驱动的行级评审

开源可落地的代码审查范式:LLM Agent驱动的行级评审

1. 这不是又一个“代码审查工具”,而是一套可落地、可复刻、可演进的开源协同范式最近在几个技术团队做内部分享时,总有人问:“你们说的 open-code-review 到底指什么?是不是就是把 GitHub PR 页面打开,点个 approve&a…

2026/10/19 16:07:52 阅读更多 →
开源代码评审工作流:基于CLI的可编程自动化实践

开源代码评审工作流:基于CLI的可编程自动化实践

1. 项目概述:这不是一个“工具”,而是一套可落地的开源代码评审工作流设计“open-code-review”这个名称乍看像某个具体软件包或CLI命令,但实际它代表的是一种正在快速演化的工程实践范式——把传统依赖人工、发生在PR界面里的代码评审&#…

2026/10/19 16:07:52 阅读更多 →

日新闻

频率跟踪型PWM电源设计:臭氧发生器谐振点漂移与软开关实现

频率跟踪型PWM电源设计:臭氧发生器谐振点漂移与软开关实现

简介:本资源为电源技术方向的学术研究文档,聚焦介质阻挡放电型臭氧发生器电源的频率跟踪型PWM控制策略,面向电力电子、高压电源及臭氧应用领域的科研人员与工程技术人员。针对负载呈容性、等效电容随外加电压升高而增大、谐振频率随之漂移的难…

2026/10/19 0:00:47 阅读更多 →
Vibe Coding 遇上 TaoToken:把开发者思维圣殿的灵感流接入统一 Key 通道

Vibe Coding 遇上 TaoToken:把开发者思维圣殿的灵感流接入统一 Key 通道

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 0:00:47 阅读更多 →
HundredCV-Chat话题建模实战教程:利用4,871个内置话题标签构建主题分析系统

HundredCV-Chat话题建模实战教程:利用4,871个内置话题标签构建主题分析系统

【免费下载链接】HundredCV-Chat 项目地址: https://ai.gitcode.com/hf_mirrors/Jax-dan/HundredCV-Chat 点击查看 免费下载 HundredCV-Chat 是一个由 100 位青年简历数据开发而来的中文多轮对话数据集,共包含 24,750 组日常闲聊对话和 4,871 个话题标签…

2026/10/19 0:00:47 阅读更多 →

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/19 10:02:04 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/18 0:00:55 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/19 1:30:52 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 2:54:50 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 9:10:22 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/18 12:16:16 阅读更多 →