- 博客(503)
- 资源 (33)
- 收藏
- 关注
原创 Jetson边缘计算主板:Ubuntu 环境配置 CUDA 与 cudNN 推理环境 + OpenCV 与 C++ 进行目标分类
摘要:本文详细记录了在Jetson Orin NX 16GB上配置AI开发环境的过程。首先安装jtop监测工具,然后通过Jetpack套件自动安装CUDA和cuDNN,并进行环境变量配置。接着测试cuDNN功能,最后编译支持CUDA加速的OpenCV 4.13版本(需配合opencv_contrib模块)。文中提供了完整的命令行操作和常见问题解决方案,为在Arm架构的Jetson设备上部署AI模型提供了实用指南。
2025-07-03 10:39:48
1137
原创 Linux环境下使用 C++ 与 OpenCV 实现 ONNX 分类模型推理
本文详细介绍了在Ubuntu 20.04系统上使用C++和OpenCV加载ONNX分类模型的完整流程。内容包括:1) 安装必要依赖项;2) 通过源码或GitHub下载安装OpenCV 4.9.0;3) CMake配置与编译OpenCV;4) 配置pkg-config环境和动态库路径;5) 测试代码示例,展示了如何使用OpenCV的dnn模块加载ONNX模型并进行图像分类推理。文中提供了关键命令和配置步骤,包括环境变量设置、pkgconfig路径修改等,最终成功运行分类模型并输出top-5预测结果。
2025-07-02 14:28:31
656
原创 讯飞大模型实时语音识别
默认是1024B,每40毫秒发送一次,经过博主测试,可以稳定在4096B,10毫秒的处理速度。至于识别精度,说实话,一言难尽,这个实时的识别效果比起上传读取音频的识别效果要差很多。不过毕竟它能够实现一个实时效果,就看大家如何选择了。
2025-07-01 17:53:00
313
原创 讯飞方言识别大模型python调用
摘要:本文介绍了如何使用讯飞方言大模型进行方言识别,针对官方Python接口存在的问题进行了改进。作者通过将音频分段处理,先检测静音片段,再合并非静音部分进行识别,提升了识别效率。代码实现了音频分割、静音检测、片段合并功能,并展示了与讯飞WebSocket API的交互方法,包括鉴权参数生成和消息处理。改进后的方案优化了长音频处理流程,减少了无效识别,提高了整体识别速度。
2025-06-27 08:53:07
444
原创 YOLO+ONNX+PyQt打包为exe踩坑记录
摘要:博主开发了一款实时姿态估计和目标检测软件,最初使用PyTorch+PyQt方案导致打包文件过大(2.7G),后改用ONNXRuntime推理模型优化体积。在Python 3.8环境下成功打包时,发现缺少onnxruntime_providers_shared.dll依赖,通过修改spec文件添加依赖项和资源文件路径后解决。最终使用PyInstaller完成打包,生成的可执行文件位于dist目录。文章详细记录了开发过程中的环境配置(包含完整依赖列表)和打包技术细节。
2025-06-26 17:43:56
259
原创 千人千面电网安全规范考核系统
本文介绍了千人千面安全规范考核系统的算法实现,该系统包含安全帽、工作服及绝缘手套佩戴检测等功能,采用YOLO系列算法结合目标检测、姿态估计等技术。系统使用Ultralytics框架进行模型训练,并转换为ONNX/TFLite格式部署。环境配置基于Python 3.10,依赖ONNX Runtime、FastAPI等工具。项目提供两种运行方式:直接执行main.py或通过FastAPI接口调用(端口16566)。该系统实现了安全装备智能检测的算法集成与部署方案。
2025-06-25 09:54:20
200
原创 YOLO算法(姿态估计+ROI区域提取+图像分类)实现头发规范判断
本文提出了一种基于姿态估计和图像分类的头发长度检测方法。首先利用姿态估计算法提取人体关键点,通过耳朵和肩膀位置确定颈部ROI区域。然后构建一个二分类数据集(合格/不合格),并使用数据增强技术扩充样本。最后训练YOLO衍生的分类模型进行判断。该方法相比传统目标检测方案,计算效率更高,且能充分利用已有姿态估计结果。实验表明,该方法在头发长度检测任务上取得了良好效果。
2025-06-17 08:46:57
625
原创 点云航线规划软件
本文介绍了一款基于OpenGL+PyQt开发的点云航线规划软件,具备流式处理降低内存消耗、智能分类算法优化精度、高效渲染等功能。软件支持工程创建、点云导入与多模式渲染、台账标注、一键自动化处理(包括分类、通道分割、航线生成等)、工况分析、手动点云分类调整、航线规划与自定义模板、航线拆分以及巡检照片智能重命名等核心功能。通过可视化交互界面和自动化流程设计,显著提升了电力巡检等场景下的工作效率,支持多任务并行处理和复杂场景下的航线优化调整。软件还提供轨道安全距离预警和跨区域航线拆分等特色功能,满足专业用户的精细
2025-06-16 17:43:04
615
原创 记录从数据采集到模型部署全过程——带你快速入门算法工程师
本文介绍了基于深度学习的布控球检测系统实现方案。首先通过数据采集(57张原始图像)和标注,采用翻转、裁剪、色调调整等数据增强手段扩充至450余张训练样本。系统核心功能包括检测布控球与三脚架的摆放关系(要求放置在三角架上)、测量离地高度(>1米)以及计算布控球视角夹角(<45度)。技术实现流程涵盖数据集处理、模型训练与部署,重点展示了数据增强代码实现,包括保持长宽比的图像缩放、随机水平/垂直翻转、中心裁剪等方法,为后续目标检测模型的准确率提升奠定基础。
2025-06-16 11:27:15
1012
原创 YOLO电力物目标检测训练
摘要:本文介绍了电力物检测数据集的构建与YOLO目标检测实验过程。使用无人机采集600余张图像,包含防振锤、间隔棒和压接管三类目标。通过labelme标注工具生成JSON文件后,编写Python脚本将其转换为YOLO格式,并按8:2比例划分训练集和验证集。代码实现了矩形框坐标转换和数据集自动分割功能,为后续YOLO模型训练提供了规范化的数据准备流程。
2025-06-10 18:05:34
395
原创 安全帽目标检测
安全帽数据集处理摘要 本文介绍了如何使用HelmentDetection安全帽数据集(5000张VOC格式图像,包含head、helmet、person三类)进行YOLO格式转换。主要步骤包括: 收集VOC标注中的所有类别并创建类别映射 将VOC格式转换为YOLO格式(归一化坐标) 分割数据集为训练集(80%)、验证集(20%)和测试集(10%) 组织文件结构,创建images和labels目录并按子集分类 代码提供了完整的格式转换和数据集划分功能,实现从VOC到YOLO格式的无缝转换,为后续目标检测模型训
2025-05-30 16:35:07
560
原创 YOLO人体姿态估计Pytorch推理&&ONNX模型推理
本文介绍了基于YOLOv11n-pose模型的姿态估计方法,包含模型转换与两种推理方式。首先解析了COCO数据集的17个人体关键点(0-16序号),并说明YOLO-pose模型输出维度(1,56,8400)的含义:其中56包含4个坐标值、1个置信度及17个关键点(每个关键点含x,y坐标及可见性v值)。通过ultralytics框架可直接推理,同时演示了将pt模型转为onnx格式的方法。最后详细展示了onnx推理的后处理流程,包括坐标转换、非极大值抑制(NMS)以及关键点解析。实验结果表明,该方法能有效检测人
2025-05-28 11:27:19
485
原创 ESP8266制作遥控坦克
ESP8266 配置为服务器:ESP8266 可以配置为一个简单的 Web 服务器,监听特定端口上的传入连接。HTTP 请求处理:当手机 App 发出 HTTP 请求(如 GET 或 POST),ESP8266 接收并解析这些请求,根据请求内容执行相应的操作(比如前进、后退等)。电机控制:ESP8266 根据接收到的指令,通过 GPIO 引脚发送信号给电机驱动模块(如L298N),进而控制汽车的动作。
2025-05-20 12:33:52
467
原创 YOLO12的A2C2f模块解析
YOLOv12通过引入基于注意力机制的A2C2f模块,成功突破了传统基于卷积神经网络(CNN)的YOLO框架在速度与精度之间的权衡。A2C2f模块结合了Transformer注意力机制和多层感知机(MLP),在保持高效推理速度的同时,显著提升了目标检测性能。该模块包含卷积层(cv1和cv2)用于特征提取,以及多个ABlock,每个ABlock由注意力机制(AAttn)和MLP组成,分别用于生成查询、键、值向量和特征维度变换。YOLOv12的创新设计使其在实时性与检测精度之间实现了更好的平衡,为目标检测领域提
2025-05-17 12:06:22
1291
原创 ultralytics 中的 RT-DETR 之 模型结构解析
本文详细解析了RT-DETR-ResNet50混合检测模型在ultralytics框架中的实现。首先,文章介绍了ResNet50作为Backbone的逐层结构,包括各模块的参数、输入输出维度及其作用,重点解释了Bottleneck结构的通道扩展机制和下采样实现。随后,文章解析了Head网络的混合注意力架构,包括特征增强、多尺度特征融合、金字塔结构构建和跨层级联解码等阶段,详细说明了每个模块的功能及其对特征图的影响。整体上,该模型通过优化Bottleneck结构和特征融合策略,显著降低了计算量,同时保持了较高
2025-05-14 11:58:14
1728
原创 关于ultralytics框架计算出的结果与COCOtools结果不一致问题
博主在实验中对比了ultralytics框架和COCOtools中不同目标检测方法(如YOLO和DETR)的AP(Average Precision)计算结果,发现两者存在显著差异。在ultralytics框架中,YOLO类方法的AP值高于DETR类方法,而在COCOtools中,DETR类方法的AP值则优于YOLO类方法。博主排除了IoU阈值、面积范围和最大检测数等常见因素,认为这些差异可能与计算方式或框架实现细节有关,但具体原因尚不明确,希望与读者进一步探讨。
2025-05-13 09:38:51
215
1
原创 ultralytics框架计算大中小目标检测精度
先前在跑DETR类目标检测算法时,由于其默认使用的是COCO数据集,所以输出结果中包含不同尺度的检测精度,即大、中、小目标。而现在博主在使用时,发现其并没有这个指标效果,但在先前的实验中,博主发现DETR中计算这些指标使用的是这个工具包,那么我们就可以将检测结果和标注数据采用这个工具进行计算。话不多说,我们开整。
2025-05-12 20:59:31
448
原创 YOLO使用CableInspect-AD数据集实现输电线路缺陷检测
本文介绍了使用CableInspect-AD数据集进行输电线路缺陷检测的流程。首先,将COCO格式的数据转换为YOLO格式,通过Python脚本将json文件转换为txt格式的标签文件,并存储在labels文件夹中。接着,提取数据集中的图像文件到images文件夹,并根据标签文件进行数据集的划分。整个过程包括数据格式转换、图像提取和数据集划分,为后续的模型训练和缺陷检测提供了基础。
2025-05-09 16:06:43
310
原创 ultralytics框架进行RT-DETR目标检测训练
自DETR提出以来,其采用匈牙利匹配方式真正的实现了端到端检测效果,避免了NMS等后处理过程,同时,相较CNN的局部特征提取,其凭借着强大的全局特征提取能力,在目标检测领域可谓大杀四方,基于的目标检测方法因此层出不穷。然后,尽管DETR类目标检测方法具有较好的数据拟合能力,但本身的计算复杂度较高,这使其很难完成实时检测任务,而今天我们则要介绍的便是百度提出的实时DETR目标检测方法,这个方法我已经在先前的博客中有过介绍,当时是基于RT-DETR的源码进行介绍的,今天我们则要介绍的是中的RT-DETR模型。
2025-05-06 17:38:59
988
4
原创 基于 PyQt 的YOLO目标检测可视化界面+ nuitka 打包
在人工智能和计算机视觉领域,是一种广泛使用的实时目标检测算法。为了直观地展示YOLO算法的检测效果,我们使用Pyqt框架进行检测结果的可视化,同时为了使其能够脱离Python环境,我们将模型文件转换为ONNX格式,并使用nuitka进行打包。
2025-05-04 20:59:10
645
原创 YOLO旋转目标检测之ONNX模型推理
YOLO旋转检测相较于目标检测而言,其只是最后的输出层网络发生了改变,一个最明显的区别便是:目标检测的检测框是xywh,而旋转检测则为xywha,其中,这个a代表angle,即旋转角度,其余的基本相同。
2025-05-02 22:30:42
687
原创 YOLO旋转检测模型简化
尽管从精度角度来看,其检测效果下降了许多(大概30%),但其模型大小也由原本的32MB下降到了700KB,这等程度的模型体积下降幅度还是深得我心的,毕竟我的这个项目场景对精度的要求并没有很高。YOLO模型作为单阶段目标检测方法的代表,其已经应用在多个领域。
2025-04-27 16:48:30
280
原创 YOLO目标检测之模型剪枝
剪枝(Pruning)是一种模型压缩技术,旨在通过移除神经网络中不重要的权重或神经元来减少模型的大小和计算复杂度,同时尽量保持模型的性能。
2025-04-27 11:28:44
733
原创 YOLO检测目标后实现距离测量
相较而言,单目测距依赖与经验值,而深度估计测距则依赖模型性能,综上双目测距的方式无论是在速度方面还是精度方面都能有较好的表现。
2025-04-12 16:45:11
860
2
原创 YOLO系列模型格式转换为 tf-lite 与模型量化
在YOLO中,使用的是YOLO自己的数据格式,因此我们需要将其进行转换,并将其进行训练,这里我就不再赘述了。综上,由于我们需要将这个模型部署在安卓端等算力不足的边缘设备上,所以tf-lite变成了我们的首选。然而,不幸的是,量化后的int8模型精度很差,无法满足我们的需求,我们也就只能选择。格式,这里就来到了我们进入的重点,我们要实现将 .pt 格式的模型文件转换为。框架中,已经帮我们封装好了相关方法,我们只需要配置好环境,就可以了。这里我们需要注意的是,转换代码中,需要我们手动下载安装。
2025-04-10 16:57:41
1318
原创 《基于 Cloth Simulation 的机载 LiDAR 滤波方法》集成到点云标注工具做地面标注
而基于 Cloth Simulation 的机载 LiDAR 滤波方法便可以较好的识别地面信息,从而帮助我们节省很多成本。在我们标注点云时,因为地面和植被紧贴在一起,因此我们地面很难进行较为精细的标注(当然很多情况下地面我们都会忽略)至此,完成地面提取。接下来便是进行地面滤波处理完成的后续操作,根据地面类别的颜色进行赋值,完成点云地面标注。原理我们在此不去深究,我们主要看起如何应用到我们的点云标注工具中。实现代码如下,这里我们选用。可以看到,其提取效果不错。
2024-10-24 18:07:05
371
原创 点云标注工具开发记录(五)之点云文件加载、视角转换
在Open3D中,通过read方法,我们可以读取不同格式的点云数据,那么,在不使用Open3D。
2024-10-24 17:00:04
691
原创 点云标注工具开发记录(四)之点云根据类别展示与加速渲染
先前我们使用的是Open3D进行点云加载与展示,但由于Open3D更侧重于点云处理,其缺少一些相关的GUI控件,因此采用PyQt进行开发,同时使用OpenGL进行3D渲染,那么具体要如何实现呢?
2024-10-23 17:59:03
681
原创 点云标注工具开发记录(三)之框选点云与渲染颜色
参照open3d中的交互式点云可视化,我们可以理解其是如何进行框选点云的。可以看到,要想进行点云框选,首先要锁定视角,随后便可以在上面进行选择了。
2024-10-23 14:47:21
553
原创 Open3d开发点云标注工具问题总结(二)
似乎,这样的逻辑并没有什么问题,但将3D点云向2D屏幕投影,他的坐标是固定的,也就是说,每个点云的点在加载后,其往屏幕的投影就是确定的,那么,在我们框选过程中,当点云经过旋转、平移、缩放等操作后,他的投影依旧不会变化,这就导致其根本不能实现框选操作。
2024-10-18 16:25:04
461
原创 使用 Open3D 实现 las 格式点云文件读取
事实上,las文件中不但包含了点云的坐标、颜色等特征,还具有需要其他特征,如类别。格式是一种为激光雷达点云数据的交换和存档而设计的文件格式,是一种被。来实现读取,随后将读取的点云文件进行转换,即提取出。格式被广泛使用并被视为激光雷达数据的行业标准。坐标以及颜色等属性特征,最后进行可视化即可。格式文件读取的接口,但我们可以借用。而在Open3D中,并没有专门用于。首先是取las点坐标时是小写的。指定的开放二进制格式。,如果写成大写,会发现。可以直接读取点云坐标。中并未提供小写选项。
2024-10-15 10:23:47
920
原创 利用Open3D GUI开发一款点云标注工具问题总结(一)
工作需求:利用Open3D开发一款用于点云标注的工具,即按照点云类别赋予不同颜色实现效果如下:通过点击颜色面板的不同颜色可以进行颜色切换,在我们选择两个点后,点击Create Box可以创建一个轴对称框体,从而将该框体内的点云设置为对应颜色,点击Save后则可以保存结果。需求并不复杂,但对于我这个半路出家的门外汉而言,还是有些难度的,这篇博文主要记录一下实现思路与在设计过程中遇到的问题。
2024-10-14 18:01:47
1129
原创 PointNet++训练自定义数据集
我们已经学习了PointNet++的网络结构,以及在S3Dis数据集上的训练、测试以及可视化等操作,那么如何使用该模型来训练我们自己的数据集呢,其实,操作十分简单,只需要修改几个参数即可。
2024-10-09 14:19:49
2303
9
原创 PointNet++网络详解
其中,对于points,16是batch-size,4096是点云数量(我们在前一篇博客中说过,为了使输出的值统一,我们的输入值的数量也要统一,这里设置一个batch中输入的点云数量为4096,9则是其点云维度。组合点云和类别,在先前为方便运算,将场景中的点云进行了切分,每个batch含有4096个,在完成对4096个点的分类后,将其组合起来,即恢复为原来的场景。下面的代码是训练的核心部分,即完成加载数据集,将数据送入模型,计算损失,反向传播等功能,其中我们着重看一下数据在模型中是如何变化的。
2024-10-08 17:22:11
2632
原创 基于深度学习的点云处理模型PointNet++学习记录
根据其论文中给出的介绍,Point++是用于点云分割与分类的深度学习模型,由下图可知,该模型主要分为三部分,分别是点空间特征提取、分割模型以及分类模块。其中,由一系列点集抽象层()组成,而每一个。:Sampling layer的作用是从点云中选择很多个质点和围绕在这些质点的局部区域。作为输入,通过使用FPS算法(,最远点采样法)选出一系列点作为质点,与随机选取相比,这样可以更好的覆盖整个点集空间。
2024-09-30 15:52:11
3180
1
原创 点云与Open3D入门
点云与三维图像的关系深度图(以灰度表达物体与相机的距离),几何模型(由CAD软件建立),点云模型(所有逆向工程设备都将物体采样成点云)。和二维图像相比,三维图像借助第三个维度的信息,可以实现天然的物体——背景解耦。点云数据是最为常见也是最基础的三维模型。点云模型往往由测量直接得到,每个点对应一个测量点,未经过其他处理手段,故包含了最大的信息量。这些信息隐藏在点云中需要以其他提取手段将其萃取出来,提取点云中信息的过程则为三维图像处理。点云是某个坐标系下的点的数据集。
2024-09-24 18:47:39
1435
1
原创 大模型学习记录之Agent部署
首先,需要明确大模型的概念,通过百度的文心一言的结果,我们得到如下概念:大模型(Large Models) 在人工智能和机器学习领域,特别是深度学习领域,指的是那些具有大量参数、复杂结构和高度计算需求的模型。这些模型通常需要在大规模数据集上进行长时间的训练,以捕捉数据中的复杂模式和关系。大模型的出现和发展,主要得益于计算能力的提升、算法的优化以及大规模数据集的可用性。大模型的特点可以概括为以下几个方面:大模型的发展也带来了一些挑战和争议。一方面,大模型需要消耗大量的计算资源和时间成本,这限制了其在实际应用中
2024-09-19 09:11:29
1656
原创 ChatGLM-6B部署到本地电脑
ChatGLM-6B是由清华大学开源的双语对话大模型,该模型有62亿参数,但在经过量化后模型体积大幅下降,因此不同于其他需要部署到服务器上的大模型,该模型可以部署到本地电脑,那么接下来我们来看看如何部署该模型。此时可以先将模型下载到本地,然后从本地加载,当然此时我们需要修改一下对应的地址。随便提一个问题,说起来确实一套一套的,好像谁不知道似的,说点干活嘛。之后,我们将人类语言转化为了机器语言,接下来就可以输入模型了。然后从这里手动下载模型参数文件,并将下载的文件替换到本地的。
2024-09-17 21:58:27
1697
原创 ultralytics实现DeepSort之级联匹配
DeepSort算法引入的特征提取模块,并在匹配时首先使用特征作为匹配指标,因此,这使得DeepSort算法能够在目标遮挡后再次出现时能够重新匹配成功(ReID),当然这也意味着其速度上较不使用特征提取方法的跟踪算法,(如ByteTrack)速度慢了一些。
2024-09-12 18:09:20
4832
SSM校园服务系统.zip
2020-04-28
java电话簿管理系统.zip
2020-02-28
library.zip
2020-02-07
bookstore.zip
2020-02-07
library.zip
2020-02-07
基于SSM框架的学生档案管理系统
2025-06-23
基于SSM框架的旅游购票系统
2025-06-23
基于协同过滤算法的SSM商城系统
2025-06-03
JavaWeb学生选课系统
2021-07-26
SSM音乐视频网站.zip
2021-08-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人