自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(87)
  • 资源 (1)
  • 收藏
  • 关注

原创 单目相机标定C++与Matlab实现

这次做了一个关于单目相机的标定实验。中间的具体的推导过程及问题,会慢慢附上。现在写多少算多少。一、相机标定的原理相机标定的目的?找出三维空间与二维图像的对应关系。1.坐标系在这里总共涉及到四个坐标系的变化。这四个坐标系分别是:(1)像素坐标系;(2)成像坐标系;(3)相机坐标系;(4)世界坐标系。1.像素坐标系像素坐标系是一个直角坐标系,其坐标轴为,其定义方式是:原点位...

2018-12-11 20:50:29 3410 7

原创 复习Linux

Linux常用命令文件处理统一为:命令 选项 参数1.目录处理ls -la -etc-a 可以看到隐藏文件(all)-l 长格式显示(long)ls -l所有者(zzn) 所属者(zzn) 4096(字节大小)ls -lh前面是d表示目录,-是文件,l是软链接,r,w,x分别为读、写、执行依次为user、group、other权限ls -iid号2.创建目录mkdir -p /temp/catkin_ws在一个文件夹下多个文件夹一起创建mkdir /temp

2021-04-24 16:52:22 178

原创 Ubuntu16.04安装PyCharm及PyCharm快捷方式添加

安装1.在这个网站下载Linux Pycharm专业版,嫌专业版麻烦可以下载社区版(免费)https://www.jetbrains.com/pycharm/download/#section=linux2.然后进入你下载文件的路径,默认是:/home/你的用户名/Downloads,右键安装包,点击“Extract Here”意思是提取到这里,相当于解压,或者还可以使用...

2020-11-10 09:59:12 7560 2

原创 【解决】pytorch:Expected more than 1 value per channel when training, got input size [1,8]

问题分析设置的batch_size=2,但是样本数除以batch_size是无法整除的。由于整个网络使用的BatchNorm操作都是需要多于一个数据计算平均值,可能是这里造成了错误。解决方法找到网络的 DataLoader 部分,将 drop_last 设置为 True。...

2020-10-30 22:08:42 434

原创 1024

1024

2020-10-24 16:03:14 141

原创 Pytorch卷积和反卷积计算方法

torch.nn.Conv2d def __init__(self, in_channels, out_channels, kernel_size, stride=1, padding=0, dilation=1, groups=1, bias=True, padding_mode='zeros'):Parametersin_channels (int) – Number of channels in the input i

2020-08-11 11:15:26 750

原创 【KITTI数据集】PointPillars点云3D目标检测结果的可视化

结果修改的是PointPillars这个网络模型,参考PointRCNN可视化部分,网络地址,目前只训练车辆的检测部分。工作:1.一开始框很多,修改了NMS;2.显示score比较高的框;000037.png预测结果,红色的是label,预测和label都画出了朝向。参考https://github.com/kuixu/kitti_object_vishttps://github.com/sshaoshuai/PointRCNNhttps://blog.csdn.net/tiatiat

2020-08-05 10:22:16 3010 12

原创 【KITTI数据集】bin转pcd格式

工作空间参考github地址:https://github.com/yanii/kitti-pcl/blob/master/src/kitti2pcd.cpphttps://blog.csdn.net/zengzeyu/article/details/79575702

2020-07-17 15:49:32 1184

原创 SSD.Pytorch运行问题汇总

SSD运行问题汇总地址环境配置train.py1.FileNotFoundError: [Errno 2] No such file or directory2.RuntimeError: randperm is only implemented for CPU3.images, targets = next(batch_iterator)4.RuntimeError: The shape of the mask [32, 8732] at index 0 does not match the shape

2020-07-14 15:40:04 868

原创 【one stage-经典检测网络】SSD:Single Shot MultiBox Detector

123

2020-07-08 20:20:14 344

原创 【two stage-经典检测网络】Faster R-CNN

损失函数:只考虑正样本。λ在后面进行测试,数据在表8,最终选择10。不带的是预测值,带*的是真值,带a的是anchor。训练RPN在一个图像中随机采样256个anchors,计算损失,控制正样本:负样本=1:1。从标准偏差为0.01的零均值高斯分布中绘制权重来随机初始化所有新层。...

2020-07-06 20:02:38 373

原创 【点云目标检测】PIXOR: Real-time 3D Object Detection from Point Clouds-PIXOR具体网络参数变化

'''block1 3x3 3x3'''nn.Conv2d(36,32,kernel_size=3,stride=1,padding=1,bias=False)nn.BatchNorm2d(32)nn.ReLU(inplace=True)nn.Conv2d(32,32,kernel_size=3,stride=1,padding=1,bias=False)nn.BatchNorm2d(32)nn.ReLU(inplace=True)'''block2-5 BackBone(Bottlene

2020-07-03 22:31:02 516

原创 Anaconda使用-导出/导入已有环境配置

最近用老师的电脑跑东西,需要重新配置环境,做个记录。1.导出环境conda env export --file environment.yaml2.导入环境conda env create -f environment.yaml

2020-06-29 14:16:12 1183

原创 sizeof和str的区别

总结:sizeof是一个操作符,strlen是库函数;sizeof的参数可以是数据的类型,也可以是变量,而strlen只能以结尾为’\0’的字符串作参数;编译器在编译时就计算出了sizeof的结果,而strlen必须在运行时才能计算出来;sizeof计算类型占用内存的大小,时间复杂度O(1);strlen计算字符串长度,时间复杂度O(N);strlen遇到’\0’停止,如果没有遇到,则可能出错。还是将测试代码放在这里。#include <iostream>using na

2020-06-28 11:27:21 895

原创 Pytorch设置随机种子【结果能复现】

最近训练只加了如下,发现每次的结果有点不一样。torch.manual_seed(1234)随即看了一下这方面的资料。一般来说需要设置如下:1.CuDNN在CuDNN后端运行时,必须设置另外两个选项:torch.backends.cudnn.deterministic = Truetorch.backends.cudnn.benchmark = FalseCopy警告影响精度在小数点后几位,可以不修改,确定性模式可能会对性能产生影响,具体取决于您的型号。2. Pytorchtorc

2020-06-22 11:25:04 1448

原创 Faster RCNN和SSD使用smoothL1函数【回归目标框】

smooth L1损失函数主要用来回归2D or 3D 的BBOX。smooth L1 loss能从两个方面限制梯度:当预测框与 ground truth 差别过大时,梯度值不至于过大;当预测框与 ground truth 差别很小时,梯度值足够小。如下:对x进行求导可以看到x比较小的时候,smooth L1的梯度也很小。然而,x比较大的时候,对x的梯度的绝对值上限就是1,很好控制了网络参数,避免梯度爆炸。参考faster RCNN 和 SSD 中为什么用smooth L1 loss,和

2020-06-13 11:13:04 365

原创 github无法打开或打开后图片无法加载

github无法打开记得以前改过hosts文件,但是还是无法登录。应该是网站解析换了。解决方法,先登录https://ipchaxun.com/输入github.com在C:\Windows\System32\drivers\etc的host文件末尾加上就行了。#github140.82.114.4 github.com140.82.114.3 github.com如果失效了又去网站查一查。github打开后图片显示不出同样用刚才的方法,查询当前解析加上即可151.101.64

2020-06-09 14:42:31 749 2

原创 Ubuntu16.04-Linux-搜狗输入法乱码

遇到几次这个问题了,还是记录下sudo killall fcitx

2020-06-05 09:39:55 382

原创 python绘制Loss和Acc曲线+读取txt和log文件

log文件如下所示:代码def read_log(filename): fp=open(filename) for line in fp.readlines(): train_loss=line[-27:-18] train_acc=line[-8:] with open('test.txt','a') as fp2: fp2.write(train_loss+train_acc) fp.close()

2020-05-24 17:31:50 5726 8

原创 【KITTI数据集】Velodyne Point Cloud-激光雷达点云bin文件读取和显示-Open3D

官方文档0.安装在anaconda环境下:conda install -c open3d-admin open3dPython环境下:pip install open3d-python1.点云的读取和显示import osimport numpy as npimport structimport open3ddef read_bin_velodyne(path): pc_list=[] with open(path,'rb') as f: cont

2020-05-12 20:09:28 5057 12

原创 Python实现K-Means算法

介绍K-Means是一种经典的无监督聚类算法。可以将N个样本划分到K个簇中,使得相似的样本能尽量分到同一个类中。其衡量相似度的计算方法,是欧式距离。优点:速度快。原理简单。缺点:3. 需要确定K值,数据多的话一般可以取多次K实验。4. 对异常点很敏感。5. 初始点的选择可能有影响。6. 代码import numpy as npclass K_Means(object)...

2020-05-07 15:42:07 260

原创 【one stage-经典检测网络】YOLO v1

原文整体网络结构输入图像尺寸resize到448X448,作用是将尺寸固定。(适应不同大小的图片)24个卷积层和2个全连接层,最后输出的特征图为7X7X30。没有类似Anchor的预选框,没有RPN结构,直接预测物体的类别和种类。最后的特征图设计的有意思。YOLO v1相当于将输入图片分成7X7的区域。这里每个点的通道数是30,代表预测30个特征。输出组成SXSX(B*5+C...

2020-05-01 10:32:56 337

原创 LeetCode【做题】

目录1.LeetCode:349. 两个数组的交集—————————————————————————————————1.LeetCode:349. 两个数组的交集时间:20200426题目给定两个数组,编写一个函数来计算它们的交集。示例 1:输入: nums1 = [1,2,2,1], nums2 = [2,2]输出: [2]示例 2:输入: nums1 = [4,9,5],...

2020-04-26 17:17:24 619

原创 ModelNet40数据集-off文件格式

wiki上的解释

2020-04-16 11:11:39 1933 2

原创 LeetCode:415. 字符串相加

题目LeetCode:415. 字符串相加给定两个字符串形式的非负整数 num1 和num2 ,计算它们的和。注意:num1 和num2 的长度都小于 5100.num1 和num2 都只包含数字 0-9.num1 和num2 都不包含任何前导零。你不能使用任何內建 BigInteger 库, 也不能直接将输入的字符串转换为整数形式。代码class Solution {publ...

2020-04-12 16:08:19 132

原创 LeetCode:387. 字符串中的第一个唯一字符

题目LeetCode:387. 字符串中的第一个唯一字符给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。案例:s = “leetcode”返回 0.s = “loveleetcode”,返回 2.注意事项:您可以假定该字符串只包含小写字母。代码1.暴力法class Solution {public: int firstUniqC...

2020-04-11 23:46:24 134

原创 C++【基础】构造函数和析构函数

对象的初始化和清理生活中我们买的电子产品都基本会有出厂设置,在某一天我们不用时候也会删除一些自己信息数据保证安全C++中的面向对象来源于生活,每个对象也都会有初始设置以及 对象销毁前的清理数据的设置。1.1构造函数和析构函数对象的初始化和清理也是两个非常重要的安全问题​ 一个对象或者变量没有初始状态,对其使用后果是未知​ 同样的使用完一个对象或变量,没有及时清理,也会造成一定的安全问题...

2020-04-09 17:54:40 130

原创 C++【基础】const修饰指针

const修饰指针const修饰指针有三种情况const修饰指针 — 常量指针const修饰常量 — 指针常量const即修饰指针,又修饰常量示例:int main() { int a = 10; int b = 10; //const修饰的是指针,指针指向可以改,指针指向的值不可以更改 const int * p1 = &a; p1 = &b; //正...

2020-04-09 15:29:03 152

原创 LeetCode:383. 赎金信【复习map】

题目LeetCode:383. 赎金信给定一个赎金信 (ransom) 字符串和一个杂志(magazine)字符串,判断第一个字符串ransom能不能由第二个字符串magazines里面的字符构成。如果可以构成,返回 true ;否则返回 false。(题目说明:为了不暴露赎金信字迹,要从杂志上搜索各个需要的字母,组成单词来表达意思。)注意:你可以假设两个字符串均只含有小写字母。can...

2020-04-05 21:03:41 146

原创 LeetCode:448. 找到所有数组中消失的数字

题目LeetCode:448. 找到所有数组中消失的数字给定一个范围在 1 ≤ a[i] ≤ n ( n = 数组大小 ) 的 整型数组,数组中的元素一些出现了两次,另一些只出现一次。找到所有在 [1, n] 范围之间没有出现在数组中的数字。您能在不使用额外空间且时间复杂度为O(n)的情况下完成这个任务吗? 你可以假定返回的数组不算在额外空间内。示例:输入:[4,3,2,7,8,2...

2020-04-05 17:03:33 96

原创 LeetCode:628. 三个数的最大乘积

题目LeetCode:628. 三个数的最大乘积给定一个整型数组,在数组中找出由三个数组成的最大乘积,并输出这个乘积。示例 1:输入: [1,2,3]输出: 6示例 2:输入: [1,2,3,4]输出: 24注意:给定的整型数组长度范围是[3,104],数组中所有的元素范围是[-1000, 1000]。输入的数组中任意三个数的乘积不会超出32位有符号整数的范围。代码cla...

2020-04-05 16:10:30 111

原创 LeetCode:289. 生命游戏

题目LeetCode:289. 生命游戏根据 百度百科 ,生命游戏,简称为生命,是英国数学家约翰·何顿·康威在 1970 年发明的细胞自动机。给定一个包含 m × n 个格子的面板,每一个格子都可以看成是一个细胞。每个细胞都具有一个初始状态:1 即为活细胞(live),或 0 即为死细胞(dead)。每个细胞与其八个相邻位置(水平,垂直,对角线)的细胞都遵循以下四条生存定律:如果活细胞周围...

2020-04-02 17:13:28 173

原创 LeetCode:189. 旋转数组

题目LeetCode:189. 旋转数组给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数。示例 1:输入: [1,2,3,4,5,6,7] 和 k = 3输出: [5,6,7,1,2,3,4]解释:向右旋转 1 步: [7,1,2,3,4,5,6]向右旋转 2 步: [6,7,1,2,3,4,5]向右旋转 3 步: [5,6,7,1,2,3,4]示例 2:...

2020-04-01 17:15:25 158

原创 LeetCode:283. 移动零

题目LeetCode:283. 移动零给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。示例:输入: [0,1,0,3,12]输出: [1,3,12,0,0]说明:必须在原数组上操作,不能拷贝额外的数组。尽量减少操作次数。代码一class Solution {public: void moveZeroes(vector&l...

2020-03-31 16:23:48 115

原创 LeetCode:912. 排序数组

题目LeetCode:912. 排序数组给你一个整数数组 nums,请你将该数组升序排列。示例 1:输入:nums = [5,2,3,1]输出:[1,2,3,5]示例 2:输入:nums = [5,1,1,2,0,0]输出:[0,0,1,1,2,5]提示:1 <= nums.length <= 50000-50000 <= nums[i] <= 500...

2020-03-31 15:02:11 231

原创 LeetCode:661. 图片平滑器

题目LeetCode:661. 图片平滑器包含整数的二维矩阵 M 表示一个图片的灰度。你需要设计一个平滑器来让每一个单元的灰度成为平均灰度 (向下舍入) ,平均灰度的计算是周围的8个单元和它本身的值求平均,如果周围的单元格不足八个,则尽可能多的利用它们。示例 1:输入:[[1,1,1],[1,0,1],[1,1,1]]输出:[[0, 0, 0],[0, 0, 0],[0, 0...

2020-03-30 22:27:40 224

原创 LeetCode:67. 二进制求和

题目LeetCode:67. 二进制求和给定两个二进制字符串,返回他们的和(用二进制表示)。输入为非空字符串且只包含数字 1 和 0。示例 1:输入: a = “11”, b = “1”输出: “100”示例 2:输入: a = “1010”, b = “1011”输出: “10101”代码class Solution {public: string addBinary(...

2020-03-30 21:37:42 139

原创 LeetCode:面试题62. 圆圈中最后剩下的数字

题目LeetCode:面试题62. 圆圈中最后剩下的数字0,1,n-1这n个数字排成一个圆圈,从数字0开始,每次从这个圆圈里删除第m个数字。求出这个圆圈里剩下的最后一个数字。例如,0、1、2、3、4这5个数字组成一个圆圈,从数字0开始每次删除第3个数字,则删除的前4个数字依次是2、0、4、1,因此最后剩下的数字是3。示例 1:输入: n = 5, m = 3输出: 3示例 2:输入...

2020-03-30 20:40:04 124

原创 LeetCode:1162. 地图分析+模板链接

题目LeetCode:1162. 地图分析你现在手里有一份大小为 N x N 的『地图』(网格) grid,上面的每个『区域』(单元格)都用 0 和 1 标记好了。其中 0 代表海洋,1 代表陆地,你知道距离陆地区域最远的海洋区域是是哪一个吗?请返回该海洋区域到离它最近的陆地区域的距离。我们这里说的距离是『曼哈顿距离』( Manhattan Distance):(x0, y0) 和 (x1,...

2020-03-29 22:28:21 235

原创 LeetCode:914. 卡牌分组+复习最大公约数和最小公倍数

题目LeetCode:914. 卡牌分组给定一副牌,每张牌上都写着一个整数。此时,你需要选定一个数字 X,使我们可以将整副牌按下述规则分成 1 组或更多组:每组都有 X 张牌。组内所有的牌上都写着相同的整数。仅当你可选的 X >= 2 时返回 true。示例 1:输入:[1,2,3,4,4,3,2,1]输出:true解释:可行的分组是 [1,1],[2,2],[3,3],...

2020-03-27 16:16:22 291

ssd_pytorch.yaml

单阶段目标检测SSD网络,Pytorch版本配置,使用环境在Ubuntu16.04下。这里主要使用的是anaconda导出的yaml配置文件。主要上传到这里自己用,免得丢了。随便设置了个积分数。(大家不要下载,github有对应的)

2020-07-14

空空如也

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

TA关注的人

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