自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(190)
  • 收藏
  • 关注

原创 linux 报错:bash: /etc/profile: 行 32: 语法错误:未预期的文件结束符

每个if的后面结尾都要跟着一个fi我在添加代码时,无删除了一个fi导致了错误,新手建议检查一下有没有误删除的情况。

2024-07-18 23:35:21 387

原创 Shapely下载

翻至文末下载下载连接如下。

2024-07-18 16:15:27 849

原创 如何使用roboflow进行打标签和数据增强

Roboflow 是一个用于机器学习和计算机视觉项目的开源平台。它提供了一系列的工具和功能,帮助开发者和数据科学家更高效地处理图像数据,训练和部署机器学习模型。数据标记和增强:Roboflow 提供了一个用户友好的界面来标记图像数据,支持多种标记类型,如边界框、分割掩码、分类标签等。此外,它还提供了图像增强功能,可以自动增加数据集的多样性。模型训练:Roboflow 允许用户直接在平台上训练机器学习模型,支持多种流行的深度学习框架,如 TensorFlow、PyTorch 等。模型导出和部署。

2024-07-11 11:45:54 535

原创 CLion学习笔记-cmake编译和多main函数编译

1.新建一个工程名字自己取,我这里用自己学习pcl的,加一个main函数,这个时候Cmake里边就是这样的。重复上面的步骤取编译一下cmake,然后进入主函数就可以运行了。点击此处按钮加载 ,或者右键cmake.list点击重新加载。这里就不讲怎么配置clion了。多个main函数如何运行。

2024-07-09 17:50:13 235

原创 VSCode连接远程服务器并使用docker容器调试代码

以上为大致顺序,可能又错漏之处,大家可以留言,主要配置完一次之后,有些细节自动跳过了。接着展开Dev Containers,就可以查看到本地的镜像,绿色是当前正在运行的。首先需要进入服务器,用ssh连接,这里大家用的方式可以不同,我这里用的是这个小插件。/dataloader/czc/这里是服务器的你自己的建的路径存放个人代码数据。czc_yolov8 你的容器的名字 根据你的任务,我这个是yolov8的容器。/database这里是上面你的路径映射到容器里的对应的根目录。

2024-07-09 09:26:07 446

原创 Yolov8模型调参大全:超详细解读每一个参数

defalut.yaml配置文件用于设置Yolov8模型的训练和预测参数。4.1. 类型/模式参数4.1.1. task: detect指定Yolov8的任务类型,默认为detect,您也可根据实际应用场景设置为segment、classify、pose等。4.1.2. mode: train指定Yolov8的运行模式,默认为train,您也可根据实际操作设置为val、predict、export、track、benchmark等。4.2. 训练参数4.2.1. model模型文件

2024-07-04 11:14:05 2234

原创 YOLOv8模型调参---数据增强

离线增强是指在模型训练前在计算机上一次性完成所有数据增强操作,将原始数据集转化为包含多种增强版本的扩充数据集,并将增强后的样本保存到磁盘或内存中,然后使用这个固定的扩充数据集进行训练。

2024-07-04 10:16:07 1465

原创 YOLOv8超参数解析

余弦学习率调度器可以帮助模型在训练过程中按照余弦函数的形状调整学习率,从而在训练初期使用较高的学习率,有助于快速收敛,而在训练后期逐渐降低学习率,有助于细致调整模型参数。通过调整输入图像的尺寸,进而可控制模型的输入大小,从而优化模型的准确性和速度。设置为False时,将不使用AMP,即使用常规的精度进行训练,通常是使用单精度浮点数(single-precision floating-point)。具体来说,设置为0.8表示使用训练集中80%的图像进行训练,剩下的20%将不参与训练。

2024-07-02 14:11:08 821

原创 瑞芯微RK3588部署YOLOv8模型

写下这篇博客进行记录,以防后面忘了怎么部署。

2024-07-01 15:25:32 1049

原创 ByteTrack跟踪算法详解和代码解析

ByteTrack算法是一种基于目标检测的追踪算法,和其他非ReID的算法一样,仅仅使用目标追踪所得到的bbox进行追踪。追踪算法使用了卡尔曼滤波预测边界框,然后使用匈牙利算法进行目标和轨迹间的匹配。ByteTrack算法的最大创新点就是对低分框的使用,作者认为低分框可能是对物体遮挡时产生的框,直接对低分框抛弃会影响性能,所以作者使用低分框对追踪算法进行了二次匹配,有效优化了追踪过程中因为遮挡造成换id的问题。没有使用ReID特征计算外观相似度非深度方法,不需要训练。

2024-06-25 09:00:00 998

原创 手写最简单的目标跟踪算法

函数set_id的作用就是为当前目标设置ID,它的输入变量是被设置目标ID的中心点坐标centerPt,返回的是该目标的ID号return_id。在这里,我们除了为目标标注ID外,还实现了另一个功能:绘制了该目标的运动轨迹,所以这里的坐标不仅仅是当前帧的坐标,还包括以前同一目标的坐标。由于我们已经把当前帧内出现的ID保存在了now_id内,所以我们只需要把id_history内的ID与now_id比较,将now_id内没有出现的ID从id_history内剔除掉即可。id_counter为目标ID的编号。

2024-06-24 09:00:00 970

原创 DeepSort多目标跟踪训练自己的数据集

比如我track.py跑的MOT16-13的视频,就会在目录的inference/output下生成一个MOT16-13.txt的文本,依次跑完7个训练视频(视频我会放在最后),可得到7个txt文件(需要自己跑代码生成),将得到的txt文件放在data/trackers/mot_challenge/MOT16-train/data/下即可(3.1.1节提到的),准备工作就完成了。跟踪权重:ckpt.t7(deep_sort_pytorch/ deep_sort/ deep/ checkpoint文件夹下)

2024-06-23 16:01:32 1785 7

原创 YOLOv10解析:保姆级解读和使用教程

YOLOv10是清华大学的Ao Wang, HuiChen, LihaoLiu等人于 2024年5月发布的,是一种新的实时端到端目标检测器,也是YOLO系列最新的算法。code。

2024-06-20 13:33:58 1803

原创 超详细YOLOv8全解:学v8只用看一篇文章

例如,tensor([0., 5., 0., 0., 0.], device='cuda:0')中的0和5表示第一个对象被分类为类别0,第二个对象被分类为类别5,以此类推。举例来说,如果一个.txt文件中的一行是1 0.5 0.5 0.2 0.3,这意味着该对象属于类别1(例如“车”),其边界框的中心位于图像中心(X和Y坐标均为0.5),边界框的宽度是图像宽度的20%,高度是图像高度的30%。YOLOv8x-cls: 在这个系列中,它提供了最高的准确率,但速度最慢,需要较强的硬件支持。

2024-06-19 11:50:51 5975 1

原创 Win11+VS2022环境下配置点云库PCL1.11.1(超详细)

添加内容为PCL根目录下的lib文件(H:\PCL\PCL 1.11.1\lib)和PCL\3rdParty\VTK下的lib文件(H:\PCL\PCL 1.11.1\3rdParty\VTK\lib),debug版本的文件名带有“-gd”后缀。至此属性全部设置完成,右键“PCL1.11.1”,点击“保存PCL1.11.1”,这样在今后创建新项目时可以选择“添加现有属性表”,直接添加PCL1.11.1,就不用重新配置啦。(8)在连接器中选择“输入”,选择“附加依赖项”,点击编辑,添加内容。

2024-06-18 13:01:54 893 2

原创 YOLOv9独家提点|加入MobileViT 、SK 、Double Attention Networks、CoTAttention等几十种注意力机制(五)

本文将以SE注意力机制为例,演示如何在YOLOv9种添加注意力机制!SENet提出了一种基于“挤压和激励”(SE)的注意力模块,用于改进卷积神经网络(CNN)的性能。SE块可以适应地重新校准通道特征响应,通过建模通道之间的相互依赖关系来增强CNN的表示能力。这些块可以堆叠在一起形成SENet架构,使其在多个数据集上具有非常有效的泛化能力。

2024-06-17 08:30:00 146

原创 YOLOv10的使用总结

YOLOv10 的架构借鉴了以往 YOLO 模型的优点,同时引入了几项关键创新。模型架构由以下部分组成:Backbone:YOLOv10 中的骨干网负责特征提取,使用增强版 CSPNet(Cross Stage Partial Network)来改善梯度流并减少计算冗余Neck:颈部用于汇聚不同尺度的特征,并将其传递给头部。它包括 PAN(Path Aggregation Network)层,可实现有效的多尺度特征融合。

2024-06-16 18:12:55 264

原创 YOLOv10详解与总结

YOLOv10 由清华大学研究人员在 Ultralytics版基础上进行进一步开发,引入了一种新的实时目标检测方法,解决了以前版本 YOLO 在后处理和模型架构方面的不足。在性能相同的情况下,YOLOv10-B 比 YOLOv9-C 减少了 46% 的延迟和 25% 的参数。该模型在不同的变体中都取得了最先进的结果,与以前的版本和其他当代探测器相比,在延迟和准确性方面都有显著提高。在精度相同的情况下,YOLOv10-B 的参数比 YOLOv9-C 少 25%,延迟比 YOLOv9-C 低 46。

2024-06-16 17:59:59 340

原创 YOLOv9独家原创改进:增加SPD-Conv:小目标检测提点神器

卷积神经网络(CNNs)在计算即使觉任务中如图像分类和目标检测等取得了显著的成功。然而,当图像分辨率较低或物体较小时,它们的性能会灾难性下降。这是由于现有CNN常见的设计体系结构中有缺陷,即使用卷积步长和/或池化层,这导致了细粒度信息的丢失和较低效的特征表示的学习。为此,我们提出了一个名为SPD-Conv的新的CNN构建块来代替每个卷积步长和每个池化层(因此完全消除了它们)。SPD-Conv由一个空间到深度(SPD)层和一个无卷积步长(Conv)层组成,可以应用于大多数CNN体系结构。

2024-06-16 16:51:45 389

原创 YOLOv9独家改进:动态蛇形卷积Dynamic Snake Convolution替换conv卷积

使用ICCV2023中的动态蛇形卷积替换YOLOv9网络中的Conv模块。应用场景: 适合 具有细长微弱的局部结构特征与复杂多变的全局形态特征的场景。话不多说,展示修改成功后的运行图。

2024-06-16 16:39:23 88

原创 YOLOv9独家改进:融合动态蛇形卷积Dynamic Snake Convolution与与RepNCSPELAN4

Dynamic Snake Convolution是一种针对细长微弱的局部结构特征与复杂多变的全局形态特征设计的卷积模块。RepNCSPELAN4是YOLOv9中的特征提取模块,类似YOLOv5和v8中的C2f与C3模块。的主要思想: 使用Dynamic Snake Convolution与RepNCSPELAN4中融合。

2024-06-16 16:34:44 173

原创 YOLOV5 + PYQT5双目测距

双目测距是一种利用立体视觉原理来测量物体距离的技术。它基于人眼观察物体时左右眼接收到的图像存在视差(即左右眼图像的差异)这一事实。: 使用两个平行排列的摄像头(模拟人的双眼)同时捕获同一场景的两幅图像。: 由于两个摄像头可能存在镜头畸变,需要对捕获的图像进行校正,以确保图像中物体的位置和形状准确。: 找到左右图像中相同物理点的对应像素。这个过程称为特征匹配或图像配准。: 根据左右图像中匹配点的水平像素差(即视差),计算深度信息。视差与深度成反比,即视差越大,物体越近;视差越小,物体越远。

2024-06-16 09:00:00 77

原创 双目三维测距代码详解

立体校正后的左右两幅图像得到后,匹配点是在同一行上的,可以使用OpenCV中的BM算法或者SGBM算法计算视差图。立体校正利用双目标定的内外参数(焦距、成像原点、畸变系数)和双目相对位置关系(旋转矩阵和平移向量),分别对左右视图进行消除畸变和行对准,使得左右视图的成像原点坐标一致、两摄像头光轴平行、左右成像平面共面、对极线行对齐。校正前的左右相机的光心并不是平行的,两个光心的连线就叫基线,像平面与基线的交点就是极点,像点与极点所在的直线就是极线,左右极线与基线构成的平面就是空间点对应的极平面。

2024-06-15 08:15:00 63 1

原创 使用Zed 实现测距

此代码基于官方代码基础上进行改写,主要是获取zed相机深度画面的深度值,为yolo测距打基础。Zed相机是由Stereolabs公司开发的一种先进的立体视觉相机。这种相机专为计算机视觉和机器学习应用而设计,能够提供高质量的3D捕捉和分析功能。: Zed相机配备有一对垂直排列的传感器,能够捕捉两个略有偏移的图像,从而模拟人的双眼视觉,实现深度感知。: 利用立体成像技术,Zed相机能够实时生成环境的3D模型,这对于机器人导航、增强现实(AR)和虚拟现实(VR)等应用至关重要。

2024-06-14 20:42:32 161

原创 基于双目视觉的尺寸检测算法设计

YOLO系列算法的核心思想是将目标检测任务视为一个单一的回归问题,直接从图像像素到边界框坐标和类别概率的映射。这种设计使得YOLO能够在保持高精度的同时实现快速的检测速度。输入处理: YOLO接受输入图像并将其划分为一个个格子(grid cell)。每个格子负责预测中心点落在该格子内的目标。边界框预测: 每个格子预测多个边界框(bounding boxes),包括边界框的位置和尺寸。类别预测: 每个边界框还预测一个置信度(confidence),表示边界框包含目标的概率以及预测的类别概率。后处理。

2024-06-14 20:27:48 415

原创 简化YOLOv5的推理过程(学习笔记)

--HWC转CHW---扩展维度---numpy转tensor---转float32---预测--NMS--将检测框缩放至原始图尺寸--你需要的功能(截图、画检测框等)加载模型---动态resize图片大小---

2024-06-13 08:00:00 40

原创 YOLOv5的detect.py逐句注释教程(学习笔记)

detect.py主要有run(),parse_opt(),main()三个函数构成。

2024-06-11 08:00:00 179

原创 AnyLabeling自动打标签教程(学习笔记)

1、支持多边形,矩形,圆,线和点图像标注。2、通过YOLOv5 和 Segment Anything自动标注。3、支持文本检测,识别和KIE(关键信息提取)标注。4、支持英语,越南语,汉语。一、AnyLabeling安装使用Anaconda安装环境。1、安装环境。

2024-06-10 13:40:45 181

原创 YOLOv5的predict.py逐句讲解(学习笔记)

因为太多依赖python的各种库,导致自己对YOLO的开发能力有所下降,最近准备重新整理一下YOLO系列的代码以供以后自己查阅。YOLOv5-v7.0将分类脱离出来了。predict.py为分类的推理代码。predict.py主要有run(),parse_opt(),main()三个函数构成。

2024-06-10 13:14:11 365 1

原创 YOLOv8+双目测距

立体校正利用双目标定的内外参数(焦距、成像原点、畸变系数)和双目相对位置关系(旋转矩阵和平移向量),分别对左右视图进行消除畸变和行对准,使得左右视图的成像原点坐标一致、两摄像头光轴平行、左右成像平面共面、对极线行对齐。像点在左右图像上的高度一致。校正前的左右相机的光心并不是平行的,两个光心的连线就叫基线,像平面与基线的交点就是极点,像点与极点所在的直线就是极线,左右极线与基线构成的平面就是空间点对应的极平面。1、将右图像平面相对于左图像平面的旋转矩阵分解成两个矩阵Rl和Rr,叫做左右相机的合成旋转矩阵。

2024-06-09 21:25:06 230

原创 双目拍照代码 (C++/opencv)

1.准备一个双目摄像头二、环境:C++、库发现第一个报错。

2024-06-03 13:14:24 41

原创 YOLOv9改进:独家HWD-ADown模块

HWD是一种下采样模型,应用了小波变换的方法。ADown是YOLOv9中的下采样模块,对不同的数据场景具有一定的可学习能力。

2024-05-15 21:00:55 380

原创 YOLOv9训练自己的数据集:最新最详细教程

此时我们安装的只是基础的CPU状态,如果需要使用GPU训练,需要在pytorch中找到适合自己的cuda版本的torch口令然后下载。(我用的原博主的,因为我自己选的有问题hhh)一般按照上面操作,环境就配好了。数据集百度网盘链接:链接:https://pan.baidu.com/s/1QktBnMcDdsQaT6JQXBjNPA。我这里租用的是云服务器,因此要配置一些环境(如果是拿自己电脑训练的话,就可以跳过环境配置)。新建my_data.yaml,内容如下:path改为自己的datasets位置。

2024-05-15 20:50:15 1408 1

原创 YOLOv9独家改进系列-可改变核卷积

一、改进点介绍AKConv是一种具有任意数量的参数和任意采样形状的可变卷积核,对不规则特征有更好的提取效果。论文速览::AKConv是2023年11月发表的一种可变卷积核,赋予卷积核任意数量的参数和任意采样形状,以解决具有固定样本形状和正方形的卷积核不能很好地适应不断变化的目标的问题点可以为网络开销和性能之间的权衡提供更丰富的选择。

2024-05-11 21:57:15 200

原创 opencv入门到精通——Canny边缘检测

目录理论OpenCV中的Canny Edge检测附加资源在本章中,我们将学习Canny边缘检测的概念OpenCV函数: cv.Canny()Canny Edge Detection是一种流行的边缘检测算法。它由John F. Canny发明1.这是一个多阶段算法,我们将经历每个阶段。2.降噪由于边缘检测容易受到图像中噪声的影响,因此第一步是使用5x5高斯滤波器消除图像中的噪声。我们已经在前面的章节中看到了这一点。3.查找图像的强度梯度然后使用Sobel核在水平和垂直方向上对平滑的图像进行滤波,以在水平方向(

2024-01-04 09:00:00 1061 4

原创 opencv入门到精通——图像梯度

黑色到白色的过渡被视为正斜率(具有正值),而白色到黑色的过渡被视为负斜率(具有负值)。kernel = \begin{bmatrix} 0 & 1 & 0 \ 1 & -4 & 1 \ 0 & 1 & 0 \end{bm下面的代码显示了单个图表中的所有算子。,则使用3x3 Scharr滤波器,比3x3 Sobel滤波器具有更好的结果。如果要检测两个边缘,更好的选择是将输出数据类型保留为更高的形式,例如。给出的图像的拉普拉斯图,它是每一阶导数通过Sobel算子计算。下面的代码显示了单个图表中的所有算子。

2024-01-03 20:28:36 1021

原创 【CVPR2023】使用轻量 ToF 传感器的单目密集SLAM的多模态神经辐射场

论文标题:Multi-Modal Neural Radiance Field for Monocular Dense SLAM with a Light-Weight ToF Sensor论文链接:https://openaccess.thecvf.com/content/ICCV2023/html/Liu_Multi-Modal_Neural_Radiance_Field_for_Monocular_Dense_SLAM_with_a_ICCV_2023_paper.html。

2024-01-03 20:23:45 1168

原创 python 中导出requirements.txt 的几种方法

注意:生成requirements.txt,pip freeze会将当前PC环境下所有的安装包都进行生成,再进行安装的时候会全部安装很多没有的包.此方法要注意。

2024-01-02 16:26:25 1265

原创 pycharm中Pyside2/QtDesigner安装和配置

PyQt5/QtDesigner安装和配置。

2024-01-02 16:22:36 963

原创 opencv入门到精通——形态学转换

因此,它会增加图像中的白色区域或增加前景对象的大小。原始图像中的一个像素(无论是1还是0)只有当内核下的所有像素都是1时才被认为是1,否则它就会被侵蚀(变成0)。结果是,根据内核的大小,边界附近的所有像素都会被丢弃。因此,前景物体的厚度或大小减小,或只是图像中的白色区域减小。它有助于去除小的白色噪声(正如我们在颜色空间章节中看到的),分离两个连接的对象等。在这一章当中, 我们将学习不同的形态学操作,例如侵蚀,膨胀,开运算,闭运算等。在这里,作为一个例子,我将使用一个5x5内核,它包含了所有的1。

2023-12-25 20:06:35 1508 5

yolov5-6.2 分类算法详解

数据集划分脚本

2023-06-01

相机标定之张正友标定法原理详解python版

python版本双目标定

2023-05-31

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除