自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 资源 (10)
  • 收藏
  • 关注

原创 NvidiaGeForce系列显卡算力表(sm表)

更新于2024.1.11。

2024-01-11 10:26:24 7037 2

原创 c++ main函数传参

通过main函数参数传递,可便捷的设置VideoCapture,打开i摄像头或是打开文件。判断是参数是否是文件名。

2023-06-15 15:40:12 381

原创 C++ 检查变量类型

inclu。de # include // 自定义结构体 struct MyStruct {int value;// 自定义类 class MyClass {int value;在这个示例中,我们定义了一个自定义的结构体MyStruct和一个自定义的类MyClass。然后,我们分别创建了一个结构体变量structVar和一个类变量classVar

2023-06-15 15:33:18 1072

原创 YOLOV5Prune 剪枝实践

初始化训练后模型yaml文件中backbone可能会发生变化,可能是程序中对yaml文件进行了更新。简单来说就是利用lameda的值来判断这个bn层的输出,如果输出太小,我们把他去掉后对模型的影响会比较小。字典是当前模型中需要考虑剪枝的BN层以及权重,计算阈值,稍后将结合权重值进行操作。与上面的操作类似,再次遍历模型,结合阈值筛选出需要剪枝的BN层,并放入。函数实现了剪枝后的模型。如果定义的模型和训练的模型不对应就会产生在。收集各个BN层的权重,通过设计的百分比设计消剪阀值。加载模型后,遍历模型中的各层。

2023-06-08 14:00:40 685 1

原创 BEVFusion

Fusion模型提高了单雷达下的小物体检测和远距离检测,这些都可能得益于稠密的相机信息。BEVFusion,自称是构建了一个BEV 下的一个多任务多传感器融合统一范式,在共享的BEV空间下统一多模态特征, 找到适合多任务多模态特征融合的统一表示,让融合后的特征同时保留语义和几何信息。论文中认为每个相机的特征像素都投回一个3D空间下的射线,从而在BEV下保留了大量的语义信息。为了加速聚合,减少间隔,优化了LLS中的池化方法,实现了专门的GPU内核,直接在BEV网格上并行化计算,大幅度降低特征聚合等待时间。

2023-04-25 21:14:19 3290 1

原创 [分享NVIDIA GTC2023干货] CUDA: New Features and Beyond

利用Joson的PPT中的话来说就是。计算性能是软件和硬件(芯片)共同决定的NIVIDA强大的异构计算架构和CUDA加速工具为深度学习部署以及其他高算力需求提供了选择。目前NVIDIA在市场上的认可度较高,性能可靠的同时各种任务需求适配做的也不错。强大的CUDA加速为深度模型模型部署助理不少。以上内容来自与NVIDIA GTC分享和自己的一些学习笔记。同时也把分享中的PPT所提到链接加入文中。

2023-03-22 22:04:07 443

原创 【BEV】LLS 模型解析

输入为可迭代的对象,即需要有__call__ __get__等实现,迭代输出可视为两个,第一个为batchID,第二个为上式中。rots:旋转矩阵 trans:平移矩阵 intrins:相机内参 post_rosts/trans:图像增强矩阵。即后将通过该类对SDK提出数据进行解析。进而分别得到原始的分开的训练数据和验证数据。该类传入网格划分参数、数据增强配置,定义视锥产生函数。首先利用busenesSDK将数据提出。通过pycharm可以看到变量里面的结构。选择数据解析器,训练选择。

2023-03-20 15:13:35 1093

原创 【BEV】BEVDet

mmlab框架已经对各个基础模块进行封装,和一些功能模块的解耦。在使用的时候可以不用深究细节,==严禁重复造轮子!!!!==严禁重复造轮子!!!!

2023-03-17 21:38:47 1413

原创 KITTI3D数据集 图片检查脚本

百度网盘下载的kitti数据集图片存在损坏或者丢失,为了后续处理需要对这些文件进行增减等处理。所以写了一个python脚本检查这些错误或者丢失的文件。链接: https://pan.baidu.com/s/1l7oKQMeTDnaYa6rqZAjXpw 提取码: 8yad。–来自百度网盘超级会员v5的分享。

2023-02-27 15:02:27 134 1

原创 【参加CUDA线上训练营】线程组织

变成逻辑类似,GPU编程最大的特点应该时其多核并行的特性。要掌握其特性需要很好的理解其多核索引,根据其索引调度线程对所需要计算的数组、矩阵元素进行计算,可以极大的提高计算效率。另外,和CPU多线程类似的,多线程需要注意数据的保护和读写。以及多线程直接的特殊关系。

2023-02-11 11:52:50 75

原创 【参加CUDA线上训练营】原子操作

实验原理首先把所有数据累加到线程数量长度一行,这一行所有元索都是该列的元素和。然后在通过下图箭头所示进行累加,累加万到每个block只有一个元索。其中每个线程访问block的不同地址。通过原子操作atomicAdd对其进行累加,完成求和。通过原子操作避免了多线程访问时的数据安全。课后习题寻找最值和前K和最大值,关键逻辑和一般的CPU编程类似,只是需要注意线程索引来利用GPU的多核特性。特别注意其实函数也可以理解一哈。

2023-02-11 11:34:51 146

原创 【参加CUDA线上训练营】一种多CUDA存储单元详解

实验通过线程索引指定线程处理矩阵对应元素,实现多线程乘法并行计算,矩阵乘法效率。为block的大小设置,网格大小通过设置。通过改写参数可以调动不同数量和位置的线程,优化程序。实验过程一般可概括为:定义变量——申明GPU内存——拷贝变量到GPU——GPU上并行计算——将结果拷贝回CPU内存——输出。

2023-02-11 10:58:06 121

原创 【参加CUDA线上训练营】执行流和运行库

两个执行流一个执行流当删除一个流后时间增加40ms,接近1/3的时间。由实验结果可以看出,执行流极大的提高了几十倍运算速度。从nvprof分析性能看出,创建事件花费程序一半的时间,尝试删除事件记录看到出现在API最前面的时执行流创建,花费时51%。

2023-02-10 12:11:18 82

原创 【参加CUDA线上训练营】储存单元矩阵乘法

两个指针是指针的指针,cuda内存用指针指向数据,如要修改指针故要用两个星号。gpu和cpu异步运行,需要同步函数blockid要根据grid的分块判断,上图就把grid分为一个块,所以整个idx=(0,0),Dim=(12,6),threadidx=(6,3),所以整个结果为(0,0)*(12,6)+(6,3)=(6,3)通过工具分析,其实增加size=1000后计算所用时间变化并不大,说明了GPU并行计算的高校性。

2023-02-07 23:04:03 84

原创 RealSense (一) rs-capture

cmake使用‘cmake…-DBUILD_GRAPHICAL_ENABLE=true’(例)可以完成选择性编译。这是一个获取深度相机图像的程序。可以再官方SDK中找到。这里还有另外的github。

2022-10-31 10:50:29 235

原创 二维数组元素+地址的思考

通过比较不同维数的数组及其输出可以发现,只有*的个数=维数的时候才表示对应元素,小于元素时表示地址。多维数组名表示首地址,地址来说*c=c,表示该行的首地址,c+1同*(c+1)即是第二行的首地址。而*c+1表示该行下一个元素的地址当*c表示元素时,*c+1即表示其下一个元素。

2022-10-23 10:51:18 63

原创 VIT(vision transformer) 模型 Pytorch实现 解析 rwightman版

pytorch中的model.apply(fn)会递归地将函数fn应用到父模块的每个子模块submodule,也包括model这个父模块自身。为了在Transfromer上对图片数据进行训练,需要把图片处理成序列。形式是因为,transfromer本就是类似把图片当作文本处理,故把高宽展平为一个维度有利与计算。这里我认为768更像是通过卷积的方式,把每个小图的像素存入768个元素中,196x768更像是196个小图的数据。接下来是Block模块,VIT需要12个模块堆叠,每个模块需要上面的类来实现。

2022-10-19 14:00:03 1160

原创 darknet ROS yolov4实现记录

该部分主要由两部分组成。darknet官方yolov4代码,可以单独实现。darknet_ros代码实现ros和检测的融合。本来是打算自己写这个ros功能包,但是编译cmakelist编写有点麻烦,需要更多时间去研究,这次赶时间就不去造轮子了。

2022-08-25 09:58:30 535

原创 Realsense (二)CMakeLists.txt实现

RealSense C++实现的CMakeLists.txt

2022-07-22 13:31:57 779

原创 realSense 安装 经验整理

IntelRealSense 安装 经验贴整理

2022-07-19 19:43:35 519

原创 autoware 聚类之 五 Cluster

autoware 聚类之 五 Clustercluster.h类属性cluster.cppSetCloud()极限值获取索引的点云点位姿估计box方向特征向量 特征值计算属性更新ToROSMessage()產生ros消息总的来说这是一个聚类属性的一个类。其中大部分函数为返回类属性的获取函数。功能函数只有SetCloud /ToROSMessage/SetValidity/JoinCloud/GetFpfhDescriptorcluster.h类属性jsk_recognition_msgs::Boun

2022-05-20 13:47:35 583

原创 autoware点云检测解析一

lidar_euclidean_cluster_detectioneuclidean_clustervelodyne_callbackvisualize_detected_objects三级目录这个系列主要书对autoware聚类算法检测的一些学习记录。其实网上流传的聚类算法都大同xiaoyi。总结一句话就是:天下代码一大chao。euclidean_clustervelodyne_callback这个函数为聚类检测节点的回调函数。当节点受到点云消息后将自动执行这个函数,即自动处理点云。该代码的书

2022-05-20 12:10:40 571

原创 autoware 点云聚类 二

autoware 点云聚类 二滤波范围滤波特征滤波基于法线微分分割DoN二级目录三级目录本文主要是code分析记录滤波范围滤波removePointsUpTo(current_sensor_cloud_ptr, removed_points_cloud_ptr, _remove_points_upto);clipCloud(downsampled_cloud_ptr, clipped_cloud_ptr, _clip_min_height, _clip_max_height);keepLaneP

2022-05-19 22:40:58 629

原创 autoware 点云聚类 四 分段聚类

分段聚类segmentByDistanceif (!_use_multiple_thres)聚类没有定义 GPU_CLUSTERINGclusterAndColor()定义 GPU_CLUSTERINGif(_use_multiple_thres)合并聚类checkClusterMerge()mergeClusters()合并聚类checkAllForMerge()聚类属性整理输出这是一个随处可见的聚类方案segmentByDistancevoid segmentByDistance(const pc

2022-05-19 22:36:03 1075

原创 autoware DoN点云过滤 三

autoware 点云聚类 三一级目录differenceNormalsSegmentationDoN参数KD-TREE求解法线向量信息DoN估计条件滤波一级目录differenceNormalsSegmentationvoid differenceNormalsSegmentation(const pcl::PointCloud<pcl::PointXYZ>::Ptr in_cloud_ptr, pcl::PointC

2022-05-19 15:56:23 317

原创 DoN分割

DoN 点云 法向量 过滤分割

2022-05-17 19:10:02 252

原创 Caffe安装 (OPENCV4 Cuda10.2 Xavier)

Caffe Opencv4 Cuda10.2 caffe+opencv4下载模型修改config修改Makefle生成软连接修改源程序编译caffe+opencv4记录一个长时间的安装记录因为项目需要安装caffe,但是需要高版本的cuda opencv4兼容。经过长时间的摸索终于成功安装注:caffe只支持到cudnn7.x,,放弃使用cudnn。https://github.com/BVLC/caffe/issues/6970下载模型cdgit clone [https://gith

2022-05-05 19:42:41 1616 2

原创 CVBridge 与高版本OPENCV冲突解决

CVBridge 与高版本OPENCV冲突解决一级目录二级目录三级目录下载cvbridge编译编译问题使用一级目录二级目录三级目录下载cvbridgemkdir -p cv_bridge_ws/srccd cv_bridge_ws/srcgit clone https://gitee.com/bingobinlw/cv_bridge //此链接适用于18.04cd ..编译然后将自己安装的opencv编译生成的build文件路径加入到克隆下来的这个包里的CMakeLists.txt

2022-05-04 14:31:24 2290

原创 进程终止笔记

进程孤儿进程父进程先于子进程结束,子进程被init进程接管僵尸进程进程终止,父进程未进行回收。子进程残留PCB资源,记录终止信息。僵尸进程不能用kill结束。进程回收一个函数只能回收一个进程wait 函数阻塞等待子进程结束pid_t wait(int *status); 成功:清理掉的子进程 ID;失败:-1 (没有子进程)可使用 wait 函数传出参数 status 来保存进程的退出状态WIFEXITED(status) 为非 0 → 进程正常结束 WEXITSTATUS(s

2021-10-24 20:36:33 68

原创 system 终端输出 sudo不存在终端问题

程序中调用终端命令-systerm-没有终端存在错误关于system函数问题解决另外附录关于system函数你好! 关于system()函数最开始就是本科老师讲课时让终端停留是运用的system("pause")程序就会停留在终端,让我们看清楚结果。学习soocket编程后需要了解system函数,也还死linux库函数的运行原理可以在bantu终端输入man system进行参看系统说明文件问题 本次主要是在socket编程中利用`system`函数设置pacn模块的can通讯参数。当然这些参数也

2021-10-24 14:11:15 750

翻译 ROS消息和服务 的创建

ROS消息 服务msg和srv介绍使用msg使用srvmsg和srv介绍msg 文件;用于描述ROS消息的字段,为不同编程语言生成源代码。msg文件可以使用的类型有:int8, int16, int32, int64 (以及 uint*)float32, float64stringtime, duration其他msg文件variable-length array[] 和 fixed-length array[C]Header,它含有时间戳和ROS中广泛使用的坐标帧信息。示例:

2021-08-17 10:49:30 100

翻译 2021-08-15

ROS服务和参数前言一、ROS service and parameters二、相关命令1.ROS service2.rosparam3.rosparam dump 和rosparam load总结前言提示:本文来源于ROS机器人操作系统学习记录,内容为维基教程抄录和自己的一些相关记录一、ROS service and parametersrosservice 是节点之间通讯的另一种方式,主要是关于“逻辑”上的非数据的一些操作。rosparam可以对参数进行设置。二、相关命令1.ROS s.

2021-08-15 10:31:36 90

翻译 2021-08-14

ROS学习-话题topic写在前面开始ROS话题rostopic写在前面本文编写于ROS初学阶段,目的在于学习记录同时 与大家简单分享。ROS相关学习资料在国内较为稀少,B站古月居上传一定入门视频,但仍不够详尽,有些细节还需自己再斟酌。相比之下wai网资源较为丰富,维基百科好像也有不错的教程介绍,有兴趣的朋友可以 自己找找。开始 首先ROS系统在Ubuntu系统中需要打开ROSmaster(节点管理器)才能进行ros的相关节点操作,这里关于ROS系统的工作结构古月在B站做过一些介绍,简单来说就是节点

2021-08-14 12:16:48 61

realsense ros

ddynamic_reconfigure realsense-ros

2022-08-08

install Realsense SDK jiaoben

install Realsense SDK

2022-08-08

preception_lidar

autoware检测模块3D点云 preception_lidar ROS功能包配置说明

2022-07-21

opencv4.5.5 install no download outtime!!

opencv4.5.5 install no download outtime!!

2022-05-27

古月居ros机器人入门课程,tensorflow yolo 目标检测

tensorflow yolo 目标检测

2022-05-15

古月居机器人入门课程 robotision代码

古月居机器人入门课程 robotision代码

2022-05-15

python重命名注意看 "source": 部分

可以对文件夹内文件进行重命名

2022-05-15

USB-CAN Tool工具软件.rar

windows下的Can调试工具

2021-10-24

VSCODETOOL.tar.gz

包含工具windows下 git 、mingw、 python3.9 、VScodeuserSetUp等软件

2021-10-24

空空如也

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

TA关注的人

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