尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
深度相机与YOLO V5融合:实时目标检测与测距实战(一)
做机器人的朋友应该都有过这种经历视觉模块只给你输出一个2D的检测框告诉你“这里有个目标”但你伸过去抓的时候发现高度、远近全靠猜。YOLO这类目标检测算法擅长回答“是什么、在哪一片像素上”它不回答“距离多远”。想拿到真实空间位置就必须和realsense D455深度相机这类设备配合。这个项目要做的就是把一条“D455深度相机 YOLO V5目标检测”的链路完整打通最终实现既能输出目标类别和像素框又能直接读出目标距离的实时检测系统。这一篇是系列的第一篇先把地基打牢硬件环境、相机取流、彩色与深度图对齐、YOLO V5推理最后合成一个带深度信息的目标检测可视化画面。后面几篇再讲坐标转换、机械臂联动、自定义数据集训练这些进阶内容。如果你手头刚拿到D455或者正准备把YOLO系列模型往深度相机上搬这篇可以直接跟着操作。1. 项目拆解这套组合要解决什么问题第一篇的边界在哪1.1 为什么是D455而不是其他深度相机先聊选型。深度相机方案不少双目、结构光、ToF都有D455属于Intel RealSense系列里的双目红外方案两个红外摄像头加一个红外点阵投射器。它和前一代D435i最大的区别是基线更长了从50mm拉到95mm深度精度在4米范围内大约能做到1%左右室内弱纹理环境下的表现比D435i更稳。如果你主要做室内机器人的抓取、避障、目标测距D455是很合适的。它自带6轴IMU后续做视觉惯性融合、相机位姿估计时不用再外接IMU。相比之下D435i的基线短近距离0.3米以内精度相当好但到了1米以上误差增长更快。D455的深度有效距离大约0.6米到6米刚好覆盖了桌面级机械臂和移动机器人的常用工作范围。有一个常被忽略的点D455的红外点阵投射器在室外强光下效果变差如果你要在户外无人车上用双目视觉受环境光照影响会很大这时候ToF或者激光雷达方案会更合适。所以选型这件事先想清楚你的应用场景再谈参数。对比项D455D435i深度技术双目红外双目红外基线95mm50mm深度精度约1%4m范围内官方标称近距离稍好远距离误差增幅更大IMU有有典型工作距离0.6m - 6m0.3m - 3m典型场景机器人导航、抓取、避障近距离交互、人脸/手势1.2 为什么选YOLO V5而不是更新的V8或V9这个问题几乎每篇教程都会被问。YOLO V5不是最新的但它有几个目前无可替代的优势第一社区资料极其丰富你踩过的坑大概率别人也踩过GitHub的Issue和CSDN、博客园里能搜到大量解决方案第二它的代码结构稳定Python接口清晰导出ONNX、TensorRT引擎非常方便后续部署到Jetson或者工业电脑都很成熟第三对于“目标检测深度相机”这个组合来说YOLO V5的推理速度和精度平衡很理想在GTX 1060级别的显卡上yolov5s模型跑640x640输入能达到30到50 FPS。V8、V9在精度上确实有提升但要么API变化大要么部署链路还没有V5那么多现成方案。项目求稳的话V5应该是性价比最高的选择。等以后需要更高的精度或者更快的速度再迁移到V8或TensorRT版本也不迟检测框的坐标输出格式都是通用的。1.3 “一”的边界先把三件事做扎实整个项目的最终形态是让机械臂能根据YOLO检测到的目标类别结合D455输出的深度信息算出目标在相机坐标系下的三维坐标再变换到机械臂坐标系完成抓取或避障。这个链条比较长我拆成了几个阶段第一阶段就是本篇内容第一件事把D455的彩色图像流和深度图像流稳定读出来确保图像不花屏、不掉帧第二件事把彩色图和深度图做像素级对齐消除两个镜头物理位置不同造成的错位第三件事把YOLO V5跑起来在彩色图上输出检测框同时在对齐后的深度图对应位置上取出目标的距离值。第一篇做到“实时画面能检测、能测距”就达到目标了。坐标变换、数据标定、机械臂联动这些放在系列后续文章里逐个拆。为什么我坚持要把基础分得这么细因为很多项目死在中间环节最常见的就是“YOLO和深度图各跑各的都正常一融合就错位”最后发现是没做对齐或者深度图的像素坐标系和彩色图不是一套。基础链路不打通后面写再多漂亮的上层逻辑都是空中楼阁。2. D455相机端的准备工作驱动、固件与第一个取流程序2.1 硬件连接和系统环境里最容易踩的暗坑先看硬件。D455用的是USB Type-C接口注意它不是普通UVC摄像头带宽要求很高必须插在USB 3.0以上的接口上。主板上的USB口通常是蓝色或蓝绿色的如果插到USB 2.0黑色口最典型的症状就是深度流完全起不来或者时不时报“Frame didnt arrive within 5000”之类的超时错误。还有一个特别容易被忽略的点不要通过劣质USB HUB转接尤其是那种没有外接供电的HUB。D455对供电敏感电流不够会出现深度图像时有时无的诡异问题。最好的做法是直接用台式机主板背板的USB 3.0口或者笔记本的雷电/USB口。我用笔记本调试的时候换了三次口才稳定最后发现是HUB供电不稳导致的。2.2 构建pyrealsense2运行环境软件部分D455在Linux和Windows下都挺省心。Linux内核自带UVC驱动插上就能被识别Windows下需要安装官方的Intel RealSense SDK 2.0不过我们直接装Python库就行SDK会作为依赖自动装好。建议用conda创建一个专用的Python环境版本选3.8或者3.9避免和YOLO V5的依赖打架。安装命令非常简单pip install pyrealsense2装完以后先用官方自带的realsense-viewer工具确认设备状态。Windows下realsense-viewer包含在SDK安装包里Linux下可以通过apt安装。打开realsense-viewer后能看到D455的彩色流和深度流画面右上角还能看到固件版本。如果固件太老比如低于5.12.x直接在viewer里点升级固件保持最新固件能规避很多底层bug。这里有个小建议不要跳过realsense-viewer这步直接写代码。先确认裸画面正常再进入开发能帮你把“硬件问题”和“代码问题”隔离开。2.3 第一个Python脚本同时拿到彩色帧和深度帧设备确认无误后写第一个取流脚本。这段代码是整个项目的数据源头务必理解了再往下走。import pyrealsense2 as rs import cv2 import numpy as np pipeline rs.pipeline() config rs.config() config.enable_stream(rs.stream.color, 1280, 720, rs.format.bgr8, 30) config.enable_stream(rs.stream.depth, 1280, 720, rs.format.z16, 30) profile pipeline.start(config) try: while True: frames pipeline.wait_for_frames() color_frame frames.get_color_frame() depth_frame frames.get_depth_frame() if not color_frame or not depth_frame: continue color_image np.asanyarray(color_frame.get_data()) depth_image np.asanyarray(depth_frame.get_data()) cv2.imshow(Color, color_image) cv2.imshow(Depth, depth_image) if cv2.waitKey(1) 0xFF ord(q): break finally: pipeline.stop() cv2.destroyAllWindows()这里有几个点要说明。深度流的格式是z16每个像素是一个16位整数单位是毫米不是浮点。直接用np.asanyarray转numpy数组后cv2.imshow显示深度图基本是黑的因为数值范围是0到6000毫米左右而显示需要的范围是0到255。想看清晰的深度图需要做归一化depth_colormap cv2.applyColorMap(cv2.convertScaleAbs(depth_image, alpha0.03), cv2.COLORMAP_JET)这个alpha值0.03是试出来的相当于把6000毫米左右映射到180左右的灰度范围基本能看清远近层次。等后面做融合时我们用的还是原始的depth_image数值显示彩色只是为了调试看效果。2.4 实测取流效果与分辨率的选择逻辑第一次跑起来的时候你会同时看到两个窗口左边是彩色图右边是伪彩色的深度图。深度图里近处的物体偏红/偏亮远处偏蓝/偏暗这个直观的“假彩色映射”后面调试起来非常有用。我实际跑的D455在1280x72030fps配置下帧非常稳定但这里要给一个忠告分辨率不是越高越好。分辨率越高后续YOLO推理越吃力深度图和彩色图数据量也越大。目标检测场景下640x480甚至360p就够用。如果目标是桌子上的水杯、机械臂要抓的零件640x480的像素精度完全足够还能显著降低延迟。所以我最终的方案是用两套分辨率调试阶段用1280x720观察细节正式检测阶段用640x480或者自定义的848x480。D455支持多种分辨率组合配置流的时候按需选择即可。3. 彩色图与深度图的对齐像素坐标统一是融合的前提3.1 为什么会出现“人不重合”的错位如果你直接让YOLO在彩色图上检测目标拿到检测框的像素坐标后直接用这个坐标去另一张深度图上取距离值你会发现取出来的数经常是错的——有时深度图对应位置是0无效值有时是背景的距离。原因很简单彩色镜头和深度镜头在物理位置上隔着一段距离它们看到的画面不是完全重叠的。在近距离时这个视差非常明显。D455的两个红外镜头在中间彩色镜头在侧面。虽然出厂时做过内外参标定但两路图像的像素坐标系并不天然一致。同一个物体在彩色图上的坐标是(320, 240)在深度图上可能对应(318, 245)这类位置。如果目标距离相机1米内这个偏移可能大到几十个像素直接造成测距错误。3.2 理解内参和D455的出厂标定这里需要补一点相机模型知识。每个镜头都有自己的内参包括焦距fx、fy和主点cx、cy这四个参数决定了三维空间点投影到二维像素平面的映射关系。彩色镜头和深度镜头的内参不同它们之间的外参相对旋转和平移也不同。realsense的固件里已经存好了出厂标定结果我们不用自己去标定但得知道怎么调用。depth_intrinsics depth_frame.profile.as_video_stream_profile().intrinsics print(depth_intrinsics.fx, depth_intrinsics.fy, depth_intrinsics.ppx, depth_intrinsics.ppy)打印出来你会看到类似640.5、640.5、324.1、243.7这样的数值。这些值在后面对齐和三维坐标反投影时会用到现在先有个概念。3.3 使用align实现像素级对齐realsense的Python SDK里提供了现成的对齐工具rs.align用法很简洁align rs.align(rs.stream.color) def get_aligned_frames(frames): aligned_frames align.process(frames) aligned_color_frame aligned_frames.get_color_frame() aligned_depth_frame aligned_frames.get_depth_frame() return aligned_color_frame, aligned_depth_frame这段代码的意思是把深度帧重新投影到彩色帧的坐标系下让深度图和彩色图拥有完全一样的尺寸和像素坐标系。对齐之后彩色图的某个像素坐标直接就能在深度图上取到对应的距离值。这里要注意对齐方向。rs.align(rs.stream.color)是把深度对齐到彩色。如果反过来rs.align(rs.stream.depth)就是把彩色对齐到深度。一般我们都采用“深度对齐到彩色”的方式因为YOLO检测是在彩色图上做的检测框坐标天然是彩色图的坐标系。对齐后的深度图每个像素的坐标系和彩色图一致取距离值才不会错。3.4 对齐之后如何读出目标的真实距离对齐之后读距离就变成一件非常简单的事distance aligned_depth_frame.get_distance(x, y)这个get_distance方法接收的是像素坐标返回的是该像素对应的空间点到相机镜头的直线距离单位是米。注意它返回的是距离不是深度。所谓“深度”严格说是物体在相机Z轴方向上的投影距离而get_distance返回的是实际空间点到相机的欧氏距离。多数场景下两者的差异不大但在物体偏离画面中心很多时会有差别后续做三维坐标转换时要用深度值而不是距离值这个细节后面再展开。另外要留意深度图上有些像素是没有有效值的。比如黑天、强反光、纯白墙面深度传感器测不到距离那位置的值是0。取距离之前最好加一个有效性判断depth_value aligned_depth_frame.get_distance(x, y) if depth_value 0: print(f目标距离: {depth_value:.2f} m) else: print(该像素深度无效)这个0值判断非常实用。前期调试的时候如果频繁出现0值说明当前环境对红外深度传感器不友好往往需要补光或者检查红外发射器是否开启。4. YOLO V5的部署与推理集成官方脚本与Python API4.1 环境准备和仓库克隆YOLO V5目前仍然托管在GitHub的ultralytics/yolov5仓库里。克隆项目、安装依赖两步走git clone https://github.com/ultralytics/yolov5 cd yolov5 pip install -r requirements.txt这里有个新手最容易踩的问题YOLO V5的requirements.txt里包含多个依赖包比如torch、torchvision、opencv-python、matplotlib等。如果你之前手动装过某个版本的torch这个安装过程可能会覆盖或冲突。我的习惯是建一个单独的conda环境给YOLO用避免搞坏常用环境。conda create -n realsense_yolo python3.8 conda activate realsense_yolo pip install torch1.13.1 torchvision0.14.1 pip install -r requirements.txttorch版本我这里推荐1.13.1它和YOLO V5的兼容性验证过很多次后续转ONNX也稳定。如果电脑没有NVIDIA显卡就装CPU版torch跑个人觉得没问题的演示画面没问题但实时流畅就别指望了。4.2 先跑通内置权重的图片检测依赖装完后仓库自带的yolov5s.pt权重是已经在COCO数据集上训练好的涵盖人、车、猫、狗、杯子等80类常见物体。先用一张图片快速验证部署成功python detect.py --source data/images/bus.jpg --weights yolov5s.pt --conf 0.4跑完后结果保存在runs/detect/exp目录下。能看到bus.jpg上的多个目标都被画上了检测框左上角有类别名和置信度。到这里YOLO V5部署就算成功了。这一步的意义是验证运行链路排除显卡驱动或环境配置的问题之后再进Python集成心里就有底了。4.3 torch.hub.load方式集成进自己的程序实际项目中我们不可能用detect.py子进程的方式去和相机程序做交互那样数据传输代价太高。YOLO V5官方支持通过torch.hub加载模型直接在Python程序内调用推理这是最推荐的集成方式。import torch model torch.hub.load(./yolov5, custom, path./yolov5/yolov5s.pt, sourcelocal) model.conf 0.5 # 置信度阈值 model.iou 0.45 # NMS IoU阈值 model.max_det 20 # 最多检测20个目标 results model(color_image)sourcelocal表示从本地yolov5目录加载不联网。如果不加这个参数torch.hub会尝试从GitHub下载模型国内网络环境下经常失败。推理结果results是一个Detections对象里面包含了检测框坐标、类别、置信度等数据可以用results.pandas().xyxy[0]转成DataFrame直接读取df results.pandas().xyxy[0] for _, row in df.iterrows(): xmin, ymin, xmax, ymax int(row[xmin]), int(row[ymin]), int(row[xmax]), int(row[ymax]) cls_name row[name] conf row[confidence]Detections对象还自带results.render()方法可以把检测框绘制到原图上但为了布局自由我更建议自己用cv2.rectangle和cv2.putText绘制这样能顺便把深度值一起显示在框上。4.4 训练自己数据集的准备工作预留YOLO V5官方权重只认识COCO里的80类如果你的项目需要检测自己的零件、特定的箱子、某种机械部件就必须训练自己的数据集。完整流程包括图片采集、标注、数据集划分、写yaml配置、训练、验证、导出模型。这些内容信息量很大本篇先不展开但你可以先准备起来用D455采集真实场景图片每个类别至少采集100到200张用labelimg这类标注工具画检测框导出为YOLO格式的txt文件数据目录结构参考官方coco128样例保证train和val文件夹下各有一份images和labels。下一篇会专门讲这一块包括数据增强、训练参数调优和模型评估现在先把环境占了。5. 两路信号合并实时检测测距主循环的实测效果5.1 主循环的设计思路先对齐、再推理、最后取深度坐标现在我们手里有两套已经跑通的能力D455能输出对齐后的彩色图和深度图YOLO V5能在彩色图上检测目标。把两个合到一起核心是一个主循环逻辑顺序非常重要顺序错了结果就离谱。我的主循环顺序是固定的每一步都不能颠倒从pipeline拿到原始frames用align把深度帧对齐到彩色帧从对齐后的frames里取出彩色图和深度图把彩色图送入YOLO V5推理拿到检测框列表遍历每个检测框从对齐后的深度图对应位置取距离把类别名、置信度、距离值一起绘制到彩色图上显示。这里的关键点是所有对深度图的坐标操作都必须基于对齐后的深度图也就是align处理后的aligned_depth_frame。我用原生深度帧取距离的时候偏差大到能明显看到目标明明在左边报的距离却是右边的墙这个坑踩过一次就再也不想踩第二次了。5.2 在检测框上取深度值的策略中心点和底边中心哪种更合理很多人拿到检测框后习惯直接取框的中心点作为测距点。但这个做法在实际场景里有问题。比如检测一个站立的人YOLO的框是从头到脚的整个身体框的中心点大概在人的躯干位置用它取深度可能没问题但如果检测的是桌面上的一个杯子YOLO框的中心点可能落在杯子内部的空洞或者正好落在背景墙面上取出来的距离就完全错了。更稳的策略是根据目标类别来选点如果目标是地面或桌面上的物体取检测框底边中心点的深度因为这个点最靠近目标与支撑面的接触位置深度相对稳定如果目标是悬浮的、居中的物体取框内所有有效深度像素的中位数可以避免单个异常像素的影响不要取框内深度值的平均数平均数容易被前景或背景的极值拉偏。我实际测试过一个场景一杯水放在桌面上人的手离它很近。框中心点取到的深度是0.32米那是手背的距离而框底边中心取到的是0.63米才是杯子的真实位置。这样的差异对于机械臂来说就是抓空和抓中的区别。import numpy as np def get_bbox_depth(aligned_depth_image, xmin, ymin, xmax, ymax): roi aligned_depth_image[ymin:ymax, xmin:xmax] valid_pixels roi[roi 0] if len(valid_pixels) 0: return 0.0 return np.median(valid_pixels) / 1000.0这是一个简化版本直接把深度图对应区域的像素取出来过滤0值后求中位数。注意depth_image是毫米单位除以1000转成米。5.3 实测画面解读这个项目当前的样子我跑通这套组合后实时画面里能看到几个窗口左半部分是伪彩色深度图右半部分是彩色图。在彩色图上YOLO用彩色矩形框标出了检测到的目标每个框的左上角有两行文字第一行是类别和置信度第二行是“dist: 1.24m”这样的距离信息。看起来简单但这一帧画面的背后就是D455深度流和YOLO V5检测流的完整交汇。几个窗口配合调试的效果很好当我说“这个目标离我1米多”我能同时在深度图上看到目标区域确实偏红代表近而不是偏蓝代表远交叉验证了深度读数的正确性。整个画面的帧率在我这套配置下大概16到20 FPS完全够用于演示和开发。如果你要做机械臂抓取这个速度也够用抓取本身不需要特别高的视觉帧率稳定准确更重要。5.4 性能瓶颈在哪里把延迟从几秒压到实时的优化记录最开始跑融合程序的时候画面卡得没法看一个检测循环要1到2秒。排查后发现瓶颈有好几个按重要程度排列如下YOLO推理分辨率太高。如果直接喂1280x720的彩色图给YOLO输入会被letterbox到640x640但缩放和预处理的时间很长。我给YOLO喂的是经过resize的小尺寸图或者直接限制相机输出为640x480推理延迟立刻降一半。设备只有CPU。CPU上跑yolov5s推理640x640输入大概要300到500毫秒换成GPU哪怕是入门级GTX 1650能降到20到40毫秒。没有CUDA显卡的话就退而求其次用小模型yolov5nCPU推理能到100毫秒左右。不必要的显示开销。用cv2.imshow连续显示两三个大窗口在低配电脑上也占CPU。调试完可以只保留一个融合窗口深度图的假彩色可视化用640x480显示就够了。深度图取深度值的频率。每帧对每个检测框都切片取中位数如果检测框很多这个操作也有一定开销。目前检测框一般不超过5个问题不大但如果场景里几十个目标可以改成每隔几帧取一次深度或者只在目标框位置变化超过阈值时才重新取。上面这些优化做完我的机器从最初的每秒不到1帧提升到接近20 FPS效果非常明显。优化的核心思路是先降低数据量再降低算法耗时最后才考虑代码级优化。6. 我这个过程中的完整踩坑清单与下一步方向6.1 USB接口选择让深度流变成黑屏的真相我在调试过程中遇到过最诡异的问题彩色图正常深度图永远全黑realsense-viewer里能看到红外图像但深度就是出不来。排查了半天最后发现是笔记本的USB口供电策略导致的。当时用的是雷电扩展坞转出来的USB口雷电口本身带宽够但某些扩展坞的供电设计保守给D455的电流不够红外投射器如果启动失败深度图就是黑屏。解决方案分两步第一步换到电脑原生USB 3.0口第二步如果还在出差错检查一下realsense-viewer里的红外发射器选项确保emitter enabled状态。D455的深度计算依赖红外纹理纯白无纹理墙面本来就容易测不出深度这不是设备坏了。6.2 彩色和深度分辨率不匹配时的迷惑现象还有一个坑是配置流时一个分辨率对齐后另一个分辨率导致取值越界。比如彩色流配置了848x480深度流配置了1280x720对齐后虽然像素坐标系是统一的但尺寸映射关系会变。如果此时你还用彩色图上的坐标直接去索引深度numpy数组可能数组索引越界或者取到错误像素。写融合程序时一个保险的做法是从对齐后的frames里取出的depth_frame先转成numpy数组然后打印一下它的shape再和彩色图对比确认一致后再做像素级操作。不要想当然认为“深度图就是1280x720”对齐方式不同尺寸会不一样。6.3 对齐失败导致get_distance越界一个不太起眼的错误在同一个循环里第一次帧进来时align对象可能还没有完成内部状态初始化这时调用align.process(frames)偶尔会抛出异常。做法是把aligned_frames的获取放到一个while循环里用带超时的wait_for_frames确保拿到有效的frames再做align。这类初始化瞬间的偶发问题不是每次复现但一旦在演示现场出问题就很尴尬。6.4 下一步的三个方向这一篇打下的基础已经能支撑起一个“实时检测测距”的原型。接下来我会按这个路线往下走第一个方向是三维坐标转换。利用深度图的内参把目标检测框的像素坐标和深度值反投影到相机坐标系得到目标中心点的X、Y、Z坐标。这一步是机械臂抓取的前提核心公式就是相机内参的逆投影下一篇会单独写。第二个方向是目标追踪与多目标测距。当画面里有多个同类目标时YOLO只负责检测前后帧的关联追踪需要额外的算法。如果项目需求是“数一数桌上有几个零件每个在什么位置”这个方向就很有价值。第三个方向是自定义数据集训练。用D455拍真实场景的图标注成自己的目标类别训练一个专属模型。我计划用这套流程检测几种特定的工业零件到时候会分享整个训练日志和评估指标。目前这套D455 YOLO V5的方案已经能稳定地回答我最初问的问题画面中的目标是什么、在画面的哪个位置、离我有多远。接下来要把这个答案从“像素和距离”升级成“三维空间坐标”那才是真正能驱动机械臂的数据。
RELATED

相关推荐

在 cuda-samples 中用 libNVRTC 实现设备端断言调试:simpleAssert_nvrtc 运行时编译实战解析

在 cuda-samples 中用 libNVRTC 实现设备端断言调试:simpleAssert_nvrtc 运行时编译实战解析

在 cuda-samples 中用 libNVRTC 实现设备端断言调试:simpleAssert_nvrtc 运行时编译实战解析 【免费下载链接】cuda-samples Samples for CUDA Developers which demonstrates features in CUDA Toolkit 项目地址: https://gitcode.com/GitHub_Trending/cu/cuda-s…

📅 2026/9/15 13:34:58
Unity 交互视频开发实战:从热区触发到分支叙事与多平台部署

Unity 交互视频开发实战:从热区触发到分支叙事与多平台部署

做交互视频这事,我前后折腾过两个完整项目,一个是品牌方的产品互动广告,一个是带有分支剧情的小型互动短剧。刚开始我也以为这就是“视频播放器 盖几个按钮”的活儿,真正动手才明白,它是在视频工程、UI事件系统、状态…

📅 2026/9/15 13:29:58
前端开发建站出海:从接单到稳定收入的全流程指南

前端开发建站出海:从接单到稳定收入的全流程指南

去年有个前端的同行跟我抱怨,给国内客户做一个公司官网,报价从 3000 块谈到 800 块,最后还被一句“顺便把小程序也做了”差点搞崩溃。同一个月,我在海外市场接了一个 10 页左右的建站项目,报价 2500 美元,客…

📅 2026/9/15 13:29:58
MORE NEWS

更多资讯

📰

51单片机LED驱动原理:IO口电气特性与C语言控制

简介:本资源是一套面向单片机初学者与嵌入式课程实践者的51单片机基础实验案例,聚焦IO口输出控制核心技能,通过Proteus仿真与C语言代码双轨验证,解决“如何用有限IO口高效驱动多个LED”的典型工程问题。压缩包共10个文件&#xff…

📰

ScyllaDB Nodetool statusbackup 详解:增量备份状态查询命令的用法与底层原理

ScyllaDB Nodetool statusbackup 详解:增量备份状态查询命令的用法与底层原理 【免费下载链接】scylladb NoSQL data store using the Seastar framework, compatible with Apache Cassandra and Amazon DynamoDB 项目地址: https://gitcode.com/GitHub_Trending/…

📰

ModNet轻量级人像抠图模型在安卓端的Paddle Lite部署全流程解析

简介:这份资源是基于飞桨PaddleSeg的ModNet算法实现的人像抠图安卓版Demo,面向移动端视觉开发者、AI应用学习者以及嵌入式系统工程师。它能帮助解决在手机等移动设备上高效分离人物与背景的问题,直观演示深度学习大模型在资源受限环境中的部署…

📰

Midday 的 Runway 计算为什么把负债排除在现金余额之外?

Midday 的 Runway 计算为什么把负债排除在现金余额之外? 【免费下载链接】midday Invoicing, Time tracking, File reconciliation, Storage, Financial Overview & your own Assistant made for Freelancers 项目地址: https://gitcode.com/GitHub_Trending/…

📰

NocoBase FlowEngine 事件流(Event Flow)全解析:静态流、动态流与联动规则的事件驱动编排

NocoBase FlowEngine 事件流(Event Flow)全解析:静态流、动态流与联动规则的事件驱动编排 【免费下载链接】nocobase NocoBase is an open-source AI no-code platform for building business systems fast. Instead of generating everythi…

📰

20 行代码构建向量索引:CocoIndex 数据索引实战指南

20 行代码构建向量索引:CocoIndex 数据索引实战指南 【免费下载链接】cocoindex Incremental engine for long horizon agents 🌟 Star if you like it! 项目地址: https://gitcode.com/GitHub_Trending/co/cocoindex CocoIndex 是一个开源的数据…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬