- 博客(61)
- 资源 (4)
- 收藏
- 关注
原创 unable to locate cuda解决方案
并复制到/var/cuda-repo-ubuntu2004-12-1-local/ 文件夹下。1 完全卸载之前的cuda。
2024-03-28 18:15:07
248
原创 TARE Planner 注释
订阅loam_interface发布的odom和registered_scan,转换到机器人坐标系下 /sensor_scan。订阅SLAM发布的registered_scan(地图坐标系下),并填充新的frame_id, map——>sensor。订阅SLAM 发布的odom,默认坐标系是前左上,并填充新的frame_id, map——>sensor。odometryHandler:计算机器人当前位置相对于上一时刻的位置的X-Y平面的欧式距离。最后发布可通行区域的高程图话题 terrain_map。
2024-03-07 15:36:03
508
原创 WSL 安装ROS遇到的问题
看到下面图片中的文字,然后复制全部文字到txt文档,然后把文档重命名为ros.asc,在ros.asc所在的文件夹下执行sudo apt-key add ros.asc。
2024-01-16 14:44:10
402
原创 MobileNeRF
deferred rendering:延迟渲染,先根据geometry映射到屏幕,丢弃一些不需要渲染的片段,然后逐个像素着色。2 对不透明度进行二值化处理,因为传统的光栅化方法可以轻松丢弃片段,但无法优雅地处理半透明片段。3 提取一个稀疏的多边形网格,将不透明度和特征投到纹理映射中,并存储神经延迟着色器的权重。1 使用连续不透明度训练类似于 NeRF 的模型,其中体渲染的积分点来自多边形网格。1 通过光栅化将mesh投影到屏幕空间,构建特征图,创建G-buffer。
2024-01-16 14:35:56
382
原创 又在深夜配环境
libmetis-gtsam.so这个文件位于路径“/usr/local/lib” 中,而程序默认找的位置是路径“/usr/lib”,所以没有找到,看了很多方法,还挺麻烦的,所以自己想出来一种方法——把文件复制过去。原因是GTSAM自带的eigen和我系统安装的eigen之间有冲突。GTSAM编译的时候默认使用了自带的eigen,而系统中如果还手动安装过一个eigen的话,就会出现两个eigen的冲突。然后在Cmakelists.txt里面修改以下。
2023-11-21 09:16:42
292
原创 NeuralODF: Learning Omnidirectional Distance Fields for 3D Shape Representation
NeuralODF: Learning Omnidirectional Distance Fields for 3D Shape Representation
2022-06-27 21:15:38
427
原创 DeepSDF配环境
依赖:CLI11(1.9)Pangolin (v 0.6)nanoflannEigen3 variant https://github.com/mpark/variant.git 后面有空再写
2022-05-29 19:37:58
343
原创 ubuntu20.04 bundlefusion
卡了很久,还是编译通过了环境:ubuntu20.04 opencv4.5.0 opencv-contrib-4.5.0 cuda11.7 nvidia-driver-515先装cuda,设置好环境变量export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-11.7/lib64export PATH=$PATH:/usr/local/cuda-11.7/binexport CUDA_HOME=$CUDA_HOME:/usr/local/cud
2022-05-13 19:41:42
1214
38
原创 nvidia驱动卸载与安装
参考了:Ubuntu 卸载 Nvidia 驱动和安装最新驱动_WMSmile的博客-CSDN博客_ubuntu 卸载nvidia驱动1 完全卸载驱动:sudo apt-get --purge remove nvidia*sudo apt autoremoveTo remove CUDA Toolkit:sudo apt-get --purge remove "*cublas*" "cuda*"To remove NVIDIA Drivers:sudo apt-get --purge..
2022-05-13 11:39:09
6020
1
原创 opencv 零零碎碎
orbslam3 的ros接口只有订阅传感器数据的接口,不会发布tf,也不会生成地图,只能支持opencv4.4.0,4.5.0是肯定不行的。安装人ros版本的时候,先执行build.sh 然后执行build_ros.sh即可#######################################################################环境是ubuntu20.04,因为要用ROSEFusion,所以安装opencv4.5.0 cuda版本,编译的时候注意如下,与ce
2022-04-14 16:48:18
2576
原创 github 入门
git config --global user.name "xxxx"git config --global user.email "xxxxx@qq.com"进入本地需要上传的文件夹:git initgit add .git commit - m "项目名称"在GitHub上新建一个repository关联本地仓库并上传代码:git remote add origin https://github.com/xxxxx.git(新建repository后会有一个地址)最..
2022-04-13 12:01:17
98
原创 播放ply
import osimport numpy as npimport open3d as o3dimport timeimport keyboard#打开文件路径path='/home/user/pyProject/siren_js3c_semantic/logs/kitti_label_experiment_rec2/'files = os.listdir(path)files.sort(key=lambda x:int(x.split('.')[0]))vis
2022-03-24 15:55:44
4181
原创 tmux常用指令
访问服务器进行操作的时候,创建一个session进行终端管理,可以避免客户端出现问题的时候不影响服务器端的程序,比较常用的命令如下:创建session: tmux new -s [name]进入session: tmux attach -t [name]查看session列表:tmux ls杀死session:tmux kill-session -t [name]...
2022-03-21 19:42:47
237
原创 ros c++,kitti 数据集转txt,并求法向量(可选),裁剪(可选),保存点云拼接结果(可选)
#include <iostream>#include <fstream>#include <iterator>#include <string>#include <vector>#include <opencv2/opencv.hpp>#include <image_transport/image_transport.h>#include <opencv2/highgui/highgui.hpp>
2022-01-18 22:21:36
1017
原创 逐个读取文件,并计算所有文件数据的均值、最大值、最小值
这个主要是由于电脑内存不够,无法将所有文件合并以后进行计算,譬如kitti数据集,动辄十几个Gimport os import numpy as npfiles=os.getcwd()+'/part'filenames=os.listdir(files) filenames.sort(key=lambda x:int(x.split('.')[0]))sizes=[]means=[]for filename in filenames: filepath=files+'...
2022-01-18 10:30:42
494
原创 recursively read txt documents and obtain the largest or munimum value of every coloum
import os import numpy as npfrom IPython import embedfiles = os.getcwd()+'/icltxtdata'filenames=os.listdir(files) filenames.sort(key=lambda x:int(x.split('.')[0]))for filename in filenames: filepath=files+'/' filepath=filepath+filename# ...
2022-01-09 18:38:31
470
原创 python合并多个txt数据
import os #获取目标文件夹的路径 meragefiledir = os.getcwd()+'/velodynetxt'#获取当前文件夹中的文件名称列表 print(meragefiledir)filenames=os.listdir(meragefiledir) #打开当前目录下的result.txt文件,如果没有则创建file=open('result1.txt','w') #向文件中写入字符 count=0#先遍历文件名 for filename in fi...
2022-01-07 16:40:37
489
原创 源码编译open3d到anaconda
参考官方文档:Build from source — Open3D 0.14.1 documentation1、官网用git clone下载,这样thirdparty中的文件会缺失,所以推荐直接从github打包下载2、进入Open3d文件夹,mkdir build && cd build3、conda activate xxx && which python(确认python的路径,下一步里面用)4、cmake -DPython3_ROOT=/home/xx
2022-01-04 21:07:17
568
原创 比scp更强大的复制命令rsync
rsync -avzu user@103.242.175.120://experiment_2_rec/* /home/user/logs/experiment_1_rec/-avz:表示覆盖-avzu:表示不覆盖亲测可用
2021-12-27 17:38:54
798
原创 按顺序播放ply文件
import osimport numpy as npimport open3d as o3dimport time#打开文件路径files = os.listdir("experiment_1_rec/")files.sort(key=lambda x:int(x.split('.')[0])) #按照文件名的顺序排序vis = o3d.visualization.Visualizer()##创建播放窗口vis.create_window()pointcloud = o3d.geom
2021-12-22 13:53:57
198
原创 pytorch 、numpy杂记
1、torch.matmul()就是简单的矩阵乘法2、torch.permute(input,dims) ,按照指定的维度对tensor的重新排列>>> x = torch.randn(2, 3, 5)>>> x.size()torch.Size([2, 3, 5])>>> torch.permute(x, (2, 0, 1)).size()torch.Size([5, 2, 3]3、torch.unsqueeze(input,..
2021-12-14 10:58:50
1528
原创 ubuntu20.04 编译ALOAM LIO-SAM
ubuntu20.04跑A-LOAM代码实测_songjuc的博客-CSDN博客参考了该博主,感谢1、修改源代码将四个.cpp文件中的/camera_init修改为camera_init将scanRegistration.cpp中的 #include <opencv/cv.h> 修改为#include <opencv2/imgproc.hpp>修改kittiHelper.cpp中 CV_LOAD_IMAGE_GRAYSCALE为 cv::IMREAD_GRAYSCAL
2021-12-08 11:03:17
942
2
原创 ubuntu20.04 编译pcl1.8 bug有用的解决方案
1、https://github.com/PointCloudLibrary/pcl/pull/2299/files2、pcl安装报错undefined reference to `LZ4_compress_HC_continue‘_一只小菜鸟的博客-CSDN博客解决办法:/pcl/build/kdtree/CMakeFiles/pcl_kdtree.dir/下的link.txt里在末尾写上:-llz4即:/usr/bin/c++ -fPIC -std=c++11 -p
2021-12-07 22:10:42
1509
原创 ubunru20.04 rosdep update 失败解决方案
解决ROS系统 rosdep update超时问题的新方法_leida_wt的博客-CSDN博客_rosdep update 超时sudo rosdep init部分可以挂个梯子,rosdep update 部分失败用以下方法我用的是ubuntu20.04,因此与以上略有区别位于/usr/lib/python3/dist-packages/rosdep2/sources_list.py。修改这一函数,添加:url="https://ghproxy.com/"+url用同样的方法修改
2021-12-06 20:26:28
1602
原创 Kitti数据集转txt格式并求法向量
#include <iostream>#include <fstream>#include <iterator>#include <string>#include <vector>#include <opencv2/opencv.hpp>#include <image_transport/image_transport.h>#include <opencv2/highgui/highgui.hpp>.
2021-11-29 19:21:30
1711
原创 Kitti dataset转rosbag的一些问题
velodyne odometry的02数据集的000326.bin有问题,无法解压,因此只把其余文件解压出来,velodyne里面有一些莫名奇妙的隐藏文件夹,按 Ctrl+h 键显示出来,然后删掉,把labels文件夹、times.txt、02.txt中对应的label、时间戳、位姿都删掉。semantickitti2baghttps://github.com/amslabtech/semantikitti2bag下载semantickitti2bag代码以后进入该文件夹,按.
2021-11-25 22:00:53
830
原创 aloam保存地图
跑通A-LOAM并保存点云地图!_studentu的博客-CSDN博客#第一步roslaunch aloam_velodyne aloam_velodyne_VLP_64.launch#第二步,跑一个数据集rosbag play xxx.bag#第三步,建一个文件夹 ,用pointcloud_to_pcd方法保存点云图rosrun pcl_ros pointcloud_to_pcd input:=/laser_cloud_surround#或者第三步,用bag_to_pcd.
2021-11-25 12:32:26
1621
原创 LOAM中laserodometry的公式推导
参考了这篇博文,讲的非常好https://blog.csdn.net/i_robots/article/details/110456445最难的就是雅克比矩阵推导,废话不多说,直接求雅克比矩阵吧。
2021-08-04 18:42:16
305
转载 pcd转pgm
zhuapcd生成pgm方法思路:将pcd转换为2D占据网格地图,以topic形式发布到/map上,然后使用map_server包导出pgm:rosrun map_server map_saver -f namename为pgm名字,储存路径为home121. 安装ros包:map_server链接如下:在ROS-melodic中安装map_server、gmapping 等功能包的教程2. 将pcd转换为2D占据网格地图topic的代码:#include <ro...
2021-06-19 16:23:54
883
原创 分别用一句话总结DBoW VLAD
DBoW:DBow首先是提取图片的局部特征,并用SIFT,SURF、等描述子进行数字化表示,然后将所有描述子通过Kmeans++训练成一个树结构,检索过程中通过对叶子节点关联的图片进行投票得出每个图片的分数(TF-IDF)排名。...
2021-05-31 17:05:39
385
原创 安装hnsw
先下载hnsw包https://github.com/nmslib/hnswlibpip3 install pybind11 numpy setuptools进入到setup.py所在的路径,在该路径下运行python setup.py install
2021-03-15 15:58:42
892
原创 lio_sam编译问题
不知道咋了,lio_sam编译的时候突然就报错/usr/lib/linux-..../libtbb.so.2 error: DSO missing (记不全了,大概就是这些吧)这个原因就是找不到动态链接库了,直接在相应节点的target_link_library后面再补上tbb即可,如target_link_library(${catkin_LIBRARIES} tbb)然后就可以了,编译通过。...
2021-03-12 15:09:26
610
9
原创 Fast Segmentation of 3D Point Clouds for Ground Vehicles 文章解读
简单总结一下这篇论文思路:地面分割和聚类两大部分地面识别:(点云划分成s个扇面)(滤掉了较远和较近的点云)(把点云由三维降到二维(d,z))用{d,z}拟合直线,筛选出地面点,并进行标注,由于较远的点比较稀疏的点难以拟合,就认为是非地面点分割:非地面点映射到占用栅格地图上聚类:先通过占用栅格地图判断是否需要用voxel grid进行3D聚类,判断条件是,占用栅格地图对应的点云中,如果点云对的距离超过一定阈值,就进行3D点云的聚类(A clustering method f
2020-07-07 10:41:16
2015
原创 ubuntu16 NVIDIA 驱动 cudnn安装
1. ubuntu 16.04默认安装了第三方开源的驱动程序nouveau,安装nvidia显卡驱动首先需要禁用nouveau,不然会碰到冲突的问题,导致无法安装nvidia显卡驱动。编辑文件blacklist.confsudo gedit /etc/modprobe.d/blacklist.conf在文件最后部分插入以下两行内容blacklist nouveauoptions nouveau modeset=0更新系统sudo update-initramfs -u重启系统
2020-05-14 14:06:26
367
2
转载 利用Python实现高斯混合模型(GMM)
Python代码#!/usr/bin/python3# -*- coding: utf-8 -*-# @Time : 2018/7/19 10:17# @Author : DaiPuwei# @FileName: GMM.py# @Software: PyCharm# @E-mail :771830171@qq.com# @Blog :https://blog.c...
2020-05-01 17:49:19
8183
原创 K-MEANS-算法-简述
转自:https://www.cnblogs.com/pangxiaodong/archive/2011/08/23/2150183.html感觉这个讲的言简意赅,挺好的1.算法流程 输入:聚类个数k,以及包含 n个数据对象的数据库。 输出:满足方差最小标准的k个聚类。 (1)从n个数据对象任意选择k个对象作为初始聚类中心 (2)计算每个对象与聚类中心的距离;并根据...
2020-04-28 14:51:38
1378
原创 exact voxel grid downsampling 和 approximate voxel grid downsampling
看图说话 ,上图是exact downsampling,注意,必须保证Dx>hx,Dy>hy(这两个条件是必须),到第四步的时候是计算了voxel空间的索引,然后呢,准确降采样就是在每个voxel索引里面取中值,或者随机取一个点,然后输出的点云就是降采样后的点云,理解了上图,再看下面的approximated voxel grid downsampling和ex...
2020-04-21 17:09:41
751
2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人