
深度学习
文章平均质量分 61
全息数据
用数据拟合世界。
展开
-
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 · 188 阅读 · 0 评论 -
使用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 · 891 阅读 · 0 评论 -
Python包中__init__.py文件的作用和用法
1、原创 2024-12-23 11:39:47 · 243 阅读 · 0 评论 -
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 · 1810 阅读 · 0 评论 -
使用人体关键点驱动FBX格式虚拟人原理【详解】
1、标准化向量: 将向量 A 和 B 标准化为单位向量 uA 和 uB。2、计算点积和叉积: 获取向量 uA 和 uB 之间的夹角信息(余弦值和正弦值)。3、处理数值稳定性: 限制点积值在 [-1, 1] 范围内,确保计算的准确性。原创 2024-10-14 17:44:57 · 1110 阅读 · 0 评论 -
相机坐标系和世界坐标系的转换以及图像坐标系和像素坐标系的转换【详解】
什么是相机标定?空间物体表面某点的三维几何位置与其在图像中对应点之间的相互关系,需要建立相机成像的几何模型这些几何模型参数就是相机参数这个求解参数的过程就称之为相机标定(或摄像机标定)什么是世界坐标系由于摄像机与被拍摄物体可以放置在环境中任意位置,这样就需要来表示摄像机和被摄物体的位置,这个在环境中建立一个坐标系,坐标系就成为世界坐标系什么是相机坐标系也是一个三维直角坐标系,原点位于镜头光心处,x、y轴分别与相面的两边平行,z轴为镜头光轴,与像平面垂直,如下图所示为啥要把世界坐标系变到相机坐标系。原创 2024-09-29 15:49:50 · 3845 阅读 · 0 评论 -
一文解答Swin Transformer + 代码【详解】
下面是Swin Transformer论文的Abstract,原创 2024-09-09 19:09:05 · 1026 阅读 · 0 评论 -
Vision Transformer (ViT) + 代码【详解】
虽然 Transformer 架构已成为自然语言处理任务的事实标准,但它在计算机视觉领域的应用仍然有限。在 Vision 中,注意力要么与卷积网络结合使用,要么用于替换卷积网络的某些组件,同时保持其整体结构不变。我们表明,这种对 CNN 的依赖是不必要的,直接应用于图像块序列的纯 Transformer 可以在图像分类任务中表现良好。原创 2024-09-03 17:01:59 · 4446 阅读 · 2 评论 -
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 · 1115 阅读 · 0 评论 -
Latex数学公式编码工具详细说明
文章目录参考链接:LaTeX数学公式-详细教程转载 2024-08-26 16:46:44 · 87 阅读 · 0 评论 -
成功解决: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 · 4219 阅读 · 0 评论 -
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 · 284 阅读 · 0 评论 -
DDPM | 扩散模型代码详解【较为详细细致!!!】
左图是Transformer的Positional Embedding,行索引代表第几个单词,列索引代表每个单词的特征向量,右图是DDPM的Positional Embedding,DDPM的Positional Embedding和Transformer的Positional Embedding的。另一个区别是DDPM的Positional Embedding并没有按照奇数位和偶数位进行拼接,而是按照前后的sin和cos进行拼接的,虽然拼接方式不同,但是最终的效果是一样的。这是下采样模块的解释,原创 2024-08-19 17:31:15 · 4507 阅读 · 3 评论 -
Positional Encoding | 位置编码【详解】
transformer的作者刚开始说固定的位置编码和可学习的位置编码的效果是差不多的,后来证明固定的位置编码没有太大的必要,还不如省事直接使用可学习的位置编码,如下图,设置token的数量为10,token的特征向量长度为128,偶数项和奇数项的位置编码公式如下图所示,代码中,token_num是句子中的单词数量,embed_dim表示每个单词的特征向量长度,将对应位置的位置编码直接加在输入的单词上,如下图中的最后一行,为什么 attention 并不能赋予 token 位置信息?原创 2024-08-14 15:35:56 · 2547 阅读 · 0 评论 -
pip如何快速安装包 / install packet
2、需要注意的是,如果在pip中下载安装比较慢可以换个源,可以到用户文件夹下,创建一个pip文件夹,然后在pip文件夹里创建一个txt文件。1、在后面加-i https://mirrors.aliyun.com//pypi//simple。原创 2024-05-23 17:21:54 · 404 阅读 · 0 评论 -
facenet人脸检测+人脸识别+性别识别+表情识别+年龄识别的C++部署
TAO工具包基于TensorFlow和PyTorch构建,采用了迁移学习的技术,可以将用户自己的模型或预训练模型与实际或合成数据进行适配,并针对目标平台进行推理吞吐量的优化,从而使整个训练过程变得更加简单、高效。TAO工具包的使用不需要专业的人工智能知识或大量的训练数据集,因此,它可以帮助更多的人轻松进入深度学习的领域,快速实现各种应用场景。运行环境:Tensorflow。运行环境:TensorRT。运行环境:TensorRT。运行环境:TensorRT。运行环境:TensorRT。原创 2024-04-16 23:12:51 · 1850 阅读 · 3 评论 -
Stable Diffusion扩散模型【详解】小白也能看懂!!
2、因为每一个像素都有自己的分布,都要预测出一个均值和方差,所以网络输出的尺寸需要和图像尺寸一致,所以我们选用 Unet 网络,假设数据集中有100张图片,每张图片的shape是4x4x3,假设每张图片的每个channel的每个像素点都服从正态分布,图像加噪不是在原有图像上进行加噪的,而是通过把图片的每个像素的值转换为-1到1之间,比如像素的值是。去噪是加噪的逆过程,由时间T时刻的图像逐渐去噪到时刻为0的图像,求导,但是对于扩散的过程是不可行的,如下面的公式无法求出,因为。原创 2024-04-04 20:49:29 · 4830 阅读 · 1 评论 -
Stable Diffusion扩散模型推导公式的基础知识
采样这个操作本身是不可导的,也就无法通过BP来对参数进行优化。但是我们可以通过重参数化技巧,将简单分布的采样结果变换到特定分布中,如此一来则可以对参数进行求导,注意: 对于连续型随机变量,期望就是积分,满足条件的积分也可以写成期望的形式。这在之后的 公式推导过程中,我们会使用到期望与积分写法的转换,马尔可夫链:下一状态的概率分布仅取决于当前状态,与过去的状态无关。期望是指随机变量取值的平均值,用来刻画随机变量的集中位置,概括描述:已知抽取的样本,求概率分布的参数。离散型随机变量X的取值为。原创 2024-04-03 19:58:22 · 1645 阅读 · 2 评论 -
MODNet抠图模型的C++部署
也是一类前背景分割问题,但是matting不是硬分割,而是软分割(Soft Segmentation),像玻璃、头发这类前景,对应像素点的颜色不只是由前景本身的颜色决定,而是前背景颜色融合的结果,matting问题的目标就是,找出前背景颜色,以及它们之间的融合程度,以便于将前景合并到新的背景上,matting属于。参考原文:https://blog.youkuaiyun.com/qq_46675545/article/details/123738493。构建、build engine、运行。原创 2024-04-01 23:07:15 · 568 阅读 · 0 评论 -
HRNet/hrnet人体姿态估计的C++部署
骨骼点识别(Human Pose Estimation, HPE)是计算机视觉领域中的重要任务,旨在从图像或视频中检测和定位人体关节。网络需要对每个关节点的每个像素位置产生一个标签,也就是说,每个关节点的heatmap对应一个标签heatmap,因此,如果一张图片中待检测的关节点有 m 个,则网络理想状态下会。此时heatmap大致长这样,同一张图上是不同人的同一类型关键点,如第一幅图,是两个人的鼻子的位置。本文中我们使用的是bottom up的多人骨骼点检测算法——higher hrnet。原创 2024-04-01 18:57:25 · 1862 阅读 · 4 评论 -
Transformer代码从零解读【Pytorch官方版本】
输入经过词向量层和位置编码层,得到最终的输入,通过掩码注意力机制,然后交互注意力机制与Encoder的输出做交互,Encoder的输出做K矩阵、V矩阵,Decoder的值做Q矩阵,再经过前馈神经网络层,得到Decoder的输出,解码端是没法并行的,因为输入【S】,输出【I】,然后输出的【I】作为下一阶段的输入,这一次的输入取决于上一次的输出,所以解码端无法并行,如果当前输入为【S】,则后面的【卷起来】被遮挡,当输入为【S卷】时,后面的【起来】被遮挡,形成上三角矩阵为1的矩阵,如何去掉PAD信息?原创 2024-03-16 15:18:45 · 2311 阅读 · 2 评论 -
基于BatchNorm的模型剪枝【详解+代码】
如下图所示,每个conv-layer会被计算相应的channel scaling factors,然后根据channel scaling factors筛选conv-layer,达到模型瘦身的作用,图中的1.170,0.001,0.290等就是下面我们将要介绍的学习参数。L2求导为:θ,梯度下降过程越来越慢,相应的权重参数都接近0,起到平滑的作用,值是1.17,1.16,1.15等,那如何筛选比较重要的。图中的1.170,0.001,0.290等就是学习参数。越小,其对应的特征图越不重要,原创 2024-02-08 11:38:33 · 2830 阅读 · 1 评论 -
ChatGLM-6B训练本地知识库【详解】
左边是Encoding,右边是Decoding,trm的输入和输出都可以是序列,所以trm可以做文本翻译,BERT是Bidirectional Encoder Representations from Transformers的缩写,BERT是Transformer的Encoder一个预训练的语言表征模型在大量未标注的文本数据集上训练论文发表时在11个NLP任务上取得最佳指标BERT所做的事情就是把一个句子输出一个Embedding,原创 2024-02-05 11:05:07 · 2006 阅读 · 1 评论 -
Transformer结构详解【学习笔记】
然后再对Encoders(编码),Decoders(解码)进行细化,如下图,需要注意Encoders之间的结构是相同的,Decoders之间的结构也是相同的,虽然Encoders和Decoders之间各自的结构是相同的,但是是单独训练的,Encoders和Decoders的数量是超参数,可以自己定义,,依次对输入的【我爱你。下面再举一个NLP的例子,Query代表【爱】,分别与Key1,Key2,Key3,Key4代表的【我】,【不】,【爱】,【你】做点乘,具体步骤如下2图,比如输入的词是【我爱你。原创 2024-01-11 12:44:11 · 1861 阅读 · 2 评论 -
模型剪枝详解【学习笔记】
参考文献:原创 2023-12-29 10:24:03 · 601 阅读 · 0 评论 -
YOLOV5 C++部署的人员检测项目,包括CUDA编程,PTQ校准,jetson部署,开发后处理【C++深度学习部署(十一)】
需要在有界面的主机上安装,远程ssh无法使用窗口# 建议使用conda虚拟环境 # 安装 pip install labelImg # 启动 labelImg深度学习量化就是将深度学习模型中的参数(例如权重和偏置)从浮点数转换成整数或者定点数的过程。这样做可以减少模型的存储和计算成本,从而达到模型压缩和运算加速的目的。如int8量化,让原来模型中32bit存储的数字映射到8bit再计算(范围是[-128,127])。加快推理速度:访问一次32位浮点型可以访问4次int8整型数据;原创 2023-11-21 17:26:53 · 2080 阅读 · 1 评论 -
一些比较好的行为识别的项目链接
2、Temporal Segment Networks (TSN) ,这个先备忘一下,GitHub链接:链接3、openpose python部署 GitHub链接:链接4、openpose+LSTM 打架识别 C++部署:GitHub链接原创 2023-10-07 12:29:26 · 199 阅读 · 0 评论 -
openpose姿态估计详解【学习笔记】
整体框架如下,1张图片经过CNN网络后分成2个网络,Parts Detection网络是预测关键点,Parts Association网络是预测方向,人体18个关键点总共需要19个不同的方向,而确定方向至少需要1个平面,即。stage越多相当于层数越深,模型感受野越大,姿态估计需要更大的感受野,因为进行关键点检测需要更多关于人体的信息,所以感受野越大则人体的信息越多,关键点检测越能检测准确。在本项目中,需要检测人体18个关键点,除了下图所标注的17个关键点外,还有1个脖子关键点。2、姿势的‘亲和力’向量。原创 2023-08-15 15:35:47 · 7421 阅读 · 0 评论 -
Pytorch分布式训练【详细】
参考:,原创 2023-04-29 14:44:53 · 160 阅读 · 0 评论 -
Nvidia Tao 【总结】
1、Tao:迁移,剪枝,支持onnx模型导入,集成在deepstream部署;2、导入onnx模型,只针对算子,不分是否为分类和分割、检测模型;5、部署问题:在哪个卡上做部署,就在哪个卡上做trt转换;4、onnx可以转到Tao,但Tao不能转化成onnx;3、vota不支持int8;原创 2023-03-20 15:35:16 · 449 阅读 · 0 评论 -
QAT量化感知训练(一)【详解】
......原创 2023-02-17 17:48:42 · 1967 阅读 · 0 评论 -
python中Path函数讲解【详细】
参考:链接1原创 2023-01-28 16:06:25 · 14455 阅读 · 0 评论 -
命令行传递参数 argparse.ArgumentParser解析
参考:链接1原创 2023-01-28 16:04:42 · 169 阅读 · 0 评论 -
centernet 数据处理
【代码】centernet 数据处理。原创 2023-01-06 19:00:20 · 39 阅读 · 0 评论 -
YoloV7 office原代码解读
参考:参考:参考:参考:参考:,原创 2023-01-04 17:33:27 · 273 阅读 · 0 评论 -
YoloV5,V6,V7之比较
3、Cls部分,每个真实框对应的先验框,获取到每个框对应的先验框后,取出该先验框的种类预测结果,根据真实框的种类和先验框的种类预测结果计算交叉熵损失,作为Cls部分的Loss组成。3、Cls部分,每个真实框对应的先验框,获取到每个框对应的先验框后,取出该先验框的种类预测结果,根据真实框的种类和先验框的种类预测结果计算交叉熵损失,作为Cls部分的Loss组成。标注数据的类别需要转成数字,如0、1等,转成后的yolo格式如下,每1行代表一个物体,依次表示为:类别、x、y、w、h。原创 2022-12-16 10:46:10 · 557 阅读 · 0 评论 -
环境变量【详解】
参考:,原创 2022-12-12 17:50:41 · 142 阅读 · 0 评论 -
如何从json格式转为xml格式(训练yolo模型数据)
【代码】如何从json格式转为xml格式(训练yolo模型数据)原创 2022-12-12 17:27:43 · 3790 阅读 · 2 评论 -
YoloV7目标检测(Pytorch官方版)【这也许是你见到最详细的博文!!!】
主干网络示意图如下,其实采用的和YoloV3、YoloV4、YoloV5类似的网络结构代码如下,多分支模块堆叠的类名为:Multi_Concat_Block输出:2.2 下采样网络结构结合了maxpooling和2 ×\times× 2步长的卷积代码如下,下采样结构类名为Transition_Block,输出:2.3 整个backbone代码整个主干网络实现代码为:输出:3、FPN特征金字塔backbone与FPN以及head代码:输出:原创 2022-12-07 20:38:03 · 11628 阅读 · 4 评论 -
YoloV6【详解】
无原创 2022-12-05 14:14:21 · 483 阅读 · 0 评论