- 博客(190)
- 资源 (1)
- 收藏
- 关注
原创 ubuntu20.04 MYNTEYE S 相机运行与标定记录
在catkin_ws中增加了cv_bridge并将其package修改为了cv_bridge_3,但是在SDK中的wrappers/ros/src中的CMakeLists.txt中将find_package中的cv_bridge也要修改成对应空间中的cv_bridge_3.在wrappers/ros/src/CMakeLists.txt中添加。在wrappers/ros/src/CMakeLists.txt中添加。修改wrappers/ros/src/CMakeLists.txt。
2023-11-10 10:04:18
774
转载 ubuntu cv_bridge报错记录 Keywords: boost_python3Config.cmake boost_python3-config.cmake
将cv_bridge中的CMakeLists.txt中对应部分注释掉。报错来源于对cv_bridge进行catkin_make。,为了方便自己后续查看,再发一份。
2023-11-09 14:57:28
510
原创 ubuntu18.04 多版本opencv配置记录
多版本OpenCV+OpenCV_contrib安装及使用Ubuntu下多版本OpenCV共存和切换# 安装地址需要注意..makeERROR 1:满篇飘红,全是错误发现是按照别的教程,曾经安装过FFmpeg,又去把它卸载了。然后删除build重新构建,解决。
2023-11-06 21:22:21
489
1
原创 ubuntu20.04 vins-fusion 运行记录
修改CMakeLists.txt,这一步是因为系统中有多个opencv,所以我需要确定是哪个并使用对应版本的cv_bridge。1.下载VINS-Fusion和cv_bridge,并进行修改,方便使用opencv4.2.0和对应的cv_bridge。查看上方步骤,选择对应的opencv版本和cv_bridge版本,并修改CMakeLists.txt。修改cv_bridge中的CMakeLists.txt和package.xml。OpenCV版本和cv_bridge版本问题。编译cv_bridge。
2023-10-13 22:13:49
803
原创 cv_bridge和opencv 记录
实验室笔记本上想跑一下vins-fusion。但是因为是有毕业师兄的代码,不敢随意破坏环境。电脑环境:opencv 3.3.1 和 4.2.0。
2023-10-13 17:58:21
695
原创 ubuntu 外置相机使用记录
判断应该是SDK中默认打开的是/dev/video0,但是video0是内置相机,导致运行错误。因此有了两种想法,1. 禁用内置相机,仅使用小觅相机。发现系统中有八个video,也就是/dev/video0-7.通过插拔测试,发现前四个为内置相机产生的,后四个为外置的小觅相机。打开/dev/video0为内置相机画面,修改lauinch文件打开/dev/video4为小觅相机画面,且均正常显示。网上搜索到的大多数的禁用相机方法,blacklist会导致所有相机均被禁用。终端报段错误,也就是运行失败。
2023-09-21 10:41:44
539
原创 实验室服务器 环境配置记录
本篇文章为本人自己(Toniht)在实验室服务器上配置环境的一些记录,我也是个半吊子,很多步骤都不知其所以然,主打一个能用就行。主要目的是方便后续遇见问题及时定位,或者后续再次需要时不用上网到处查找。次要目的是希望能帮助到有需要的人。写给参考的人:本篇文章中你可能会看见的一些地址中的昵称:Toniht为我本人昵称,tjx为名字缩写,因为实验室服务器分配需要记录,方便查人不让用昵称,所以本文中Toniht和tjx会比较混乱,但是都是我的id就对了。
2023-07-12 10:03:49
708
原创 笔记:TGS Salt Identification Challenge
从零开始学习语义分割。比赛地址我的代码地址新手一个,随学随记,请勿喷我也不知道自己输出的这个图对不对,反正就瞎看
2022-07-12 18:51:33
813
1
原创 Ubuntu22.04 实用工具总结 Toniht笔记
这篇笔记的主要作用是给自己做记录,装过Ubuntu的各位都知道,想一次安装成功你所有需要的东西真的很难,有时候不小心删除一个东西破坏了环境,后面会出一系列连锁反应,到处搜攻略不如趁着刚装系统再重装一次。欢迎各位参考我的安装过程,希望我常用的这些软件可以帮助各位我的Ubuntu22.04安装时间为22年4月底,此时新系统刚出不到一个星期,所以难免有些东西搞不出来。见谅见谅。经过测试,搜狗输入法在22.04下还不能用,不知道是只有我一个人还是大家都这样。...
2022-04-26 15:03:57
6112
3
原创 Ubuntu22.04 Python 深度学习环境配置记录
主要是给自己的记录,大家愿意参考也可以,但是我是新手,不保证完全ok,当作笔记慢慢更新1. Python系统自带python3,暂时没用到python2,暂时不安装CUDA和cuDNN安装过程是我另一篇笔记里的,直接复制过来的2. CUDA深度学习要用,用GPU加速运算2.1 查看自己需要的CUDA版本输入nvidia-smi指令不存在说明你的显卡驱动不对,不是nvidia,去软件与更新-附加驱动修改2.2 安装CUDA从该网站选择对应版本,并按步骤安装。因为我目前22.04版本刚出
2022-04-25 22:24:02
9194
7
原创 ROS 订阅雷达信息却显示没订阅
背景在做深度图转为虚拟激光雷达与激光雷达融合,需要同时订阅雷达和相机问题无论怎么改,都查不到订阅的雷达/laser_scan解决方法订阅代码:ros::Subscriber laser_sub_ = pnh_.subscribe("/laser_scan", 10, DepthImageToLaserScanROS::laserCb,this); 这句也不报错,但是没存储订阅的雷达信息改为另一种方式订阅:ros::Subscriber laser_sub_;laser_sub_ = n
2021-05-03 22:43:51
684
原创 ubuntu18.04 安装cartographer
前言其实网上很多教程的,前两次安装都没记录自己是怎么安装的,导致我这一次已经是第三次安装了,还是到处出错,所以还是记录一下自己是怎么安装的。方便自己以后用的话只需要自己这一个博客就可以了,不需要到处开网页了。前提环境:我能上油管(都懂得安装cartographer18.04支持直接安装了#根目录下sudo apt-get updatesudo apt-get install ros-melodic-cartographer* #安装依赖sudo apt-get install -y \
2021-05-01 00:34:06
1652
1
原创 ubuntu18.04 ZED2相机标定
1.相机的启动参考:Ubuntu下ZED2 SDK使用及开发环境配置\1.1 驱动下载cuda 11.1下载安装cuda11.1我第一次是按照教程安装的cuda10.2,但是报错了,在后面启动相机的时候ERROR,经查询可能是cuda版本问题。wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/cuda-ubuntu1804.pinsudo mv cuda-ubuntu1804.pin
2021-04-28 21:18:31
2284
5
原创 思岚A2 运行cartographer
思岚A2+cartographer因为毕设相关内容,在学习cartographer,这一次是试用思岚A2跑cartographer。记录一下过程首先确保自己cartographer运行是成功的。安装教程网上有很多(很多都是没用的),我安装了一整天才正确运行,就离谱。Cartographer安装后,安装思岚A2的驱动程序学自文章思岚科技A1,A2雷达驱动安装cd ~/catkin_ws/srcgit clone https://github.com/Slamtec/rplidar_ros.gi
2021-04-16 15:14:53
1035
1
原创 每天一道Code 706. 设计哈希映射
代码思路可以使用链地址法解决冲突。代码struct Node{ int key; int val; Node* next; Node(int _key,int _val): key(_key),val(_val),next(NULL) {} };class MyHashMap {public: /** Initialize your data structure here. */ const in.
2020-09-02 20:26:38
191
原创 每天一道Code 1372. 二叉树中的最长交错路径
代码思路DFS遍历每一个节点,它在父节点的交错路径上就代表它不可能作为根节点去dfs,而当前节点不在父节点的交错路径上就将它看做根节点dfs。在代码中使用的是0,1指代下一步前进方向。用全局变量存最大值。另外,在做完之后去看了眼题解和大佬们的思路,看到一个双百的题解思路和我差不多,我咋跑不出来双百,好气,改了改遍历顺序,玄学出来了一个过题时间208ms后面再怎么改都慢不了了(ノ ̄▽ ̄),更有趣的是交相同代码都要慢十几ms,再也没跑出来208ms,真·玄学过题。代码/** * Definit.
2020-09-01 17:17:57
210
原创 每天一道Code 144. 二叉树的前序遍历
代码思路递归的还是很简单的。题中强调是迭代。代码/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Solution {public: vo.
2020-08-31 19:22:14
196
原创 每天一道Code 79. 单词搜索
代码思路第一反应就是普通的dfs。但是可能真的是因为半年没敲代码,很久没敲dfs了,疯狂debug。最后莫名其妙发现是因为LeetCode没有给出输入函数,自己憨批把输入函数写挂了。所以一个简单bug一直在莫名其妙的地方找。吐了吐了。ヽ(#`Д´)ノ就是需要回溯的dfs,当搜索失败时需要恢复标记的点。可以在原数组标记,也可以直接建一个标记数组。第一遍出Bug的代码(已修正bug)class Solution {public: int dxy[4][2] = {{0,1},{0,-1},{.
2020-08-30 20:24:00
184
原创 每天一道Code 814. 二叉树剪枝
代码思路第一反应应该就是递归解决。当前节点需要删除的条件有三个:当前节点值为0左子树没有1右子树没有1代码/*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : val(0), left(nullptr), right(nullptr) {}* TreeNo.
2020-08-29 22:37:45
211
原创 每天一道Code 222. 完全二叉树的节点个数
代码思路满二叉树只有两种情况:左边是第一种情况:子树高度相同,则左子树一定为满二叉树。右边是另一种情况:子树高度不同,则右子树一定位满二叉树。代码/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right.
2020-08-28 15:36:46
140
原创 每天一道Code 面试题 04.03. 特定深度节点链表
代码思路简单层次遍历。代码/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; *//** * Definition for singly-linked list. .
2020-08-27 19:38:55
126
原创 每天一道Code 215. 数组中的第K个最大元素
代码思路最简单的就是排序一遍然后直接输出。时间复杂度就是排序的复杂度O(nlogn)O(nlogn)O(nlogn)优化就是使用快排思想,不全部排序,而是当找到的位置正好是要求的位置时,直接返回,否则通过判断K和当前位置的大小判断继续排序左边还是右边。这种思想最坏的情况时间复杂度等于直接排序输出的O(nlogn)O(nlogn)O(nlogn)。emmm平均时间复杂度不会证,又或者说太麻烦了懒得想。代码:class Solution {public: int quicksort(vect.
2020-08-25 17:10:12
129
原创 每天一道Code 102. 二叉树的层序遍历
代码思路bfs思想,因为直接遍历无法得到层次结构,因此,重新定义了一个结构体记录当前节点的高度。代码十分钟,debug两小时,leetcode的会员真贵,还是vscode手动debug,才发现建树都有点不会了。一个写顺手了的‘!’找了一个小时,我超勇的。(╬◣д◢)代码/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNod.
2020-08-24 18:55:28
739
原创 每天一道Code 面试题 04.04. 检查平衡性
简单题直接递归,通过子树的平衡性及高度得到当前节点的平衡性。时间花费还是比较大,但是懒得再优化。/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class S.
2020-08-24 16:29:11
121
1
原创 每天一道Code 23. 合并K个升序链表
代码思路:最傻的方法应该就是设一个ans,每次用第i个链表和ans合并,并存储在ans中,每个链表都合并一次。时间复杂度:设最长链表长度为n,所以第一次合并,ans也就是第一个链表,长度nnn,第二次合并,ans长度为2n2n2n,依次合并,第i个链表合并完ans长度为ininin,每次合并都是遍历一次,求和为∑i=1ki⋅n=k(k−1)2n\sum_{i=1}^{k}i·n=\cfrac{k(k-1)}{2}ni=1∑ki⋅n=2k(k−1)n 故时间复杂度O(k2n)O(k^2n)O(k2..
2020-08-23 19:02:54
1104
原创 每天一道Code 25. K 个一组翻转链表
代码思路K个一组翻转,那就想办法将K个节点放在一组。定义三个指针:locate定位要翻转的k节点个中最后一个,也就是翻转后的第一个。now定位翻转后的最后一个也就是当前的第一个。last定位的是这k个节点的前一个节点,方便插入操作。这样的话通过这三个定位指针我们就可以轻松实现翻转。详细的思路见代码注释。手绘图预警!通过结果还ok。具体代码:/** * Definition for singly-linked list. * struct ListNode { * i.
2020-08-22 17:19:50
116
原创 每天一道Code 面试题 02.04. 分割链表
解题思路:第一反应就是找一个中间点,小的扔一边,大的扔一边。顺手敲完麻烦的,再重新花了点时间简化。第一反应版本/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: ListNode.
2020-08-21 17:35:35
103
原创 每天一道Code 21. 合并两个有序链表
解题思路直接见代码注释。第一种常规思路,第二种递归。没系统学过C++。只能凭借平时打比赛积累的一点C++知识,顺带查一查资料来写代码,难受啊。练习注释的编写ing&代码风格重新调整ing/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode() : val(0), next(nullptr) {} * .
2020-08-20 17:12:26
125
原创 每天一道Code 19.删除链表的倒数第n个节点
简单算法(暴力)暴力很好想,没啥难度。扫一遍得到链表长度L。然后再扫一遍删第L-n个节点。没啥写的,代码难度看上去不难。一趟扫描就相当于找个人用长为n的绳子把你俩绑在一起,你不会走路了坐在轮椅上(0.0)。他走到终点,你也就走到倒数第n+1个节点的面前了,伸手就能拿掉第n个结点。整体上注意的点在于:你这两个指针,一个领头的leader也就是代码中的first到底走到哪里second才能刚好删除要删除的节点。万一要删除的是第一个结点怎么办。防止删除的是第一个节点:建立一个头结点。这样删除.
2020-08-19 18:50:51
111
原创 课设-数字图像处理GUI的设计最后一天
数字图像处理GUI的设计最后一天1 频谱分析1.1 频谱图function Spectrogram_Callback(hObject, eventdata, handles)axes(handles.axes2);x=(handles.img);if (ndims(x)==3) m=fft2(x(:,:,1)); y=fftshift(m); imshow(log(abs(y)),[]);else m=fft2(x); y=fftshift(m);
2020-06-03 21:21:13
904
原创 课设-数字图像处理GUI的设计第五天
数字图像处理GUI的设计第五天1 灰度图灰度图的大概意思就是让像素点矩阵中每一个像素点都满足R=G=B。在前面编辑选项卡中忘记了添加灰度图,在这里再加上。1.1 rgb2gray函数将RGB图像转化为灰度图使用方法I = rgb2gray(RGB)1.2 代码 & 图像在代码中只需要判断一下自己的图像是否为RGB图像,是否需要转化即可。axes(handles.axes2);if(ndims(handles.img) == 3) y=rgb2gray(handles.i
2020-05-27 15:50:33
1593
原创 课设-数字图像处理GUI的设计第四天
数字图像处理GUI的设计第四天1 翻转1.1 上下翻转1.1.1 ndims函数判断是否是彩色图,也就是等于3时,是彩色图,原本参考的大佬代码是比较老的版本,用的isrgb函数,但是我的2018a版本删除了,有报错,所以改成了ndiums函数。ndims(handles.img) == 31.1.2 flipud函数实现矩阵的上下翻转flipud(X);1.1.3 翻转后的图像代码:axes(handles.axes2);x=(handles.img);if(ndims(han
2020-05-20 16:40:17
802
1
原创 课设-数字图像处理GUI的设计第三天
数字图像处理GUI的设计第三天1. 图像保存1.1 uiputfile函数打开对话框以保存文件[file,path] = uiputfile 将选定或指定的文件路径返回到path。如果用户取消对话框,则MATLAB将返回0两个输出参数1.2 getimage函数获取坐标系中的图像文件数据 i=getimage(gcf); % 获取坐标系中的图像文件数据1.3 imwrite函数imwrite(i,'1.jpg')%保存图像为文件或者可以将图片保存到指定文件夹f=getframe(
2020-05-13 17:05:03
1396
原创 课设-数字图像处理GUI的设计第二天
数字图像处理GUI的设计第二天介绍的函数都只是简单运用,具体的使用方法网上有很多,就不详细写出了。1GUI设计在命令行窗口输入guide,打开GUI设计界面,选择blank。然后2 文件的打开2.1 uigetfile函数标准化打开选择文件对话框function [返回的文件名,返回的文件路径名,返回的文件类型] = uigetfile(文件类型设置,打开对话框的标题,默认指向...
2020-05-05 19:59:49
1761
2
原创 课设-数字图像处理GUI的设计第一天
数字图像处理GUI的设计第一天恩~如题,这次的课设是这个,我们只上学期学过一点点MATLAB,属实有点强人所难。但是出都出来了,还是做一做吧,不会的话只能是参考网上的大佬的设计了。但是尽量还是不直接用大佬的哈。因为还在复习考研,本来就因为疫情在家里学习的不是很舒服,学习进度堪忧,还要腾出时间忙学校的课程和课设。emmm第一天的记录是补的,凡事都要有头有尾!所以补个开头很重要。大致看了看...
2020-05-05 15:05:05
889
原创 OneNote+vscode+markdwon的综合方式记笔记
OneNote+vscode+markdwon的综合方式记笔记写在前面,这是我自己喜欢的记笔记的一种方式,麻烦归麻烦,但是找不到其他方式代替,以前不觉得记笔记的好,也不是很会记笔记。最近一直在使用OneNote记数学之类的笔记,从一开始的平板上手写,到后面自己写字比较丑,又喜欢上了打字记笔记,因为OneNote的随意排版真的很舒服,但是Markdown写数学公式真的比OneNote不知道舒服多...
2020-04-29 20:25:53
7049
3
数字图像处理gui的设计.zip
2020-06-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人