- 博客(50)
- 资源 (1)
- 收藏
- 关注
原创 win10+vscode+opencv c++环境
1. 下载MinGW链接MinGW,我是下载的x86_64-8.1.0-release-posix-seh-rt_v6-rev0,解压后放到安装的目录中,将D:\ProgramFile\mingw64\bin配置到系统变量Path路径下。2. 下载OpencvOpencv下载,下载的版本需要与MinGw和Cmake版本对应。我下载的是opencv-4.5.2-vc14_vc15,然后在下面路径创建一个文件夹mingw。3. 下载CmakeCMake下载,我下载的是这个cmake-3.18.4-win64-x
2022-07-07 14:41:47
1237
1
原创 gnutls_handshake() failed: The TLS connection was non-properly terminated. 解决
ubuntu16.04 用git clone代码时出现gnutls_handshake() failed: The TLS connection was non-properly terminated. 查了许多方法,最后是git config --global --unset https.https://github.com.proxygit config --global --unset http.https://github.com.proxy...
2021-12-07 17:16:14
1076
原创 Go调用自定义包报错build command-line-arguments: cannot find module for path XXXXXX
有两个文件src/main.gopackage mainimport ( "fmt" "./add")func main() { res := add.Add(10, 20) fmt.Println(res)}src/add/add.gopackage addfunc Add(a int ,b int) int { return a+b}想要在main.go文件里调用add.go包里的函数,报了各种奇怪的错误build command-line-ar.
2021-09-20 12:05:18
1959
1
原创 ((1llu << 33) & (1 << 31)) 的值
1. 1LLu 表示unsigned long long 类型,8字节;2. 编译器将1默认为int型[-2^31,2^31-1],1<<31 将1左移31位,将符号位变为1;3. 将int扩展成unsigned long long 类型时,是符号位扩展,高位补1.结果:所以最后结果为2^33如果改成下面的代码,则结果为0....
2021-09-03 10:12:55
803
原创 并发编程学习一
给定一组数据,以最快速度处理#include <thread>#include <mutex>#include <iostream>#include <vector>#include <math.h>using namespace std;/* 给定一组数据,用并发最快进行处理 *///这里是求0-MAX每个整数的平方累加和static const int MAX=10e8;static double sum=0;stat
2021-09-01 11:58:38
145
原创 实现一个string类
1.实现一个string类,要求有构造函数,拷贝构造函数、复制运算符、析构函数class String{public: String(const char *str=nullptr){ if(nullptr == str){ m_data=new char[1]; m_data[0]='\0'; }else{ int length=strlen(str); m_da
2021-08-17 14:30:27
388
原创 dfs-网格中的路径问题
1. 机器人的路径有个机器人坐在一个网格的左上角,网格 r 行 c 列。机器人只能向下或向右移动,但不能走到一些被禁止的网格(有障碍物)。设计一种算法,寻找机器人从左上角移动到右下角的路径。分析:起始点确定(左上角),目标点确定(右下角),只能向下或向右移动,只需求其中一条路径。即满足条件就可返回。class Solution {public: vector<vector<int>> pathWithObstacles(vector<vector<
2021-08-10 14:06:27
409
原创 刷题-最长上升子序列
给你一个整数数组 nums ,找到其中最长严格递增子序列的长度。并输出该子序列,如果有多个子序列,则输出字典序最小的一个。子序列是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序。例如,[3,6,2,7] 是数组 [0,3,1,6,2,2,7] 的子序列。输入:nums = [10,9,2,5,3,7,101,18]输出:4解释:最长递增子序列是[2,5,7,101], [2,3,7,101],[2,3,7,18]...长度为 4 输出[2,3,7,18]解法:贪心
2021-08-08 15:57:44
143
原创 面试题-二维数组合并、滑动窗口
给定一个二维数组,二维数组里的每个数组都有序,将它们合并成一个有序的一维数组。如:array={{2,3,4},{1,2},{6,9,10,12}}解决:多路归并#include <bits/stdc++.h>using namespace std;//合并两个有序数组vector<int> mergeTwo(vector<int>& leftarr, vector<int>& rightarr){ int lenL=l
2021-07-28 09:39:38
355
原创 C++多线程交替打印1-100
#include <thread>#include <iostream>#include <mutex>#include <condition_variable>std::mutex data_mutex;std::condition_variable data_var;bool flag=true;int i=1;#define MAXNUM 10void printA(){ //i=9时就结束循环 while(i<
2021-07-27 16:18:55
1306
原创 ubuntu vscode xx.h没有这个文件或目录
自定义头文件xx.h放在include文件夹下vscode无法找到,ctrl+ship+B,打开tasks.json,在args中添加头文件路径,如下图。“I”(大写):编译程序按照指定路径进去搜索头文件。如果有多个cpp文件要编译,将file的值替换为{file}的值替换为file的值替换为{workspaceFolder}/*.cpp...
2021-07-27 16:10:30
5381
3
原创 面试题之大数问题
1.亿级数据N,整数,进行排序,有内存限制xMB分文件+归并(1)确定需要分的文件数m,N/m*4B<=xMB(2)对小文件中数据排序(3)多路归并将每个文件最开始的数读入(由于有序,为该文件最小数),存放在m个大小的data数组中;选择data数组中最小的数min_data,及其对应的文件索引index;将min_data写入results文件中,更新data数组(根据index读取该文件的下一个数);全部数据读取完成后结束。2.找出100亿个URL中重复的URL,每个URL占64
2021-07-24 16:55:55
219
原创 ubuntu cmake升级
若用 cmake 编译过 ros ,千万别傻乎乎地随便找个帖子执行下面的命令:sudo apt-get autoremove cmake这样会把之前编译的ros包都给卸载。比较简单的方法是下载 cmake 压缩包,直接建立软链接覆盖掉系统的 cmake如用wget下载3.13版本:cd ~/Downloadwget https://cmake.org/files/v3.13/cmake-3.13.0-Linux-x86_64.tar.gztar -xzvf cmake-3.13.0-Lin.
2021-05-19 10:12:25
397
1
原创 ubuntu访问github慢解决办法
1.进入终端命令行模式,输入sudo vim /etc/hosts2.在IP lookup网站上查找github.com和github.global.ssl.fastly.net域名的ip地址3.在hosts文件中添加140.82.113.4 github.com199.232.69.194 github.global.ssl.fastly.net4.保存退出,更新DNS缓存,输入sudo /etc/init.d/networking restart...
2021-03-31 13:29:23
581
原创 voxblox++源码阅读(一)
depth_segmentation节点包的结构源码ros消息时间同步与回调包的结构depth_segmentation源码depth_segmentation_node.cppmain()函数定义类DepthSegmentationNode对象,会在构造对象时初始化成员列表:depth_camera_()rgb_camera_()params_()camra_tracker_(depth_camera_, rgb_camera_)depth_segmenter_(depth_ca
2021-03-23 16:09:33
581
原创 求最小生成树--普里姆算法和kruskal算法
这里写目录标题概念算法概念生成树:一个连通图的生成树是一个极小的连通子图,它含有图中全部的n个顶点,但只有足以构成一棵树的n-1条边。最小生成树:构造连通网的最小代价生成树算法算法思想:假设N=(V, {E})是连通网,TE是N上最小生成树中边集合。算法从U={a}, TE={}开始。重复下述操作:寻找从与a有关联的边中,权重最小的那条边,并且该边的终点b在顶点集合:(V-U)中,我们也把b加入到集合U中,并且输出边(a,b)的信息,这样我们的集合U就有:{a,b}。然后,我们寻找与a关联和b关联
2021-01-21 16:45:30
148
原创 数据集读取中的Image.open与cv2.imread区别在哪里?
最近在跑PSPNet语义分割的网络时,用作者给的源代码运行出现错误。错误为:/opt/conda/conda-bld/pytorch_1565272271120/work/aten/src/THCUNN/SpatialClassNLLCriterion.cu:103: void cunn_SpatialClassNLLCriterion_updateOutput_kernel(T *, T *, T *, long *, T *, int, int, int, int, int, long) [with
2021-01-12 16:36:33
604
原创 ubuntu根目录磁盘空间扩容,一次成功!
前言很久以前装的双系统,不知道看了哪篇教程,给我的根目录分区只分了25G,然后随着软件越装越多,终于在安装ros的时候给我报内存小的错误了。一开始非常不愿意扩容,因为怕系统崩了。然后用下面三个命令清除了一些不必要的东西,腾出了0.5G的空间。但想着这点空间远远不够,于是还是决定扩容,扩失败了大不了重装系统。参考链接1参考链接2sudo apt-get autoclean //已经删除了的软件包的.deb安装文件从硬盘中删除掉sudo apt-get autoremove //删除为了满足其他软件
2021-01-07 15:46:22
11606
8
原创 ubuntu16 ORB_SLAM2配置
目录标题安装依赖ORB_SLAM2安装注意:首先要创建ros工作空间mkdir ~/catkin_SLAM/srccd ~/catkin_SLAMcatkin_make进入caktin_SLAM/src 中安装下面依赖安装依赖1、Pangolin官方链接https://github.com/stevenlovegrove/Pangolin依赖:sudo apt-get install libglew-dev libpython2.7-dev libboost-dev libboost-
2020-12-12 20:52:16
204
原创 ubuntu突然报错:NVIDIA-SMI has failed because it couldn‘t communicate with the NVIDIA driver
我一段时间没有用电脑,今天开机突然显卡没有了。我重装了一遍之后显卡还是没有出来。网上查了一下,先用nvcc -V查看一下驱动还在不在,发现我的是还在的。可能是内核更新了,与原来的版本不匹配造成的。按照网上的方面,两行命令可以解决这个问题,亲测有效。sudo apt install dkmssudo dkms install -m nvidia -v 450.66其中450.66是你自己电脑安装的驱动版本,可以用下面命令查到:ls /usr/src | grep nvidia...
2020-10-27 10:15:41
345
原创 Paddle图像分割7日打卡营学习总结
Paddle图像分割7日打卡营学习总结1.FCN1.1 什么是FCN?1.2 FCN网络结构1.3 feature map上采样2. U-Net3. PSPNet4. DeepLab5.总结1.FCNFCN论文地址:https://arxiv.org/abs/1411.4038代码地址:https://github.com/shelhamer/fcn.berkeleyvision.org1.1 什么是FCN?对于一般的分类CNN网络,都会在网络的最后加入全连接层,经过softmax后就可以获得类别
2020-10-26 10:27:08
193
1
原创 ubuntu16不小心升级到18后补救
目录标题1.引言2.ubuntu18降级1.引言最近在ubuntu上整些东西,一不小心就输入sudo apt upgrade(跟update不一样哦),然后重启之后突然进入grub rescue了,我真是害怕这种黑屏问题,网上的解决方法对我不管用,搁以前我就是直接重装系统!但是系统崩多了之后也就知道是怎么回事了,造成我这种情况的原因是引导不见了。这样可以准备一个ubuntu的u盘启动盘,重启进入(开启了u盘启动)试用ubuntu,然后就是引导修复。2.ubuntu18降级修复完引导之后进入ubunt
2020-09-29 20:55:21
3567
2
原创 ubuntu16配置ElastiFusion--失败的尝试
这里写目录标题1.准备工作1.准备工作1.1 硬件配置CPU 8GBNvidia gerforce 940Mwin10+ubuntu16双系统,已经安装了cuda10.21.2 基本库依赖参照elasticfusion的GitHub中read.me以及build.sh其他参考:参考1参考2sudo apt-get install -y cmake-qt-gui git build-essential libusb-1.0-0-dev libudev-dev freeglut3-dev
2020-09-25 20:19:17
247
原创 pointnet代码复现(一)
目录1.前提准备2.pointnet分类网络1.前提准备首先说一下我的电脑配置软件:linux16.04anaconda+python3.6+tensorflow1.14硬件:cpu 8GB根据官方文档:pointnet.github需要先安装h5py:sudo apt-get install libhdf5-devsudo pip install h5py然后下载pointnet源码,下面具体讲复现步骤。2.pointnet分类网络2.1 训练分类用的数据集为modeln
2020-09-19 19:33:55
2565
7
原创 回溯DFS法
1.抢占棋盘在下棋过程中,如果白子或者黑子将对方全部围住,则所围区域中的棋子将更换颜色。用1表示黑子,0表示白子,给出如下实例:1111010111010010因为第2行第3列的白子(0)和第三行第3列的白子(0)全被黑子包围,需要将这两个0变成1.结果变为:1111011111110010为了简化问题,只需找出所有被黑子围住的白子。输入描述:单组输入。第一行:n(n<=1000),表示棋盘大小接下来的n行输入n×n的0/1矩阵输出描述:输出转换之后的0/1矩阵
2020-09-14 22:07:08
633
原创 Pointnet语义分割任务在S3DIS数据集上复现
目录标题1.环境搭建2.训练三级目录1.环境搭建ubuntu16.04 双显卡nvidia gtx1080/quadro M4000anaconda3创建虚拟环境 python=3.7cuda10.0 cudnn7.65tensorflow-gpu1.14 安装命令 ——>pip install -i https://pypi.mirrors.ustc.edu.cn/simple/ tensorflow-gpu==1.14.02.训练这里主要是pointnet的语义分割代码
2020-09-14 10:50:45
3452
20
原创 ubuntu16.04配置cloudcompare
目录标题1.准备工作2.源码编译1.准备工作首先到cloudcompare官网查看各个系统的安装说明,其中linux可以用snap安装,但据说安装不成功,这里采用源码编译的方式,可以参照BUILD.md有更为详细的介绍。1.1 克隆整个源码git clone --recursive https://github.com/cloudcompare/CloudCompare.git1.2 安装Cmake(>=3.0)到cmake官网下载,我的是cmake-3.17.4-Linux-x86_
2020-09-14 10:09:47
1985
1
原创 win10安装ubuntu16.04双系统
目录标题1.磁盘分区2.安装3.引导修复4.添加源1.磁盘分区因为电脑问题重装了好几次ubuntu系统了,这里记录一下,以供自己后续查找。如果以前安装过ubuntu,需要在磁盘管理中删除原来的分区。分区大小根据自己的内存来,我的计算机有600多g,所以分给ubuntu 200g。右键我的电脑->管理->磁盘管理,选择一个逻辑分区盘,点击删除,就会出现如下图所示的可用空间。2.安装假装你手里已经有一个制作好的启动u盘,插入电脑,进入bios设置u盘启动。就可以看到下面图所示,点击安装
2020-09-03 19:45:19
162
原创 Windows10下vscode运c++程序没有输出
按照官网的配置,task.json,launch.json,c_cpp_properties.json都是跟官网的教程一模一样的,然鹅我运行程序时就是没有输出,调试时窗口一闪而过。在网上找到了解决思路:看看环境变量有没有设置错误。我当时设置时将mingw64/xx/bin的放在系统路径中,其实要放在用户路径下。我两个路径都放了,vscode就可以输出了。...
2020-09-01 16:16:39
5381
3
原创 ubuntu16卸载及安装新的nvidia驱动,cuda,cudnn
目录标题1.卸载nvidia driver2.卸载旧的cuda,安装新cuda10.23.卸载旧cudnn,安装新cudnn4.配置对应的pytorch-gpu1.卸载nvidia driver我的电脑配置:显卡:Geforce gtx 650ubuntu16.04之前安装了nvidia384.130,cuda9.0和cudnn7,在复现pointnet时提示driver版本过太老了,只能卸载重装。卸载驱动:sudo apt-get remove --purge nvidia*安装新
2020-08-19 11:33:25
532
原创 ubuntu16火狐下载文件提示“无法保存,因为无法读取源文件”
回学校啦,要将我实验室台式电脑配置深度深度学习环境。我怀疑这台电脑要将我劝退学!ubuntu崩了一次,然后只能重装。重装完了之后准备安装cuda和cudnn,谁知道在firefox不能下载文件,报错:`无法保存,因为无法读取源文件,请稍后再试,或者联系服务器管理员。在网上百度了各种方法,甚至下载了一个谷歌(谷歌提示失败,网络错误)折腾一上午,换了个源就好了,奇奇怪怪。1、备份原来的源sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
2020-08-12 15:27:08
1926
原创 ubuntu16搭建深度学习环境(三)——安装pytorch-gpu
目录标题1、准备工作2、创建虚拟环境3、安装pytorch4、验证pytorch下是否可用cuda和cudnn1、准备工作(1)安装nvidia驱动:ubuntu16搭建深度学习环境(一)——安装nvidia驱动(2)安装cuda和cudnn:ubuntu16搭建深度学习环境(二)——安装cuda和cudnn(3)安装Anaconda:ubuntu16安装Anaconda32、创建虚拟环境首先添加镜像源:conda config --add channels https://mirrors.t
2020-07-07 09:54:43
314
3
原创 ubuntu16安装Anaconda3
目录标题1、引言之前电脑装过anaconda3,但是更新python之后再创建新环境老是报错:CondaDependencyError: Cannot run solver. No functioning SAT implementations available试过这个网站的解决方法https://github.com/conda/conda/issues/8418,还是没有成功,索性卸载重装一遍。卸载anaconda3:rm -rf anaconda32、Anaconda安装到清华源
2020-07-07 09:07:18
1018
原创 ubuntu16搭建深度学习环境(二)——安装cuda和cudnn
目录标题1、下载对应的CUDA2、安装CUDA3、测试CUDA是否安装成功4、安装cudnn5、检查cudnn版本1、下载对应的CUDA前提nvidia驱动已安装好,查看教程一:查看cuda和驱动的对应(如图):官方cuda和驱动对应我安装的驱动是440.100,所以应选择CUDA10.2.89。到CUDA下载,拉到页面最底下选择download now,可以看到旧的cuda版本(如图)。2、安装CUDAquick start guide选择CUDA Toolkit10.2,看到下载页面如下
2020-07-06 18:01:03
535
原创 ubuntu16搭建深度学习环境(一)——安装nvidia驱动
目录标题1、查看电脑显卡2、下载对应显卡的驱动3、禁用nouveau4、安装NVIDIA驱动5、查看是否安装成功参考链接:添加链接描述1、查看电脑显卡lshw -c video结果可以看到自己的电脑显卡型号,我的笔记本电脑显卡是Geforce 940M2、下载对应显卡的驱动NVIDIA官网:download drivers搜索显卡需要的驱动型号并下载。从结果可以看到我的驱动版本是440.100再次确认,可以使用以下命令查看能够使用的驱动:ubuntu-drivers devices
2020-07-06 16:09:42
466
原创 ubuntu16安装opencv与python交互
一. 本地环境我的ubuntu中,有python2.7和3.5,后来安装anaconda3时又安装了python3.6。之前电脑安装过opencv3.2,c++编译器可以include,但是python编译器无法import。看这个解释:https://blog.csdn.net/wd1603926823/article/details/79445000可能是因为当时编译安装时没有选择几个选项。由于之前的opencv是在我安装anaconda3之前,所以其安装的库文件位置没有在anaconda管理之
2020-06-15 08:47:53
247
原创 windows10用anaconda创建环境出现错误CondaHTTPError: HTTP 000 CONNECTION FAILED
最近准备弃坑tensorflow学习pytorch,之前用anaconda安装创建过一个tensorflow的虚拟环境,然后现在创建pytorch虚拟环境竟然出现了错误,就很奇怪。然后开启了各种搜索之路。一.我的错误以管理员身份打开Anaconda Promt,输入:conda create -n pytorch python=3.6出现如下错误1、raise Response304ContentUnchanged() conda.core.subdir_data.Response304Conte
2020-06-05 22:54:25
890
原创 ubuntu16.04安装Realsense D435i驱动
目录标题一.前提准备二、source code手动安装三.packages方式安装四、测试安装成功一.前提准备1.查看ubuntu内核:uname -r支持的内核有: supported kernel version (4.[4,8,10,13,15,16]]2.查看cmake版本:cmake -v据说要升级到3.6以上,但我的是3.5,暂时没升级。二、source code手动安装1.下载source codegit clone方式git clone https://github.c
2020-05-30 10:58:19
3202
原创 注意力机制CBAM代码实现(续篇)
点这里查看上篇文章Github:kobiso/CBAM-tensorflow下面这个代码是再通道注意力模块时,将平均和最大池化后得到得描述子分别输入MLP,从代码中也可以看到连个描述子得MLP权重共享。def cbam_block(input_feature, index, reduction_ratio=8): with tf.variable_scope('cbam_%s' % index): attention_feature = channel_attention(in
2020-05-11 22:17:01
7407
9
CBAM_MNIST.py
2020-05-15
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人