自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(76)
  • 问答 (6)
  • 收藏
  • 关注

原创 gsplat中的3D Gaussian Splatting as Markov Chain Monte Carlo的代码解读

当然,计算新的尺度(Scale)涉及到一些复杂的数学运算。这个公式是基于论文中的公式 (9) 推导出来的。通过一个嵌套的循环来计算新的尺度。这个过程涉及到二项式系数(,然后用这个系数来调整原始的尺度值,得到新的尺度值。)和一些数学运算,包括幂运算和平方根运算。具体来说,内核函数计算了一个系数。为 0.0,用于累加分母的值。这个过程体现了采样数量(通过。参数)对新的尺度计算的影响。首先,初始化一个变量。然后,使用二项式系数。使用嵌套循环计算分母。

2024-07-09 19:50:48 660

原创 Surface splatting (2D Gaussian splatting)代码分析

【代码】Surface splatting (2D Gaussian splatting)代码分析。

2024-07-07 12:18:25 226 1

原创 powershell创建一个set_proxy函数

然后添加下面代码到这个文件。

2024-06-27 19:55:56 173

原创 widows下 vscode 的 terminal / powershell,ctrl+v失灵,输出^v

Emacs 模式是一种文本编辑模式,最初源自于 Emacs 文本编辑器,后来被广泛应用于各种命令行和文本编辑环境中。Emacs 模式以其丰富的快捷键和强大的编辑功能而闻名。在 Emacs 模式下,用户可以通过组合键(通常是Ctrl和Meta键,Meta键在现代键盘上通常对应Alt键)来执行各种编辑操作。Ctrl+A:移动光标到行首Ctrl+E:移动光标到行尾Ctrl+B:光标向后移动一个字符Ctrl+F:光标向前移动一个字符Ctrl+P:上一条历史命令Ctrl+N:下一条历史命令Ctrl+D。

2024-06-27 18:52:21 870

原创 windows powershell 自动补全/自动suggestion

具体最新版本:https://www.powershellgallery.com/packages/PSReadLine/在~\Documents\PowerShell\Microsoft.PowerShell_profile.ps1。

2024-06-24 19:24:51 283

原创 colmap无GUI编译

cmake … -GNinja -DGUI_ENABLED=False

2024-06-22 17:02:33 131

原创 NumPy2.0近期更新导致用不了

ABI 是应用程序二进制接口的缩写,它定义了如何在二进制层面进行交互,包括函数调用约定、数据类型的大小和布局等。ABI 的更改意味着旧版本的代码可能无法与新版本的代码无缝兼容,因为二进制层面的接口发生了变化。这可能会影响到依赖 NumPy 的第三方库和应用程序,需要它们进行相应的更新和重新编译。

2024-06-21 22:51:17 4498

原创 我常用的bash utils

【代码】我常用的bash utils。

2024-06-20 23:18:41 85

原创 colmap如何利用GPS信息or如何对齐给定坐标系

是Colmap中用于地理配准的工具,它能够将重建的三维模型与地理坐标系对齐。此工具使用RANSAC算法来估计模型与目标坐标系之间的3D相似变换。

2024-06-11 17:21:10 598

原创 vscode copilot git commit 生成效果太差,用其他模型替换

我们可以用close ai,其相当于等效替代:https://referer.shadowai.xyz/r/20560。刚好,gitlens 最近开发了 AI commit的功能,其提供配置url + api可以实现自定义模型。git commit 这种较为复杂的内容还是交给大模型做比较合适。在 vscode 的 output 中可以看到。但是我是怎么知道要填后面的这么长一串的呢?首先,填短的肯定是用不了,这个我试过。不一样,我是为什么要填这个长的呢?其实,这个就看个人的思考能力了。

2024-06-10 14:47:00 475

原创 Nerfstudio Gaussian Splatting 相机姿态可微/求导的具体实现方式

总的来说,这段代码是用于计算视图矩阵的梯度,这些梯度可以用于优化相机的位置和朝向,以最小化投影高斯分布的某种损失函数。这段代码是用于计算视图矩阵(view matrix)的梯度,视图矩阵通常用于3D图形和计算机视觉中,用于将世界坐标转换为相机坐标。在深度学习中,视图矩阵通常用于表示相机的位置和朝向。:通过两层循环,计算所有高斯分布的梯度相对于旋转矩阵的和。外层循环遍历旋转矩阵的行,内层循环遍历旋转矩阵的列。创建一个与视图矩阵形状相同的全零张量,用于存储梯度。计算所有高斯分布的梯度相对于平移向量的和。

2024-06-07 10:24:48 568

原创 Nerstudio 相机优化代码理解

这个函数计算的是SO(3)(三维旋转群)和R^3(三维平移空间)的直积群的指数映射。它假定输入的切向量前三个分量是平移分量,后三个分量是SO(3)的切向量(通常表示为旋转向量或轴角表示法)。函数首先计算旋转部分的指数映射,然后与平移部分结合,生成最终的[R|t]变换矩阵。这两个函数的主要差异在于它们处理旋转部分的方式不同,以及它们对切向量的解释略有不同。总的来说,这两个函数都是用于从SE(3)的切空间到SE(3)本身的映射,但是它们在处理旋转部分时采用了不同的策略,这可能会影响它们的性能和适用性。

2024-06-05 22:11:51 370

原创 cudart link错误自动修复脚本

安装的envs/xxx/lib/libcudart.so 会link到错的。如果手动修复太复杂,我写了一个脚本自动修复。在conda安装cuda环境时。

2024-06-04 18:59:48 186

原创 lightning的hook顺序

on_before_optimizer_step: 优化器步骤之前。on_train_epoch_start: 每个训练周期开始。on_train_batch_start: 每个训练批次开始。on_train_batch_end: 每个训练批次结束。on_train_epoch_end: 每个训练周期结束。on_before_zero_grad: 清空梯度之前。on_after_zero_grad: 清空梯度之后。on_train_start: 训练开始。on_train_end: 训练结束。

2024-05-22 10:46:25 273

原创 -lcudart一直找不到

一般libcudart.so是链接到一个其他的文件,如libcudart.so->libcudart.so.10.9.8,请确保这个link是正确的,即libcudart.so.10.9.8存在,可以通过ls -l查看link情况。首先确保你的文件存在,一般在。确保编译时指定库的路径,如果不是,请重新设置。

2024-03-16 15:45:20 485

原创 通过设置MAX_JOBS=1防止pytorch编译时内存溢出

Allowing ninja to set a default number of workers… (overridable by setting the environment variable MAX_JOBS=N)

2024-03-16 13:17:43 955 2

原创 华中某科技大学校园网疑似dns劫持的解决方法

校园网对我们进行dns劫持,收集我们的访问域名,本质是在保护我们,请大家非必要不要使用加密。

2024-03-05 20:14:21 822

原创 waymo open dataset v2.0.0 (Perception dataset) 大小

【代码】waymo open dataset v2.0.0 (Perception dataset) 大小。

2024-01-30 23:23:48 494

原创 同一组数据,有多个人【标注】,比较大家标注的结果,看谁偷懒(标的不认真)

labelme json文件。

2024-01-11 16:51:17 381

原创 梯度裁剪中的NaN值处理 - 深入探究torch.nn.utils.clip_grad_norm_和torch.nn.utils.clip_grad_value_

在深度学习中,梯度裁剪是一种常用的技术,用于防止训练过程中梯度爆炸的问题。PyTorch提供了两个梯度裁剪函数 - torch.nn.utils.clip_grad_norm_ 和 torch.nn.utils.clip_grad_value_。本博客将深入探讨这些函数的计算方法,以及它们如何处理梯度中的NaN值。

2023-12-26 22:54:51 2313

原创 混合精度训练:显存减少还是增加?

在混合精度训练中,模型的权重参数通常以f32的形式保存,但在前向传递过程中,这些参数会被转换为f16,用于计算中间结果和损失函数。然后,在反向传播过程中,我们将f16梯度转换回f32,并使用f32梯度来更新模型的参数。综上所述,尽管混合精度训练需要同时保存f32和f16的参数,但由于f16参数占用的内存较小,并且梯度计算使用了降低精度的方法,整体的显存使用量通常会减少。但是,有一个普遍的疑问是,虽然混合精度训练可以减少显存使用量,但它同时保存了f32和f16的参数,这是否会导致显存增加?

2023-12-19 20:18:08 964

原创 cmake编译指定cuda版本

注意之前的cmakecahe要清除。

2023-12-13 11:03:11 743

原创 torch代码是否异步执行情况分析

猜测循环会并行执行,不需要等待上一个循环的结果。,猜测循环会顺序执行,需要等待上一个循环的结果。torch按顺序执行代码,没有异步。两种情况没太大差异,说明判断错误。

2023-10-08 19:21:36 215

原创 conda中cuda、cuda-toolkit、cuda-nvcc、cuda-runtime的区别

略略略

2023-10-07 20:24:41 1089

原创 pytorch-lightning的trainer的optimaze_step的详细分析

【代码】pytorch-lightning的trainer的optimaze_step的详细分析。

2023-09-15 10:56:51 436

原创 cudart.so vs cuda.so的区别

API的访问,而libcuart.so提供了对。libcuda.so提供对CUDA。在wsl中cuda.so位于。

2023-09-11 15:55:15 282

原创 分布式训练如何节省内存加载数据集

一个简单的防止冗余数据集副本的方法是依靠 torch.multiprocessing 通过共享内存自动在分 spawned 进程之间共享数据。为此,所有数据预加载都应在 DataModule.我们知道,分布式训练数据集加载内存占用和节点数量成正比,每个节点都会加载一份数据集到内存,多个节点就会有多个数据集复制。对于内存中的数据集,每个进程都将在内存中保存一个(冗余的)数据集副本,内存消耗将随着进程数线性增加。() 中在主进程上进行。结果,所有张量数据将在使用“ddp_spawn”策略时自动共享。

2023-08-28 19:51:46 246

原创 “LegionFanControl“ cannot write to a closed textwriter

最近的 Microsoft Defender 数据库更新将 Legion Fan Control 的组件 rwdrv.sys 标记为 HackTool,这可能会导致 Defender 将其隔离或删除,从而导致该应用程序无法正常工作。将 rwdrv.sys 文件添加到 Defender 的白名单。这意味着 Defender 将不再认为该文件是恶意软件,并允许它运行。

2023-08-17 17:24:10 1356

原创 torch.profiler

PyTorch Profiler 是一个工具,它允许在训练和推理期间收集性能指标。Profiler 的上下文管理器 API 可用于更好地了解哪些模型操作最昂贵,检查它们的输入形状和调用堆栈,研究设备内核活动并可视化执行跟踪。性能指标:例如内存使用、CPU 和 GPU 使用、操作时间等。

2023-08-13 23:32:05 1516

原创 Autocasting和GradScaler

为了防止下溢,梯度缩放会将网络的损失乘以一个缩放因子,并在缩放的损失上调用反向传递。然后,通过网络流回的梯度将按相同的因子进行缩放。换句话说,梯度值具有更大的幅度,因此不会刷新为零。BFloat16 (Brain Floating Point)是一种16bit的浮点数格式,动态表达范围和float32是一样的,但是精度低。如果特定操作的前向传递具有 float16 输入,则该操作的反向传递将生成 float16 梯度。在优化器更新参数之前,应先unscaled每个参数的梯度,以便缩放因子不会干扰学习率。

2023-08-13 22:15:55 667

原创 vscode copilot长时间没反应

参考:https://github.com/orgs/community/discussions/29127。首先看一下OUPUT插件信息有什么异常。可以在vscode里设置一下代理。那是请求没有相应的原因。

2023-07-04 16:28:36 3045

原创 flowus网站打不开

一直请求cdn识别,host也没问题。保存显示时间,猜测本机时间不对。

2023-06-20 09:50:44 953

原创 [Docker] 错误之Error response from daemon: could not select device driver ““ with capabilities: [[gpu]]

这是由于没有配置好docker运行环境导致的,执行安装容器运行环境(Ubuntu为例)Nvidia Docker安装后,使用镜像创建容器时出错,命令如下。安装后重新启动docker。

2023-05-17 11:33:56 1087

原创 docker 记录

【代码】docker 记录。

2023-05-17 11:12:18 134

原创 docker 记录

【代码】docker 记录。

2023-05-16 20:42:43 86

原创 git 和 gpg 常用命令

【代码】git 和 gpg 常用命令。

2023-05-15 22:32:16 255

原创 Git clone 指定端口

其中 3000 是Http端口号。

2023-05-15 22:17:49 3015

原创 如何在每次启动终端时自动启动上次的conda环境

每次我们启动bash时,默认为base环境,我们可以通过添加。写一个记忆脚本,记录上次启动的环境,并在开始时自动启动。但是这样还不够智能,我们有时想用自动化启动环境。,还要修改上面的内容。

2023-03-24 21:02:43 823

原创 【wsl2】opengl相关问题

sudo apt-get install libgl1sudo apt-get install python-openglexport LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libstdc++.so.6

2023-03-12 13:19:48 263

原创 HTML SVG通过currentcolor设置主题色

currentcolor = 上级元素的color属性。

2023-03-07 17:03:46 412

空空如也

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

TA关注的人

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