- 博客(145)
- 收藏
- 关注
原创 12. c++调用类对象和结构体
这里主要了解如何引用类对象和this的含义,具体可以看。这里主要了解如何引用类对象和this的含义,具体可以看。
2025-02-12 14:35:02
137
原创 2.基于transformer的语言模型(python)
该模型看了别人的博客,是谁的忘记了,这里只是作为笔记用(transform和注意力机制的原理后续有时间了会结合代码详细解释,在这里先上训练和预测代码)。
2025-02-11 14:01:36
98
原创 1.Deepseekv3论文的部分解释
1. DeepSeek-V3是一个强大的专家混合 (MoE) 语言模型,总共有 671B 个参数,每个令牌激活了 37B。2. DeepSeek-V3 采用了多头潜在注意力 (MLA) 和 DeepSeekMoE 架构,实现了高效的推理和具有成本效益的训练。3. DeepSeek-V3 开创了一种用于负载均衡的辅助无损策略,目的是最大限度地减少鼓励负载均衡对模型性能的不利影响。并设定了多标记预测训练目标以获得更强的评估基准的整体性能。
2025-02-07 17:32:01
721
原创 4.寻找两个正序数组的中位数
合并数组 = [1,2,3,4] ,中位数 (2 + 3) / 2 = 2.5。合并数组 = [1,2,3] ,中位数 2。请你找出并返回这两个正序数组的。的正序(从小到大)数组。算法的时间复杂度应该为。
2025-02-06 18:00:07
124
原创 11.八叉树的创建
(Octree)是一种空间分割数据结构,用于在三维空间中对对象进行高效的存储和查询。的扩展,将三维空间划分为八个相等大小的子立方体(八个子节点),每个。可以进一步细分为八个子节点,以此类推。
2025-02-06 17:05:28
194
原创 3.无重复字的最长字串(python和c++)
(2)如果地产dic中有s[i],说明temp中有s[i],这时候对temp进行从头遍历删除temp的元素和dic的键,直到删除到遇到s[i]这个元素和dic的键(遍历的是temp而不是dic),并刚好将该元素删除为止.(1)比较temp的长度与outs的大小,若outs小于temp的长度,则outs = temp的长度;,请你找出其中不含有重复字符的。请注意,你的答案必须是。因为无重复字符的最长子串是。因为无重复字符的最长子串是。因为无重复字符的最长子串是。,所以其长度为 3。,所以其长度为 3。
2025-01-24 11:11:44
339
原创 1.两数之和(leecode刷题)
简单给定一个整数数组nums和一个整数目标值target,请你在该数组中找出target的那整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案,并且你不能使用两次相同的元素。你可以按任意顺序返回答案。[0,1]因为 nums[0] + nums[1] == 9 ,返回 [0, 1]。[1,2][0,1]你可以想出一个时间复杂度小于O(n2)的算法吗?
2025-01-21 17:24:21
255
原创 11. yolov8的训练和测试
其实,我们就是要制作这种数据集作为训练的数据集。表示没有测到目标,这里需要作具体的修改。这就是训练用的图片。在第一个文件夹进入test文件夹如下,至此,训练和测试的大概步骤就完成了。再进入train文件夹有。进入train文件夹有。
2025-01-17 17:18:54
365
原创 5. 推荐算法的最基础和最直观的认识
其实,推荐算法就是以此为基础的.推荐算法用到了余弦求相似度,大家可以想想余弦相似度与本文的向量相乘求相似的有什么区别(其实向量乘积就是余弦的向量积的分子),余弦多个分母是为了将不同属性的计量进行归一化,这样才有可比性,否则就没有意义,而本文将不同的属性用了相同的计量方式(0或者1),并且加了权重,所以不需要归一化,即不需要余弦向量积的分母就能达到余弦相似化的效果。我们知道,人的性别一般分为男或者女。大家发现规律了没有,其实累计的值为2的表示满足工厂A的招工要求,显然,满足招工要求的人是:王、李、杨。
2025-01-17 15:21:56
641
原创 9.7 visual studio 搭建yolov8的onnx的预测(c++)
该代码做了部分的修改,最后调试成功。做完以上步骤后,就可以进行预测了。
2025-01-15 11:01:12
672
原创 9.5 yolov5训练的pth文件转为pt文件(python)和 visualStudio 2022 加载 pt文件(c++)
以上代码中已经作了具体的注释,YoloBody是yolov5的网络结构。
2025-01-10 15:53:01
224
原创 9.4 visualStudio 2022 配置 cuda 和 torch (c++)
在【附加依赖项】中添加D:\libtorch-win-shared-with-deps-1.8.0+cu111\libtorch\lib文件夹下所有的 *.lib文件。(查看环境变量改变CUDA_PATH_V11_7,v11_7指的安装的。完成上述配置后,在计算机【环境变量–系统变量】中添加。的博客,作为笔记用。首先,创建一个新的项目和一个新的cpp文件。的博客,作为笔记用,本人搭建后可以运行。打开项目属性,在【附加包含目录】中添加。在属性管理器中【添加新项目属性表】至此,torch配置完成。
2025-01-08 18:29:14
1084
原创 9.3 opencv对图片的分割处理(c++)
首先我们根据博客搭建opencv环境,然后对图片进行处理,在这里,对图片的分割没有用opencv里的函数,而是根据自己的理解用循环和做差写的函数,分割的效果和opencv的相似。
2025-01-08 14:03:46
475
原创 10. VisualStudio2022 配置点云库 PCL1.14.0
本文看了和的博客, 大多内容相似,后续由于环境配置问题,有少许的变动。主要是作为笔记,方便自己以后查找。
2025-01-07 12:41:24
809
原创 9.2 c++搭建opencv环境
进入到以下链接:https://opencv.org/releases/ , 点击Windows,即可下载。接下来,点击链接器,点击输入,点击附加依赖项,点击右边的下拉三角形,点击编辑,将如下目录输入即可,点击VC ++ 目录, 点击包含目录,点击右边的下拉三角形,点击编辑,将如下目录输入即可,点击确认,然后,点击库目录,点击右边的下拉三角形,点击编辑,将如下目录输入即可,这表示,VC++ 会从此opencv 算法目录调用。的博客,自己搭建了两遍,中间只是轻微的改变,点击应用,点击确认,等待配置完成。
2025-01-06 18:06:56
464
原创 8. 根据形态提高精度
倾角传感器在静态下的精度可以达到±0.01度,但在动态下的误差在±0.5度,比如在动态下用雷达测量距离1000mm的物体,在静态下其精度是±1mm,但在动态下精度为±10mm,而这个误差是倾角带来的,雷达的精度是±0.6mm.在这里用形态校正倾角的精度,使雷达测1000mm距离的物体的精度在±2mm内。首先,在标定实验平台上,使目标物体到雷达的竖向距离和横向距离都为1000mm.在静态下在不同的角度经过补偿倾角后用雷达测量目标物的距离都在1000±1mm内,这里不做过多的阐述。
2024-11-26 16:46:51
306
原创 6. 自己写的sigmoid、BN、求和和分割等函数
通过跑torch模块nn.conv2d的代码时发现对图片的处理是随机的,所以在这里自己写代码验证了部分模块的图片处理结果。前面是原图,后面是sigmoid函数处理后再恢复的图片,结果相似,说明sigmoid函数基本上没有修改原图片。前面是原图,后面是BN函数处理后再恢复的图片,结果有点区别,后面的图片有两横把图片分成了3部分。conv函数一般求数据的:和、差、均值等。1.sigmoid函数处理图片的结果。2.BN对图片的标准化处理。3. conv的图片处理。
2024-10-12 14:33:11
267
原创 7.2 简单的图片标注为xml代码和图片增强代码(python)
yolov5已经普及常用,最常规的步骤就是获取数据(图片)、标注图片(标注xml文件)、对标注的数据增强(椒盐模糊、高斯模糊、翻转等) 、训练数据。在这里,假如客户新增一个目标,需要客户自己标注数据、增强数据和训练数据不合理,我们可以希望实现这样一个场景:建立一个界面,打开界面后:1.客户对新的产品从不同的角度拍七八张照片;2.客户在界面上对七八张图片的目标用长方形画框;3.界面系统自动对这几张标注好的图片进行数据扩增;4.将扩增后的数据自动移入训练的文件夹;5.训练模型。
2024-09-12 15:02:42
1336
2
原创 2. c#从不同cs的文件调用函数
以上文件调用了ans文件的outputs函数和txt_1文件的outputs函数。以上就是不同cs文件的函数调用,经过测试运行结果正确无误。2. Program.cs文件的主函数如下。
2024-09-09 15:20:56
998
原创 1. C#的windows窗体应用,画折线图
本文基本上看了博客,该博客写的很详细,在这里作为比较复述和实现了一次。如何在C#窗体中使用实时图表,这里需要用到Chart控件。Chart控件,目前仅在.net framework下才有,.net core下暂时还没有。所以本文针对的环境是.net framework下的winform窗体。如上图,在工具箱中找到“数据”->“Chart”控件。请注意,在“所有Windows窗体”那里,是找不到Chart控件的。
2024-09-03 15:52:47
1510
原创 9. k_d tree原理及python代码实现
k_d tree其实就是多维(空间二叉树的一种特殊情况), 里面储存着k维的点的信息,是对k维空间进行划分的一种数据结构。本文看了博客,这篇博客写的很详细,只是这里对这篇博客进行了扩展。在点云操作中,常常需要从大量点云中找到距离输入点最近的点,如果使用线性搜索,逐个判断与输入点的距离,那么搜寻耗时将会与点云规模呈线性上升趋势,时间复杂度为O ( N ) O(N)O(N)。显然这不是我们想看到的,在数据结构与算法中,对常用的搜索方法是为O(logN),它本质上是构建一棵二叉搜索树,以空间换取时间。
2024-08-26 16:25:37
1288
原创 11. 统计(均值、方差、正态分布)和聚类(接近kmeans的聚类)分类(python和c++代码)
以下代码的每个函数功能都做了注释,分别用python和c++代码做了具体的实现,不是最终效果,后续会继续优化。以下代码中,python代码在每个步骤处理完数据后都画了散点图显示了处理后的数据效果,c++代码是从python代码翻译过来的,没有显示数据处理后的散点图效果。
2024-07-30 17:49:18
513
1
原创 3.相机标定原理及代码实现(opencv)
在这里我们用pycharm进行相机标定,用到了opencv库,所以在标定前需要安装好pycharm和opencv库。相机参数的确定过程就叫做相机标定。1.1 四大坐标系及关系。(1)像素坐标系()
2024-07-10 11:48:22
2135
原创 8.点云的粗配准和精配准
点云拼接是任意位置的点云的重叠部分相互配准的过程,点云配准分为刚体和非刚体(只存在空间旋转平移变换的配准问题称为刚体配准,存在缩放、变形、仿射变换的配准问题称为非刚体配准),这里主要介绍刚体点云配准。其中,基于局部特征描述的方法是通过提取源点云与目标点云的邻域几何特征,通过几何特征快速确定二者之间的点对的对应关系,再计算此关系进而获得变换矩阵。如上图,将两片点云的重叠部分进行配准,两片点云组合成一片更为完整的点云即实现了两片点云的拼接。配准效果如上图,左边为两片兔子的外部轮廓的点云的粗配准,右边为精配准。
2024-07-06 14:02:11
3045
原创 5.点云法向量的计算(代码)
首先,读取点云数据并且处理点云数据,我下载的一个点云数据文件不是pcd文件,我首先读取了点云数据,并将其处理为array数据,该数据的shape为(641, 3),表示有641个xyz的数据,后面的代码和前面博文的相同(该代码用到了pca主成分分析原理,也很好理解,在前面博文有解释,要单独理解主成分分析原理,可以看我的另一篇博文。的文章,内容基本上参考了该博文,在这里写只是为了记笔记,没有要抄袭的意思,如果要更详细的了解,可以去看该博文。
2024-06-20 17:51:19
576
原创 2 图片的分割处理和亚像素精度处理(c++和python)
本文的图片处理分为图片分割、图像的亚像素坐标处理。亚像素处理的原理可以看论文,该论文的详解及c++的代码实现可以看博文。下面的内容很多来自以上博文的内容,我只是对部分代码做了稍微的修改。
2024-06-14 14:40:57
1568
1
原创 1.双目相机计算目标物体的距离
P在相机C1中的成像点是P1,在相机C2中的成像点是P2,但是P的位置事先是未知的。如上图所示,如果左右两个相机很理想,那么它们拍到的物体在同一平面上,并且在图片中的高度也相等(x值相等),那么当我们知道目标在C1图片中的位置坐标时,就可以根据C1图片中的x值去C2图片中找目标物体了。我们的目标是:对于左图的P1点,寻找它在右图中的对应点P2,这样就能确定P点的空间位置,也就是我们想要的空间物体和相机的距离(深度)。: 以双目相机的中心点为坐标原点的水平坐标(距离坐标): 两个相机的投影中心的连线的距离。
2024-05-24 11:49:26
1357
原创 3.yolov5训练前的图片处理详解(python)
其实,yolov5模型可以分为深度网络、数据处理(图片处理)、损失函数、优化器选择、训练和预测及部分构成,相信大家对训练和预测的代码比较熟悉。前面两章我们根据代码和结构图了解了yolov5的深度网络,接下来看数据处理的部分。
2024-05-08 16:20:31
1814
8
原创 2.yolobody的两次上采样和两次下次下采样网络结构
,是下图最中间Neck和右边Head的网络结构,该结构输出的是1X45X20X20,1X45X40X40和1X45X80X80三个数据(其中45=3*(num_classes+5))。yolobody的网络结构如下图所示(该图来自别的博客。20,20表示数组的大小为20X20。1表示batchsize;
2024-04-25 15:46:15
324
2
原创 7.unet网络模型的简单实现(python)
本文属于 Pytorch 深度学习语义分割系列教程。Pytorch 的基本使用语义分割算法讲解点击查看本文主要讲解了训练模型的三个步骤:数据加载、模型选择、算法选择。这是一个简单的例子,训练正常的视觉任务,要复杂很多。比如:在训练模型的时候,需要根据模型在验证集上的准确率选择保存哪个模型;需要支持tensorboard方便我们观察loss收敛情况等等。
2024-04-25 12:29:32
1487
原创 6.Vgg16--CNN经典网络模型详解(pytorch实现)
3.下载完后写一个spile_data.py文件,将数据集进行分类。4.再写一个train.py文件,用来训练模型。
2024-04-24 17:55:24
611
原创 5.Resnet50网络模型的实现
3.下载完后写一个spile_data.py文件,将数据集进行分类。4.再写一个train.py文件,用来训练模型。
2024-04-24 16:14:31
305
原创 4.Mobilenetv2网络的简单目标识别的实现
3.下载完后写一个spile_data.py文件,将数据集进行分类。4.再写一个train.py文件,用来训练模型。5.写一个预测的predict.py文件。
2024-04-24 14:47:39
280
原创 4.点云数据的配准
官方教程——intmains() {// 定义输入和输出点云// 随机填充无序点云++i) {++i)// 在点云上执行简单的刚性变换,将cloud_out中的x平移0.7f米,然后再次输出数据值。++i)// 打印这些点++i)// 创建IterativeClosestPoint的实例// setInputSource将cloud_in作为输入点云// setInputTarget将平移后的cloud_out作为目标点云。
2024-04-22 16:31:07
1911
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人