- 博客(207)
- 收藏
- 关注
原创 python面向对象(含多继承讲解)【持续更新中......】
装饰器本质上是一个接受函数作为参数并返回一个新函数的高阶函数。它遵循Python的"函数是一等公民"原则,可以被赋值、作为参数传递和作为返回值。
2025-08-13 16:01:21
505
原创 我的2025年leetcode刷题笔记【持续更新中。。。】
输入:nums1 = [1,2,3,0,0,0], m = 3, nums2 = [2,5,6], n = 3。合并结果是 [1,2,2,3,5,6] ,其中斜体加粗标注的为 nums1 中的元素。输入:nums1 = [0], m = 0, nums2 = [1], n = 1。输入:nums1 = [1], m = 1, nums2 = [], n = 0。解释:需要合并 [1,2,3] 和 [2,5,6]。解释:需要合并的数组是 [] 和 [1]。输出:[1,2,2,3,5,6]
2025-02-09 12:11:53
522
原创 Torch知识点总结【持续更新中......】
1、torch.no_grad上一个上下文管理器,在你确定不需要调用Tensor.backward()时可以用torch.no_grad来屏蔽梯度计算;2、在被torch.no_grad管控下计算得到的tensor,它的requires_grad就是False;
2022-09-07 15:02:24
1865
2
原创 OpenCV、PIL知识点日常总结,Bug总结【持续更新......】
1、如果图片是中文路径,则在cv2.imdecode中使用np.fromfile,如果是英文路径则使用cv2.imread()2、opencv中的im.shape:(1080, 1920, 3),1080是height,1920是width,3是通道,2、im.size=(1920, 1080) ,1920是width,1080是height。1、Image打开图片使用的内部方法open;3、使用plt.imshow()方法显示图片,3、暂时没使用过im.size。
2022-09-02 19:59:53
2979
2
原创 小白学ROS的学习笔记【基础+详细】
每个传感器对应一个特定的模块,每个执行器也对应一个特定的模块,每一个算法也对应一个特定的模块,就像搭乐高一样,ROS中每一个launch文件相当于乐高的一栋房子,ROS中的每一个节点相当于乐高中的砖块,这些乐高模块可以运行在一台独立的计算机上面,每一个独立的模块可以由独立的人来开发,编程语言也可以不一样,下面做一个类比,安卓手机如何与单片机进行数据传输呢?安卓手机与单片机通过蓝牙进行数据传输,当安卓手机上的APP同样有蓝牙接发功能,也可以与单片机进行数据交互。机器人通过串口与单片机连接后,通过ROS节点发
2025-12-12 14:55:18
811
原创 WSL2 中将 Ubuntu 20.04 升级到 22.04 的详细步骤
升级前建议先备份重要文件,以防万一。应该显示 Ubuntu 22.04。然后重新打开 Ubuntu。
2025-11-25 13:45:28
605
原创 Lanelet2 OSM数据格式详解
Lanelet2使用基于OSM(OpenStreetMap)的XML格式来表示高精度地图。该格式采用分层结构,由三个基本元素构成:Node(节点)、Way(路径)和Relation(关系)。一、基础元素1.1 Node(节点)Node是最基本的元素,表示地图中的一个三维坐标点。关键属性: 唯一标识符: 纬度坐标(WGS84): 经度坐标(WGS84): 可见性标志: 版本号高度信息节点的高度信息可以通过z坐标表示(假设在x-y平面上布局)高度通常相对于WGS84椭球体可以采
2025-11-13 16:35:57
467
原创 华测CGI-430驱动使用说明
设置的协议总输出带宽大于串口波特率最大带宽,则会造成数据延时现象(接收到的数据是几秒之前的数据内容)。由于串口的带宽很有限,不需要的协议关闭,如需要多条协议,计算串口带宽与协议频率关系后是当选择协议输出频率。可以处理高频率的数据输入,如需要更高频率协议输出可以修改频率,但串口的带宽及缓冲区有限,如果。输出的混合协议数据(华测CGI系列自定义协议,NMEA协议),对混合数据进行分类,并发布到。获取到所需的协议数据后便会把解析后的内容发布到对应的话题中。中的时间戳使用的是原始二进制协议数据中的。
2025-09-17 15:35:20
1055
原创 Apollo定位、路径搜索、发布参考线/路径代码解析学习中【详细】
这个代码实现了Apollo自动驾驶系统中的参考线提供器(ReferenceLineProvider),主要负责为规划模块生成和管理参考线(Reference Line)。参考线是车辆行驶的理想路径,用于后续的轨迹规划。这是Apollo自动驾驶系统中的参考线提供者(ReferenceLineProvider)实现文件。参考线是自动驾驶规划模块的核心组件,为车辆提供平滑可跟踪的行驶路径。// ... 其他using声明定义命名空间和类型别名,简化代码书写。: 包含路由请求、目标点等规划命令。
2025-09-10 10:13:28
786
原创 YoloV7的剪枝和蒸馏【消融实验】
这个数据集类别为10类,模型:YoloV7,backbone为YoloV7-tiny,大小为12.3M,证明YoloV7比Centernet强,模型test效果如下,去除最后3类,Precision为:95.97%,recall为:92.35%,这个数据集类别为10类,模型:CenterNet,backbone:MobilenetV2。模型:CenterNet,backbone:MobilenetV2。1、使用slim进行剪枝,实验失败,数据集:自己采集的物品遗留数据集,再使用slim进行剪枝,
2025-09-05 15:35:14
545
原创 DDPM代码讲解【详细!!!】
左图是Transformer的Positional Embedding,行索引代表第几个单词,列索引代表每个单词的特征向量,右图是DDPM的Positional Embedding,DDPM的Positional Embedding和Transformer的Positional Embedding的。另一个区别是DDPM的Positional Embedding并没有按照奇数位和偶数位进行拼接,而是按照前后的sin和cos进行拼接的,虽然拼接方式不同,但是最终的效果是一样的,
2025-09-05 15:34:03
639
原创 卡尔曼滤波与deepsort【详解】
阈值就相当于一个门,由于匹配会尽可能多,有时候差异太大的时候,那就别匹配了,会设置成一个比较大的数,(T2,P1)(T1,P2)(T3,P3)分配时代价最小,也就是说Task2分配给Person1,Task1分配给Person2,Task3分配给Person3,每个track都要预测下一时刻的状态,并基于检测到的结果来修正(匀速,线性,咱们追踪通常都是一帧一帧处理的),F是状态转移矩阵,如下所示,线的数量为2,小于3,进入下一步,没被覆盖的最小元素是5,没被覆盖的行(第一和第二行)减去5;
2025-09-05 15:32:38
987
原创 python日志中的logging.basicConfig和logging.getLogger
【代码】python日志中的logging.basicConfig和logging.getLogger。
2025-08-12 17:23:18
352
3
原创 电线杆距离居民区的安全距离【重要!!!】
中国大陆地区10kV架空电线距居民住宅需要满足(裸导线)和的国家强制标准。根据现行法规,10kV系统的电磁辐射水平极低,对居民健康影响可忽略不计,但购房者仍需重点关注实际距离测量、合同披露条款和未来规划变更等关键问题。
2025-07-23 09:54:01
3066
1
原创 装修学习【持续】
1、交房时,开放商需要开具《三书一证一表》,即住宅质量保证书,住宅使用说明书,建筑工程质量认定书,房地产开发建设项目竣工综合验收合格证,竣工验收备案表,3、设计师专业软件:CAD,3D MAX,2、非专业人士设计软件:酷家乐,三维家,
2025-06-16 14:40:49
328
原创 TensorRT【详解】
参考:1、TensorRT Docker pytorch版本讲解:https://docs.nvidia.com/deeplearning/frameworks/pytorch-release-notes/rel-24-11.html#rel-24-11
2025-02-11 19:12:17
260
1
原创 使用gdb调试python程序
当 Python 代码调用底层 C 扩展(例如,numpy 或 torch 等)时,GDB 可以帮助你跟踪到 C 扩展的代码。如果 Python 崩溃或抛出错误,你可以使用 GDB 跟踪并分析调用栈,找出问题发生的底层 C/C++ 代码。通过 GDB 调试 Python 代码时,你可以设置断点、查看栈帧、分析崩溃,并跟踪底层的 C/C++ 代码。GDB 主要用于调试 C/C++ 代码,但也可以调试 Python 代码,特别是在与 C 扩展交互时。示例:调试 Python C 扩展(例如,PyTorch)
2025-01-11 15:53:21
1412
原创 Ubuntu20.04安装cuda11.8和cudnn,以及TenserRT
我下载的cudnn安装包文件是cudnn-11.1-linux-x64-v8.0.4.30.solitairetheme8,如何根据这个安装包进行安装cudnn呢?将文件复制到 CUDA 安装目录,假设 CUDA 11.1 安装在 /usr/local/cuda-11.1,使用以下命令将文件复制到相应目录,的步骤一样,但是该博文没有cudnn验证命令,所以这里我给出了验证cudnn版本的有效命令,命令如下,,但是我使用该博文的设置环境变量的命令时没有生效,下面我给出有效设置环境变量的命令,其他步骤不变,
2024-11-12 14:26:42
2486
原创 使用人体关键点驱动FBX格式虚拟人原理【详解】
1、标准化向量: 将向量 A 和 B 标准化为单位向量 uA 和 uB。2、计算点积和叉积: 获取向量 uA 和 uB 之间的夹角信息(余弦值和正弦值)。3、处理数值稳定性: 限制点积值在 [-1, 1] 范围内,确保计算的准确性。
2024-10-14 17:44:57
1531
原创 相机坐标系和世界坐标系的转换以及图像坐标系和像素坐标系的转换【详解】
什么是相机标定?空间物体表面某点的三维几何位置与其在图像中对应点之间的相互关系,需要建立相机成像的几何模型这些几何模型参数就是相机参数这个求解参数的过程就称之为相机标定(或摄像机标定)什么是世界坐标系由于摄像机与被拍摄物体可以放置在环境中任意位置,这样就需要来表示摄像机和被摄物体的位置,这个在环境中建立一个坐标系,坐标系就成为世界坐标系什么是相机坐标系也是一个三维直角坐标系,原点位于镜头光心处,x、y轴分别与相面的两边平行,z轴为镜头光轴,与像平面垂直,如下图所示为啥要把世界坐标系变到相机坐标系。
2024-09-29 15:49:50
6240
1
原创 数字人模型收藏的链接【计算机图形学之数字人驱动】
文章目录1、FBX格式的数字人/虚拟人模型链接:https://www.mixamo.com/#/?page=3&type=Character
2024-09-13 09:16:00
514
原创 Vision Transformer (ViT) + 代码【详解】
虽然 Transformer 架构已成为自然语言处理任务的事实标准,但它在计算机视觉领域的应用仍然有限。在 Vision 中,注意力要么与卷积网络结合使用,要么用于替换卷积网络的某些组件,同时保持其整体结构不变。我们表明,这种对 CNN 的依赖是不必要的,直接应用于图像块序列的纯 Transformer 可以在图像分类任务中表现良好。
2024-09-03 17:01:59
5766
3
原创 Self Attention(自注意力机制) | Multi-Head Attention【详解】
attention和推荐算法具有相似性,推荐的机制大致如下:在搜索框输入商品名称键盘,后台会根据你输入的商品名称和商品的标签或title进行匹配,你输入的商品名称为query,商品的标签或title为key,query和key做计算后为相似度,后台会根据商品的一些特性,比如销量,好评度来进行商品排序,特性被称为value,相似度与value做计算后为总分。计算,得到的 q 和 k 的矩阵的维度都是 1x2,v 矩阵的维度是 1x3,每组的 q 乘以 k 的转置的维度是 1x1的,再除以。
2024-08-27 16:22:01
1425
原创 成功解决:RuntimeError: CUDA error: no kernel image is available for execution on the device
安装的 PyTorch 版本和 CUDA 版本不兼容。可以重新安装与系统上 CUDA 版本匹配的 PyTorch 版本。CUDA 版本与 GPU 驱动程序或 PyTorch 安装的 CUDA 编译版本不兼容。安装完成后,就可以完美解决这个Bug!
2024-08-23 09:44:21
5341
原创 Mediapipe holistic pose 以及 blazepose 的前端开发
1、blazepose:https://github.com/tensorflow/tfjs-models/tree/master/pose-detection/src/blazepose_mediapipe
2024-08-21 13:38:08
437
原创 DDPM | 扩散模型代码详解【较为详细细致!!!】
左图是Transformer的Positional Embedding,行索引代表第几个单词,列索引代表每个单词的特征向量,右图是DDPM的Positional Embedding,DDPM的Positional Embedding和Transformer的Positional Embedding的。另一个区别是DDPM的Positional Embedding并没有按照奇数位和偶数位进行拼接,而是按照前后的sin和cos进行拼接的,虽然拼接方式不同,但是最终的效果是一样的。这是下采样模块的解释,
2024-08-19 17:31:15
5259
4
原创 Positional Encoding | 位置编码【详解】
transformer的作者刚开始说固定的位置编码和可学习的位置编码的效果是差不多的,后来证明固定的位置编码没有太大的必要,还不如省事直接使用可学习的位置编码,如下图,设置token的数量为10,token的特征向量长度为128,偶数项和奇数项的位置编码公式如下图所示,代码中,token_num是句子中的单词数量,embed_dim表示每个单词的特征向量长度,将对应位置的位置编码直接加在输入的单词上,如下图中的最后一行,为什么 attention 并不能赋予 token 位置信息?
2024-08-14 15:35:56
2798
1
原创 pip如何快速安装包 / install packet
2、需要注意的是,如果在pip中下载安装比较慢可以换个源,可以到用户文件夹下,创建一个pip文件夹,然后在pip文件夹里创建一个txt文件。1、在后面加-i https://mirrors.aliyun.com//pypi//simple。
2024-05-23 17:21:54
580
原创 facenet人脸检测+人脸识别+性别识别+表情识别+年龄识别的C++部署
TAO工具包基于TensorFlow和PyTorch构建,采用了迁移学习的技术,可以将用户自己的模型或预训练模型与实际或合成数据进行适配,并针对目标平台进行推理吞吐量的优化,从而使整个训练过程变得更加简单、高效。TAO工具包的使用不需要专业的人工智能知识或大量的训练数据集,因此,它可以帮助更多的人轻松进入深度学习的领域,快速实现各种应用场景。运行环境:Tensorflow。运行环境:TensorRT。运行环境:TensorRT。运行环境:TensorRT。运行环境:TensorRT。
2024-04-16 23:12:51
2250
3
原创 YOLOV5检测+追踪使用deepstream部署(c++版)
DeepStream是一个基于NVIDIA GPU和TensorRT的开源视频分析框架。它提供了一个端到端的、可扩展的平台,可以处理多个视频和图像流,并支持实时的人脸识别、车辆识别、物体检测和跟踪、行为分析等视觉分析任务。DeepStream可以通过在不同的节点上进行分布式部署来实现高吞吐量和低延迟的处理,从而满足各种应用场景的需求,如智能城市、智能交通、工业自动化等。Deepstream稳定高效的读流和推流能力;Deepstream内置的目标追踪算法(deepsort等)
2024-04-16 15:25:35
4899
6
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅