- 博客(221)
- 资源 (3)
- 收藏
- 关注
原创 计算机视觉—3d点云数据基础
是深度点云处理的开山之作。包括了两个最常用的算法PointNetPointNet++第二种包括了基于卷积的一些方法信息。第三种包括了通过图构造的方法来处理点云之间的关系信息。构造关系学习特征提取加池化等等一些点云处理的方向。之后在根据研究的需要,具体描述PointNet和PointNet++两个点云处理算法。
2024-09-17 21:35:52 423
原创 CenterNet官方代码—目标检测模型推理部分解析与项目启动
CenterNet作为2019年CVPR推出的论文,论文中给出了官方代码所在的github仓库地址。。整个代码的代码量并不是特别大,从而导致了整个项目在启动和加载时或产生很多的错误。
2024-09-15 20:29:27 708
原创 Objects as Points基于中心点的目标检测方法CenterNet—CVPR2019
目前主流且最成功的目标检测方法效率低下,浪费计算资源。本文提出的方法将目标用一个中心点来表示,同时可以回归与中心点相关联的其他属性。简单,更快,更准确,COCO测试集上做到速度与精度的平衡。3D目标检测和人体姿态估计上,可以做到实时运行,且精度较高;添加一个深度的回归参数。
2024-09-13 22:08:19 417
原创 图卷积神经网络GNN(一)
对于图神经网络(GNN)来输入的数据是图。(解决输入数据不规则情况)研究涵盖:节点分类(nodeclassification)、边预测(linkprediction)、社群检测(community detection)、网络营销(viral marketing)、snap数据集是Jure等人不间断收集的网络数据集,极大地推动社交网络领域的发展整个GNN的任务整体上可以分为3种主要的任务组成。
2024-09-11 15:32:04 821
原创 Gmtracker_深度学习驱动的图匹配多目标跟踪项目启动与算法流程
说明:对于Gmtracker多目标跟踪算法中涉及到的QP或者是QAP等一些有关图匹配的问题,不做过多的说明只提供源代码中通过图网络的具体实现细节。
2024-09-10 16:31:48 1311
原创 Transformer(Attention is all you need)网络结构
输入的部分包括了两个部分Embedding 和 位置编码结合进行输入。
2024-09-09 19:40:39 535
原创 注意力与自注意力机制
将查询和键连结起来后输入到一个多层感知机(MLP)中, 感知机包含一个隐藏层,其隐藏单元数是一个超参数h。通过使用tanh作为激活函数,并且禁用偏置项。等价于将key和value合并起来后放入到一个隐藏大小为h输出大小为1的单隐藏层MLP。
2024-09-07 15:55:49 694
原创 Gmtracker安装中存在的问题
使用用服务器,在云服务器中使用conda环境 python = 3.6的版本环境.切换环境继续进行安装 python =3.7。GMtracker安装问题该如何解决?
2024-09-05 20:56:48 224
原创 ByteTrack多目标跟踪(二) YOLO V8+ByteTrack官方代码解析
整个算法流程中最为核心的方法:BYTETracker.update。使用跟踪方法在检测中通过回调的方式调用对应的目标函数。
2024-09-05 16:53:11 268
原创 多目标跟踪理论基础(二)
由于sort算法还是比较粗糙的追踪算法,当物体发生遮挡的时候,特别容易丢失自己的ID。而Deepsort算法在sort算法的基础上增加了和新轨迹的确认(confirmed)。Tracks分为确认态(confirmed),和不确认态(unconfirmed),新产生的Tracks是不确认态的;不确认态的Tracks必须要和Detections连续匹配一定的次数(默认是3)才可以转化成确认态。确认态的Tracks必须和Detections(默认70次),才会被删除。Deepsort的算法流程图如下所示。
2024-08-11 17:41:51 790
原创 多目标跟踪算法理论基础(一)
SORT是一种多目标跟踪算法,可以有效地关联目标,并提升跟踪的实时性。SORT的核心主要是卡尔曼滤波和匈牙利算法的结合版,可以达到较好的跟踪效果。在当时,追踪速度达到了260HZ,相比其他方法速度提升了20倍。Deepsort的前身是sort算法,sort算法的核心是卡尔曼滤波算法和匈牙利算法。卡尔曼滤波算法作用:该算法的主要作用就是当前的一系列运动变量去预测下一时刻的运动变量,但是第一次的检测结果用来初始化卡尔曼滤波的运动变量。
2024-08-11 11:13:42 1010
原创 目标跟踪那些事
目标跟踪和目标检测是计算机视觉中的两个重要概念,但它们的目的和方法是不同的。目标检测(object Detection):是指在图像或视频帧中识别并定位一个或多个感兴趣的目标对象的过程。目标跟踪(object Tracking):是指在连续地监测和定位一个或多个的过程。区别:跟踪与检测的区别Input:视频序列。
2024-08-04 18:19:50 1207
原创 YOLO v8目标检测(三)模型训练与正负样本匹配
事件包含的信息量大小(事件发生的难度有多大)。小概率事件,它发生的难度比较大,所以有较大的信息量大概率事件,它发生的难度比较小,所以有较小的信息量概率和信息量是负相关的。
2024-07-28 18:05:47 1161
原创 YOLO v8目标检测(二)—v8理论与模型推理
使用场景:在数据加载器加载数据的过程中会使用到数据增强的相关方法,来构造数据集。模型推理方法进行学习之前首先复习了解图像数据增强的相关方法和步骤。其中在v8的源代码中augment.py的源代码文件。它包含了几个用于数据增强的类和函数。BaseTransform 是一个基类,用于定义图像的变换操作。Compose 是一个组合多个变换操作的类。BaseMixTransform 是一个基类,用于定义图像混合的操作。Mosaic 是一个具体的混合操作类,用于将多个图像组合成一个马赛克图像。其中。
2024-07-27 17:06:14 571
原创 YOLO v8目标检测(一)—网络模型与构建
在backbone主干网络中主要包括了YOLOv8 继续采用 CSP (Cross Stage Partial networks)的设计理念,可以提高梯度流动并减少参数数量。YOLOv5中的C3模块在YOLOv8中被C2f模块所替代,这个变化是为了进一步的轻量化。C2f 模块融合了ELAN的设计思想head部分主要包括了(PAN+FPN)YOLOv8 保留了PAN 的思想,这是一种特征融合策略,用于结合不同层次的特征以改善性能。检测头的部分:使用了解耦头的思想。
2024-07-27 10:01:01 1174
原创 U版YOLO V8项目使用-Win11系统
根据上面提供的参考格式:我们使用项目中默认提供好了的coco128.yaml文件进行训练。(方便起见训练轮数设置为50batch设置为8进行训练)个人实验:我们在coco8数据集上进行实验验证集的过程。使用的命令行命令如下所示。我自己在训练的时候发现,在训练的过程中当训练到41轮的时候会关闭数据增强训练。使用coco128数据集和官网提供的命令模式进行训练。新版的项目会自己下载数据集以及需要的预训练模型。在官方文档中给出了两种模型评估方式。官方提供的三种常用的训练命令。带有参数的模型评估方式。
2024-07-20 12:13:35 949
原创 结构重参数化卷积
VGG网络是2014年由牛津大学著名研究组VGG (Visual Geometry Group) 提出的。在2014到2016年(ResNet提出之前),VGG网络可以说是当时最火并被广泛应用的Backbone。后面由于各种新的网络提出,论精度VGG比不上ResNet,论速度和参数数量VGG比不过MobileNet等轻量级网络,慢慢的VGG开始淡出人们的视线。
2024-07-15 19:00:42 910
原创 优化器算法
优点:算法简洁,当学习率取值恰当时,可以收敛到全局最优点(凸函数)或局部最优点(非凸函数)。缺点对超参数学习率比较敏感:过小导致收敛速度过慢,过大又越过极值点。学习率除了敏感,有时还会因其在迭代过程中保持不变,很容易造成算法被卡在鞍点的位置。在较平坦的区域,由于梯度接近于0,优化算法会因误判,在还未到达极值点时,就提前结束迭代,陷入局部极小值。之后的算法优化是从梯度方面和学习率方面对整个优化器算法进行优化。
2024-07-14 11:00:26 845
原创 我的创作纪念日
提示:你过去写得最好的一段代码是什么?提示:当前创作和你的工作、学习是什么样的关系。提示:可以和大家分享最初成为创作者的初心。提示:在创作的过程中都有哪些收获。提示:职业规划、创作规划等。
2024-07-08 18:10:27 237
原创 YOLO V7网络实现细节(2)—网络整体架构总结
YOLO v7网络架构的整体介绍同时,我们还针对不同的业务需求,使用基础模型进行模型缩放,得到不同类型的模型。对于YOLOv7,我们对颈部进行stack scaling,并使用提出的复合缩放方法对整个模型的深度和宽度进行缩放,并以此获得YOLOv7-X。
2024-07-07 17:05:45 1076
原创 Yolo v7网络实现细节(一)
YOLO v7网络架构的整体介绍同时,我们还针对不同的业务需求,使用基础模型进行模型缩放,得到不同类型的模型。对于YOLOv7,我们对颈部进行stack scaling,并使用提出的复合缩放方法对整个模型的深度和宽度进行缩放,并以此获得YOLOv7-X。
2024-07-06 19:04:11 1213
原创 YOLO V7项目使用
同样在使用yolo v7项目启动时也会和v5项目一样发生类似的报错信息。我第一次下载的项目使用的是github上下载的压缩包文件,经过解压之后导入的pycharm,在启动验证的时候缺少git相关的文件导致启动失败。安装GPU(CUDA)版本的torch,之后我们在执行训练模型的文件将整个YOLO v7项目启动失败(先卸载之前pip安装的cpu版本)YOLO v7中的拓展功能测试(关键点检测)提前手动下载所需要的yolov7-w6-pose.pt文件。这是我们默认使用的就是GPU的环境。
2024-07-05 21:21:23 1065
原创 YOLOv7论文解析: Trainable bag-of-freebies sets new state-of-the-art for real-time object detectors
YOLOv7的成就在5FPS到160FPS的范围内,在速度和精度上都超过了所有已知的物体检测器,在GPU V100上以30 FPS或更高的速度在所有已知 的实时物体检测器中具有最高的精度56.8%APYOLOv7-E6在速度和精度上优于基于transformer的检测器SWINL Cascade-Mask R-CNN基于卷积的检测器ConvNeXt XL级联掩码R-CNNYOLOv7优于。
2024-07-04 18:45:39 725
原创 Yolo v5实现细节(2)
在之前的yolo v3中我们使用的定位损失主要使用的是差值平方的形式,通过预测边界框的参数和真实边界框的参数来进行计算求解的。
2024-06-26 22:50:59 1073
原创 Yolo v5实现细节
在Neck部分另外一个不同点就是New CSP-PAN了,在YOLOv4中,Neck的PAN结构是没有引入CSP结构的,但在YOLOv5中作者在PAN结构中加入了CSP。详情见上面的网络结构图,每个C3模块里都含有CSP结构。
2024-06-25 11:38:07 756
原创 跑通并使用Yolo v5的源代码并进行训练—目标检测
yolo作为目标检测计算机视觉领域的核心网络模型,虽然到24年已经出到了v10的版本,但也很有必要对之前的核心版本v5版本进行进一步的学习。在学习yolo v5的时候因为缺少论文所以要从源代码入手来体验yolo v5之一经典的网络模型。
2024-06-21 18:14:13 793
原创 目标检测数据集与制作
PASCAL VOC挑战赛(ThePASCALVisualObjectClasses)是一个世界级的计算机视觉挑战赛,PASCAL全称:Pattern Analysis,Statical Modeling and Computational Learning,是一个由欧盟资助的网络组织。PASCALVOc挑战赛主要包括以下几类:图像分类(Object Classification);
2024-06-17 11:09:37 405
原创 目标检测算法SSD与FasterRCNN
SSD:( Single Shot MultiBox Detector)特点是在不同特征尺度上预测不同尺度的目标。
2024-06-16 18:02:18 1156
原创 门控循环单元GRU与长短期记忆网络LSTM
问题提出:对于第一个词元的影响至关重要。我们希望有某些机制能够在一个记忆元里存储重要的早期信息。如果没有这样的机制,我们将不得不给这个观测值指定一个非常大的梯度, 因为它会影响所有后续的观测值。
2024-06-15 09:58:07 1065
原创 Opencv图像梯度计算
可以理解为是做边缘检测的一种方法。首先说明自己对图像梯度的简单理解:简单理解就是图像的颜色发生变化的边界区域在X方向和Y方向上的梯度值 Gx GyGx−1−2−1000121∗AandGy−101−202−101∗A(1,0)代表X轴的方向 (0,1)代表的是Y轴的方向得到最终图像的处理效果。
2024-06-13 17:26:54 814
原创 YOLO系列理论解读 v1 v2 v3
我们将输入的448x448像素的三通道图片,经过设计的网络之后可以得到的是7x7x30的输出特征图。因为论文中提到了B=2一个网格会给出两个边界框的预测值,共7x7=49个划分之后的网格。
2024-06-13 17:25:21 1317
原创 循环神经网络RNN
RNN是针对序列数据而生的神经网络结构,核心在于循环使用网络层参数,避免时间步增大带来的参数激增,并引入**隐藏状态(Hidden State)**用于记录历史信息,有效的处理数据的前后关联性。
2024-06-12 16:44:41 1119
原创 Opencv图像处理
src: 输入图,只能输入单通道图像,通常来说为灰度图dst: 输出图thresh: 阈值maxval: 当像素值超过了阈值(或者小于阈值,根据type来决定),所赋予的值type:二值化操作的类型,包含以下5种类型: cv2.THRESH_BINARY;cv2.THRESH_BINARY 超过阈值部分取maxval(最大值),否则取0cv2.THRESH_BINARY_INV THRESH_BINARY的反转。
2024-06-10 17:42:38 1347 1
原创 FCN-语义分割中的全卷积网络
卷积网络是一种强大的视觉模型,它可以产生层次化特征。我们展示了卷积网络这种端到端、像素对像素的训练模型,超过了语义分割的最新技术水平。本文的关键点是构建了“全卷积”神经网络,它是一种输入尺寸任意的端对端神经网络,同时网络有着高效的学习和推理过程。我们定义并详细说明了全卷积神经网络的结构,解释它们在像素位置密集型预测任务中的应用,并得出与先前模型之间的连接。
2024-06-09 16:14:06 1049
原创 计算机视觉图像处理理论基础
数字图像:又称数码图像或数位图像,是二维图像用有限数字数值像素的表示,由数组或矩阵表示。数字图像可以理解为一个二维函数f(x,y),其中×和y是空间(平面)坐标,而在任意坐标处的幅值f称为图像在该点处的强度或灰度。图像处理主要研究二维图像,处理一个图像或一组图像之间的相互转换的过程,包括图像滤波,图像识别,图像分割等问题计算机视觉主要研究映射到单幅或多幅图像上的三维场景从图像中提取抽象的语义信息,实现图像理解是计算机视觉的终极目标。
2024-05-30 22:10:00 667
原创 目标检测基础初步学习
在动手学习深度学习中对目标检测任务有如下的描述。图像分类任务中,我们假设图像中只有一个主要物体对象,我们只关注如何识别其类别。然而,很多时候图像里有多个我们感兴趣的目标,我们不仅想知道它们的类别,还想得到它们在图像中的具体位置。在计算机视觉里,我们将这类任务称为目标检测(object detection)或目标识别(object recognition)通过边界框给出了物体的相关位置信息我们通常使用边界框(bounding box)来描述对象的空间位置。边界框是矩形的,由矩形左上角的以及右下角的。
2024-05-28 22:48:32 987
原创 ResNet论文解读—Residual Learning Deep for lmage Recognition(2016)
提出问题:深度卷积网络难训练本文方法:残差学习框架可以让深层网络更容易训练本文优点:ResNet易优化,并随着层数增加精度也能提升本文成果:ResNet比VGG深8倍,但是计算复杂度更低,在ILSVRC-2015获得3.57%的top-error本文其它工作:CIFAR-10上训练1000层的ResNet本文其它成果:在coco目标检测任务中提升28%的精度,并基于ResNet夺得ILSVRC的检测、定位COCO的检测和分割四大任务的冠军。
2024-05-28 10:31:12 1100
智能小车摄像头内嵌的代码含义
2022-08-18
TA创建的收藏夹 TA关注的收藏夹
TA关注的人