- 博客(110)
- 收藏
- 关注
原创 C++ Lambda表达式
Lambda 表达式(也称为匿名函数或闭包)是 C++11 引入的一种无需命名即可定义函数对象的特性。它允许你在需要函数的地方直接内联定义函数逻辑,特别适合用于回调、算法谓词等场景。
2025-05-31 09:43:16
87
转载 C++函数传参的三种方式
C++11 标准新引入了一种引用类型,叫做右值引用,用于绑定即将销毁的对象(即“右值”),从而允许从原始对象中“移动”资源,而非复制。右值引用也可以传递参数,非常适合传递临时对象或需要转移所有权的大型数据结构,因为它减少了不必要的数据复制,提高了程序效率。按值传递的这种方式简单且安全,特别是对于基本数据类型(如 int、char 等),因为它避免了外部数据的无意修改。在按值传递方式中,函数接收参数的一个副本,在函数内部对参数进行任何修改都不会影响到原始数据。
2025-05-31 09:09:44
7
原创 for(auto a:b)和for(auto &a:b)的区别
参考:https://blog.youkuaiyun.com/weixin_51472673/article/details/122462714。for(auto a:b)中b为一个容器,效果是利用a遍历并获得b容器中的每一个值,但是a无法影响到b容器中的元素。for(auto &a:b)中加了引用符号,可以对容器中的内容进行赋值,即可通过对a赋值来做到容器b的内容填充。
2025-05-30 22:30:28
195
转载 自动驾驶数据集nuscenes、kitti
https://www.cnblogs.com/ytwang/p/17729720.htmlhttps://www.aicmty.com/115474.html
2025-01-04 14:58:44
71
原创 pyhton __init__.py
在Python中,文件是一个特殊的文件,用于指示Python解释器该目录应该被视为一个Python包。这个文件可以为空,也可以包含初始化包的Python代码。通常__init__.py 文件为空,但是我们还可以为它增加其他的功能。我们在导入一个包时,实际上是导入了它的__init__.py文件。
2024-08-28 16:28:12
438
原创 Python __init__() 方法和super()函数
函数是一个特殊的方法,通常称为初始化方法或构造器。它在创建类的新实例时自动调用,用于初始化对象的状态。是用来解决多重继承问题的。当你在派生类中重写方法时,你可能想要调用父类中的相同方法,这时就可以使用。函数是用于调用父类(超类)的一个方法,
2024-08-25 20:19:52
276
转载 Python中的下划线(_)的五种用法
也就是说,下划线并不意味着i18n/l10n,它只是将i18n/l10n绑定到下划线变量,这个约定来自C语言约定。也就是说,如果你在一个类中编写了一个名为“__method”的方法,那么这个名字将会在“_ClassName__method”的表单中被矫正。有时,有些人使用它就像真正的私人使用这些功能,但它不是私人的,也不推荐这样做。双下划线将”矫正“类的属性名,以避免类之间的属性名冲突。然而,当然,Python不支持真正的私有,所以我们不能强制一些私有的东西,也可以直接从其他模块调用它。
2024-08-24 09:58:43
94
原创 Linux遇到“Argument list too long”
在Linux中使用cp, mv, rm, zip等命令时有时会遇到“Argument list too long”的错误,主要是要进行操作的文件过多导致的。是给其他命令传递参数的一个过滤器,也是组合多个命令的一个工具。为结尾,由于各个系统中分号的意义不同,因此用。是指在指定文件夹下查找指定名称的文件。参数后面是指执行其后面的命令,
2024-08-11 15:24:38
1410
转载 Linux查看目录下的文件数量
还会计入目录本身的一行信息(通常显示为 total),这使得结果比实际文件数量多一行。统计文件数量时,结果可能会不同。只会统计符合条件的文件,不会包括目录信息。输出每个文件或目录名占据单独一行。只搜索当前目录,不递归到子目录。递归地列出所有文件和目录,而。若只需文件数,可以结合使用。开始的行,即普通文件的行。需要先安装tree命令。
2024-08-11 14:55:54
1858
原创 conda pack迁移环境
因为有的服务器没有网络,如果想要安装自己的虚拟环境,就需要在有网络的服务器安装好环境后迁移到没有网络的服务器。安装的包都能够被打包,包括该环境中安装的软件包的所有二进制文件。是一个命令行工具,用于打包 conda 环境,把生成的压缩包拷贝到没有网络的服务器上。到conda虚拟环境的目录下创建目录。然后激活环境就可以使用了。,把压缩包解压到此处。
2024-08-06 15:28:35
765
原创 Linux查看cpu型号等信息
也会显示 CPU 的详细信息,包括型号、频率、核心数等。在输出中找到 “Model name” 字段,后面显示的是 CPU 的型号。关于 CPU 的详细信息,包括型号、频率、核心数等。在输出中找到 “model name” 字段,后面显示的就是 CPU 的型号。需要管理员权限(sudo)来运行,它会显示更详细的 CPU 信息,包括型号、制造商等。
2024-07-30 17:33:43
495
原创 nohup命令
类似的,如果你想在后台运行一个程序,并且希望它在你关闭终端后继续运行,你还可以考虑使用screen或tmux这样的工具,这些工具提供了更强大的功能,例如多个窗口、会话管理等。因此就有了不停止服务直接,清空nohup.out文件的方法。nohup 是 no hung up的缩写,nohup 命令在默认情况下(非重定向时),会输出一个名叫 nohup.out 的文件到当前目录下,如果当前目录的 nohup.out 文件不可写,输出重定向到 $HOME/nohup.out 文件中。
2024-07-25 17:53:47
934
原创 Docker镜像依附于某个操作系统
每个 Docker 镜像都是基于某个操作系统。虽然 Docker 镜像可以设计得非常轻量级,甚至不包含完整的操作系统(例如使用 BusyBox 或 Alpine Linux 作为更小的基础镜像),但它们仍然需要一个操作系统作为底层。Docker 镜像的这种基于操作系统的特性,使得它们能够在不同的环境中提供一致的行为,因为它们携带了运行所需的所有依赖项。这也意味着,当你在不同计算机或云服务上运行相同的 Docker 镜像时,你不需要担心底层操作系统的差异,因为镜像已经包含了所有必要的运行时环境。
2024-07-22 17:39:27
551
原创 TensorRT安装
安装TensorRT一定要注意安装的版本,尤其是注意与CUDA、cuDNN、ONNX等版本的对应(在新版本的TensorRT中cuDNN已经不是必须项)。下面主要介绍使用tar包安装的方法,安装步骤还可以可以参照:https://www.cnblogs.com/zycheng/articles/17670625.html。中还有其他安装方法可以参考。
2024-07-22 14:50:47
315
原创 cuDNN安装
严格来说,CUDNN是个库,不需要安装,只需要把其文件复制到CUDA文件夹下即可使用。要把CUDNN中的bin,include,lib都复制到CUDA的对应目录下。注意,CUDA的bin文件夹应该被添加进环境变量。需要已经安装好了Nvidia驱动及CUDA。这里主要记录一下使用tar包安装cuDNN的方式,官方文档中还有其他的安装方式,可以参考。中寻找对应目前使用中的CUDA的版本下载。根据自己系统版本及处理器架构选择对应的安装包,我使用的是第二个。下载完tar包后,在tar包所在的目录下开始进行安装。
2024-07-21 15:45:02
484
原创 ONNX Runtime、CUDA、cuDNN、TensorRT版本对应
注意,到目前为止,onnxruntime-gpu在CUDA 12.x和CUDA 11.x下的安装命令是不同的,仔细阅读官方文档。
2024-07-16 11:09:48
4415
原创 Linux软连接和硬连接
软连接是linux中一个常用命令,它的功能是为某一个文件在另外一个位置建立一个同步的链接。换句话说,也可以理解成Windows中的快捷方式。-s表示是软链接,dir1是真实的文件夹,dir2是dir1的软链接。命令查看,带有箭头的便是软链接文件,箭头指向的是源文件。目录下就会生成一个COCO文件夹的软链接。硬链接的作用感觉上像是用来备份文件数据的。工作中通常来说基本都是使用软链接。,就会把源文件删除,例如。
2024-06-16 15:44:51
456
原创 bash xxx -b -u -p xxx
u:这个参数代表"update prompt",更新提示符。这会确保Miniconda的初始化脚本更新你的shell配置文件,例如.bashrc或.zshrc,以包含Miniconda的初始化代码。-p:这个参数后面通常跟的是Miniconda安装的路径,这里指定了Miniconda安装的位置,确保脚本知道在哪里初始化Miniconda环境。-b:这个参数的作用是"batch mode",批量模式,意味着脚本会非交互式地运行,不会要求用户输入。可以直接自动跳过所有确认内容。
2024-06-15 16:13:26
244
原创 MMDetection3D学习笔记一:环境搭建
更推荐直接参考学习官方文档以及官方GitHub仓库,其所包含的内容最全面权威。MMDetection3D是一个基于PyTorch的开源对象检测工具箱,专门用于处理3D场景中检测和分割任务,属于OpenMMLab项目的一部分。可以基于MMDetection3D实现基于点云、图像和多模态数据的3D检测与分割。目前MMDetection3D已经支持数十种不同的算法及多个主流数据集,每个算法都提供了多个SOTA的预训练模型,可以直接使用这些预训练模型实现推理。可以参考模型库和数据集。
2024-06-14 17:13:19
1197
2
转载 VSCode给远程服务器安装插件-在线或离线方式
https://www.cnblogs.com/understandWorld/articles/12856323.html
2024-06-12 20:12:36
878
原创 ImportError: cannot import name ‘packaging‘ from ‘pkg_resources‘
【代码】ImportError: cannot import name ‘packaging‘ from ‘pkg_resources‘
2024-06-11 19:49:35
3008
6
原创 部分基于深度学习的主流目标检测算法
CNN首先通过选择性搜索算法Selective Search从一组对象候选框中选择可能出现的对象框,然后将这些选择出来的对象框中的图像resize到某一固定尺寸的图像,并喂入到CNN模型(经过在ImageNet数据集上训练过的CNN模型,如AlexNet)提取特征,最后将提取出的特征送入到分类器来预测该对象框中的图像是否存在待检测目标,并进一步预测该检测目标具体属于哪一类。这样做对小物体的检测不利,因为小物体本身具有的像素信息较少,在下采样的过程中,这些信息很容易丢失,从而降低了算法的性能。
2024-05-15 16:26:02
1502
转载 推理(推断)(Inference)与预测(Prediction)
预测是解释将要发生的事情,而推理是关于已经发生的事情。简言之,关键是给定一些随机变量(X1,X2…Xn)或特征,如果你对估计某物(Y)感兴趣,那么这就是预测。如果你想了解(Y)如何随着随机变量的变化而变化,那么这就是推理。作者 Alexandros Zenonos引用 https://zhuanlan.zhihu.com/p/206399469。
2024-04-17 16:40:19
1088
原创 mysql常用
匹配除了字符集中的任意一个字符以外的字符。:用来匹配 0 个或多个字符。:匹配字符集中的任意一个字符。:匹配输入字符串的开始位置。:匹配输入字符串的结束位置。:匹配零个或多个前面的元素。:匹配一个或多个前面的元素。
2024-04-12 15:51:05
415
原创 Ubuntu系统进行深度学习时查看GPU、CPU实时使用情况等
纳入内核管理的内存不见得都在使用中,还包括过去使用过的现在可以被重复利用的内存,内核并不把这些可被重新使用的内存交还到free中去,因此在linux上free内存会越来越少,但不用为此担心。对于内存监控,在top里我们要时刻监控第五行swap交换分区的used,如果这个数值在不断的变化,说明内核在不断进行内存和swap的数据交换,这是真正的内存不够用了。,显卡是由GPU和显存等组成的,显存和GPU的关系有点类似于内存和CPU的关系。第四行中使用中的内存总量(used)指的是现在系统内核控制的内存数,
2024-04-05 17:00:06
5249
转载 STL中容器元素删除时需要注意的迭代器失效问题
STL中的容器可以分为两类:一类是按照数组方式连续存储元素的容器,如vectordeque,另一类是按照不连续的节点存储元素的容器,如setmaplist等。那么这两类容器删除元素的时候需要注意一个问题,使用iterator指定删除某个元素的时候,要注意返回的iterator的值。下面分别举setvector的例子来说明。
2024-04-01 13:03:14
70
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人