![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
笔记
文章平均质量分 50
liuyu进阶
读研小菜鸡
展开
-
动态规划和递归经验分享
动态规划和递归经验分享主要参考的是知乎大佬,我只是快乐的搬运工。动态规划;https://zhuanlan.zhihu.com/p/91582909递归:https://mp.weixin.qq.com/s/mJ_jZZoak7uhItNgnfmZvQ原创 2021-05-09 19:20:56 · 147 阅读 · 0 评论 -
vector及make_pair sort相关用法
vector及make_pair sort相关用法vector常用方法使用vector时,要导入include< vector > 头文件。1.push_back 将数据放入vector中2.pop_back 去掉末尾元素3.at 得到对应下标的元素4.begin 得到数组头的指针5.end 得到数组的最后一个单元+1的指针6.front 返回数组第一个元素7.back转载 2021-05-09 10:14:12 · 655 阅读 · 0 评论 -
初次了解ListNode,针对ListNode的理解及C语言中.和->区别
参考https://blog.csdn.net/qq_38271904/article/details/104603307关于ListNodepublic class ListNode{ int val; ListNode next; //链表指向的下一个值的指针 ListNode(int x){val = x;} //这个方式赋值}我想到的几点事项定义链表ListNode时,1.链表的首个值不能为0,当首个参数为0时,代表着链表为空。只需要定义一个转载 2021-04-28 20:51:38 · 5407 阅读 · 0 评论 -
传参时 const string& 相对 const string 有哪些优势?
传参时 const string& 相对 const string 有哪些优势?C++中值传递和引用传递的方式。C++的值传递(pass-by-value),是从调用的地方把值复制一遍传给函数,这样做有两个问题,第一,需要将实参拷贝到形参处,形成实参的副本,有时间和空间的开销,若实参为结构体或者类的话,那么时空开销将会非常大;第二、函数中对实参副本的修改并不会影响到函数调用位置实参的值。C++的引用传递(pass-by-reference),一方面,参数传递的是把实参的地址拷贝到形参,这样形参转载 2021-03-18 11:33:35 · 403 阅读 · 0 评论 -
在Qt中使用switch case语句抓取QString类型
在Qt中使用switch case语句抓取QString类型在编写Qt程序时,发现switch case 无法直接抓取QString类型进行比较。在网络上总结了两种方法:参考:https://blog.csdn.net/qq_39404112/article/details/1053845171.使用了QStringList进行操作使用QStringList插入List的顺序对应case语句的0,1,……QStringList stringList;stringList << "原创 2021-03-07 22:09:07 · 6114 阅读 · 0 评论 -
QT creator 代码中有中文,提示常量中有换行符解决方案
提示常量中有换行符在写qt程序时,经常报错“常量中有换行符”导致无法编译成功。解决方法第一步:打开一个项目,工具-选项-文本编辑器,在文本编辑器界面的文本编码地方选择默认编码选择UTF-8;UTF-8 BOM选择 如果编码是UTF-8则添加;做完以上操作后点击应用-OK;第二步:菜单栏点击"编辑",选择“select encoding”,在文本编码界面选择 UTF-8,然后点击按编码保存。这一步很重要。第三步:程序中添加#pragma execution_character_set("u原创 2021-01-09 11:41:20 · 4191 阅读 · 7 评论 -
Qt命名规范和常用快捷键
Qt命名规范和常用快捷键Qt命名规范类名 首字母大写,单词和单词之间首字母大写。函数名 变量名称 首字母大写,单词和单词之间首字母大写。常用快捷键注释:ctrl+/运行:ctrl+r编译:ctrl+b字体缩放:ctrl+鼠标滚轮查找:ctrl+f整行移动:ctrl+shift+箭头帮助文档:F1自动对齐:ctrl+i同名之间的.h和.cpp切换:F4...原创 2021-01-09 10:23:29 · 249 阅读 · 0 评论 -
c++头文件防卫式声明
c++头文件防卫式声明实例:添加两个头文件head1.h,head2.h在两个头文件中分别定义两个全局变量:int g_globalh1 = 8;int g_globalh2 = 5;主程序中添加头文件声明:#include "head1.h"#include "head2.h"打印:cout << g_globalh1 << endl;cout << g_globalh2 << endl;目前没有问题。但是当head2.原创 2021-01-03 10:05:23 · 259 阅读 · 1 评论 -
c++类的组织形式,书写规范
c++类的组织形式简单示意一下类的组织形式及编写规范:以student类进行演示类的定义代码会放在一个.h头文件中。头文件名跟类名相同,studengt.h。类的具体实现代码,放在一个.cpp文件中,student.cpp。codestudent.h#include <iostream>class student{public: int number; char name[100];public: void func();};student.cpp#inc原创 2021-01-02 11:28:19 · 687 阅读 · 0 评论 -
Pytorch学习笔记(深度之眼)(10)之正则化之weight_decay
可视化工具 —— TensorBoardTensorBoard:TensorFlow中强大的可视化工具;支持标量、图像、文本、音频、视频和Embedding等多种数据可视化;在学习TensorBoard之前,先对其运行机制有大概的了解:在python脚本中记录可视化的数据;记录的数据会以event file(事件文件)存放到硬盘中;在终端使用TensorBoard读取event file,TensorBoard在网页端进行可视化...原创 2021-01-01 15:21:40 · 420 阅读 · 0 评论 -
Pytorch学习笔记(深度之眼)(9)之学习率的调整
学习率的作用是控制更新的步伐;Pytorch提供了一个调整学习率的方法——class_LRScheduler主要参数:optimizer:关联的优化器;last_epoch:记录epoch数;base_lrs:记录初始学习率class_LRScheduler(object): def __init__(self,optimizer,last_epoch=1): def get_lr(self): raise NotlmplementedError主要方法:step():更新下一个原创 2020-12-31 15:17:57 · 453 阅读 · 1 评论 -
Pytorch学习笔记(深度之眼)(8)之优化器
1、什么是优化器Pytorch优化器:管理并更新模型中可学习参数的值,使得模型输出更接近真实标签;管理是指优化器管理和修改参数,更新是指优化器的优化策略。优化策略通常采用梯度下降,梯度是一个向量,梯度的方向是使得方向导数最大。2、optimizer的属性优化器基本属性:defaults:优化器超参数;state:参数的缓存,如momentum参数;param_groups:管理的参数组;_step_count:记录更新次数,学习率调整中使用;class Optimizer(Object)原创 2020-12-31 10:19:23 · 226 阅读 · 0 评论 -
Pytorch学习笔记(深度之眼)(8)之损失函数
常用损失函数5、nn.L1Loss6、nn.MSELoss7、nn.SmoothL1Loss8、nn.PoissonNLLLoss9、nn.KLDivLoss10、nn.MarginRankingLoss11、nn.MultiLabelMarginLoss12、nn.softMarginLoss13、nn.MultiLabelSoftMarginLoss14、nn.MultiMarginLoss15、nn.TripleMarginLoss16、nn.HingeEm原创 2020-12-30 09:40:02 · 275 阅读 · 0 评论 -
SVN原理及安装存在的问题
什么是SVNSVM工作流程1.Checkout(检出)2.Update(更新)3.Commit(提交)SVN安**装获取SVN软件**属于C/S结构软件(客户端与服务器端)服务端软件:VisualSVN网址:http://www.visualsvn.com/客户端软件:TortoiseSVN网址:http://tortoisesvn.net/downloads安装可以观看视频:https://www.bilibili.com/video/BV13s411h7QM?p=2在安装过原创 2020-12-29 16:01:27 · 181 阅读 · 0 评论 -
Pytorch学习笔记(深度之眼)(7)之损失函数
1.损失函数概念现在了解一下Pytorch中的Loss:class _loss(Module): def __init__(self, size_average=None, reduce=None, reduction='mean'): super(_loss,self).__init__() if size_average is not None or reduce is not None: self.reduction = _Reduc原创 2020-12-29 10:07:03 · 460 阅读 · 0 评论 -
Pytorch学习笔记(深度之眼)(6)之权值初始化
1、梯度消失与爆炸上面公式中, H 1是上一层神经元的输出值, W 2的梯度依赖于上一层的输出,如果 H 1 的输出值趋向于零, W 2 的梯度也趋向于零,从而导致梯度消失。如果 H 1 趋向于无穷大,那么 W 2 也趋向于无穷大,从而导致梯度爆炸。从上面我们可以知道,要避免梯度消失或者梯度爆炸,就要严格控制网络输出层的输出值的范围,也就是每一层网络的输出值不能太大也不能太小。从公式推导可以发现,第一个隐藏层的输出值的方差变为n,而输入数据的方差为1,经过一个网络层的前向传播,数据的方差就扩大原创 2020-12-28 16:58:49 · 266 阅读 · 0 评论 -
Pytorch学习笔记(深度之眼)(5)之池化、线性、激活函数层
1、池化层——Pooling Layernn.MaxPool2dnn.MaxPool2d(kernel_size, stride=None, padding=0, dilation=1, return_indices=False, ceil_mode=False)kernel_size:池化核尺寸;stride:步长;padding:填充个数;dilation:池化核间隔大小;ceil_mode:池化过程中有一个原创 2020-12-28 11:01:50 · 510 阅读 · 0 评论 -
Pytorch学习笔记(深度之眼)(4)之模型容器
1.容器.Containersnn.Sequential是nn.module的容器,用于按顺序包装一组网络层。codeimport torch.nn as nnclass LeNetSequential(nn.Module): def __init__(self, classes): super(LeNetSequential, self).__init__() self.features = nn.Sequential( nn.原创 2020-12-28 09:20:16 · 146 阅读 · 0 评论 -
Pytorch为什么总要设置随机种子
Pytorch为什么总要设置随机种子在pytorch中总能看到以 第一行有个设置随机种子的函数?它到底有啥作用?def set_seed(seed=1): random.seed(seed) np.random.seed(seed) torch.manual_seed(seed) torch.cuda.manual_seed(seed)参考博客:https://blog.csdn.net/qq_24224067/article/details/1064510641原创 2020-12-27 15:11:45 · 12730 阅读 · 1 评论 -
Pytorch学习笔记(深度之眼)(3)之网络模型
网络模型步骤:原创 2020-12-25 21:08:43 · 353 阅读 · 0 评论 -
花书《深度学习》学习笔记(5)
1.训练加速(1)基于数据的并行1.Model Average(模型平均)2.SSGD(同步随机梯度下降)3.ASGD (异步随机梯度下降)(2)基于模型的并行原创 2020-12-24 11:32:45 · 143 阅读 · 0 评论 -
花书《深度学习》学习笔记(4)
常用CNN1.LeNet原创 2020-12-23 22:24:31 · 207 阅读 · 0 评论 -
花书《深度学习》学习笔记(3)
1.卷积网络原创 2020-12-22 20:29:50 · 118 阅读 · 0 评论 -
花书《深度学习》学习笔记(2)
1.前后向传播2.正则化3.数据集增强原创 2020-12-22 15:06:49 · 88 阅读 · 0 评论 -
花书《深度学习》学习笔记(1)
1.深度前馈网络➢理论上说单隐层神经网络可以逼近任何连续函数(只要隐层的神经元个数足够多)。➢虽然从数学.上看表达能力一致,但是多隐藏层的神经网络比单隐藏层的神经网络工程效果好很多。➢对于一些分类数据(比如CTR预估里),3层神经网络效果优于2层神经网络,但是如果把层数再不断增加(4,5,6层),对最后结果的帮助就没有那么大的跳变了。➢图像数据比较特殊,是一种深层(多层次)的结构化数据,深层次的卷积神经网络,能够更充分和准确地把这些层级信息表达出来。2.激活函数 3.批量梯度下降4.随原创 2020-12-21 22:25:52 · 220 阅读 · 1 评论 -
Pytorch学习笔记(深度之眼)(2)之DataLoader and Dataset
1.DataLoader and Dataset数据模块又可以细分为 4 个部分:数据收集:样本和标签。数据划分:训练集、验证集和测试集数据读取:对应于PyTorch 的 DataLoader。其中 DataLoader 包括 Sampler 和 DataSet。Sampler 的功能是生成索引, DataSet 是根据生成的索引读取样本以及标签。数据预处理:对应于 PyTorch 的 transforms功能:Dataset 是抽象类,所有自定义的 Dataset 都需要继承该类,原创 2020-12-20 21:20:32 · 372 阅读 · 1 评论 -
Pytorch学习笔记(深度之眼)(1)
1.逻辑回归 机器学习模型训练步骤:原创 2020-12-20 09:52:08 · 238 阅读 · 0 评论 -
Python(五)——python实现经纬度采样
python实现经纬度采样原理经度 phi,纬度 theta 处的坐标为:x =R* cos(phi) * cos(theta)y = Rsin(phi) * cos(theta)z = Rsin(theta)问题经纬度采样的采样点是相同经纬度间隔的交点。但是采样1000个点,如何划分多少条经线,多少条纬线相交,才能使1000个采样点最均匀的分布在球面上(虽然经纬度采样本来就不均匀,但对于不同的采样点个数应该有一种***相对最均匀的经纬线划分***)?求大佬指教!我目前是将纬度每10度进行划原创 2020-12-07 15:02:46 · 1018 阅读 · 2 评论 -
Python(三)——python实现斐波那契网格采样
python实现斐波那契网格采样公式具体参考我的另一篇博客:https://blog.csdn.net/m0_45866718/article/details/109461637Code作为python新手,没用解析式写from mpl_toolkits import mplot3dimport numpy as npimport mathimport matplotlib.pyplot as plt%matplotlib inlineax=plt.axes(projection="3原创 2020-12-04 21:31:32 · 995 阅读 · 1 评论 -
Python(一)——Python标准库
Pythonb标准库1.time库import timeprint(time.localtime())print(time.gmtime())结果:time.ctime()结果:t1_start=time.time()t2_start=time.perf_counter()t3_start=time.process_time()print(t1_start)print(t2_start)print(t3_start)res=0for i in range(100000)原创 2020-12-03 11:36:27 · 561 阅读 · 4 评论 -
Python(二)——Python中的 if __name__ == “__main__“到底是个啥意思?
Python中的 if name == "main"到底是个啥意思?分享来源:https://blog.csdn.net/weixin_35684521/article/details/81396434对于Python初学者来说,在看别人代码时经常会看到if name == “main”,这时心里就开始吐槽:“绝对又是装逼,我特么不写这句话,代码不照样跑得好好的!我刚开始碰到这行代码时,心里也是这样想的!吐槽归吐槽,存在必然有存在的道理。现在就来看看这句代码到底是个啥意思,因为这句话能够帮你对Pyt转载 2020-12-01 11:20:27 · 156 阅读 · 0 评论 -
斐波那契网格采样(在球面上均匀排列许多点)
经纬度网格和斐波那契网格转载自https://zhuanlan.zhihu.com/p/25988652?group_id=8289636771924910081.问题怎样在球面上「均匀」地排列许多点呢?这是一个很有实际意义的问题。比如我要测量地球上陆地的总面积。如果能在地球表面均匀地取 n 个点,那么我只要简单地数一下其中落在陆地上的点的个数 m,就可以知道陆地面积约占地球总表面积的 m/n 了。注意,按照一定的经纬度间隔,取经纬线的交点是不行的,因为这样取出的点不均匀:两极附近的点比赤道处更密集转载 2020-11-03 09:13:34 · 7559 阅读 · 2 评论 -
Unity中c#为客户端,c++为服务器端进行socket通信
Unity中c#为客户端,c++为服务器端进行socket通信1.需求最近在项目中,要求将unity中虚拟相机的坐标变化等信息用socket传入c++写的处理程序中。相当于用C#写客户端,c++写服务器端。主要参考了一下博客:http://blog.csdn.net/qq_34204419/article/details/825293862.注意C#与C++数据类型的对应关系数据类型不对应,编码方式不一致都可能导致传输结果为乱码。大佬分别写了一个C#类和c++结构体进行对齐。c#:[Seria原创 2020-09-25 17:32:45 · 4007 阅读 · 14 评论 -
单个像素代表的实际物理尺寸
单个像素代表的实际物理尺寸简单点说,对于单目相机,没有单个像素代表的实际物理尺寸这个概念。这个问题容易想明白,以下面这张图为例:只考虑简单的小孔相机模型,那橙色射线上的每个点投影到图片上都是同一个点。也就是说,远处大的物体和近处小的物体在图片上呈现出来是一样的,那在不知道深度的情况下讨论单个像素的实际长度也是没有意义的。Matlab里有pointsToWorld这个函数,用来计算图片上像素坐标在真实世界中的二维坐标,它的用法是:worldPoints = pointsToWorld(cameraPa转载 2020-09-03 17:07:49 · 7700 阅读 · 1 评论 -
opencv特征点匹配(暴力匹配优化)
opencv特征点匹配(暴力匹配与优化)1.相关函数1.knnMatch() 方法,而k=1,返回一对匹配子,这个方法只返回最接近的距离的一对匹配子,当有足够多的匹配子的时候,这种方法通常能够产生最好的结果和最小的误差。2.Dmatch类struct CV_EXPORTS_W_SIMPLE DMatch{ CV_WRAP DMatch() : queryIdx(-1), trainIdx(-1), imgIdx(-1), distance(FLT_MAX) {}//1 CV_WRA原创 2020-09-02 18:31:29 · 2495 阅读 · 0 评论 -
getTickCount()函数 区别GetTickCount()函数
getTickCount()函数 与GetTickCount()函数转载文章1.1. getTickCount()实际上,该函数为opencv中的函数,该函数返回的值为自从某一时刻(比如计算机启动)开始,计算机总共经过的tick的次数,其需要结合getTickFrequency()函数使用,getTickFrequency()返回的是CPU在一秒钟内会发出的tick的次数,总体来说,该函数的精度较高,能够精确到1ms左右,获得时间的一个例子如:double t = (double)getTickCo转载 2020-08-27 19:10:49 · 3289 阅读 · 0 评论 -
在场景图片里提取二维码进行orb特征点匹配+opencv
在场景图片里提取二维码进行orb特征点匹配+opencv1.代码#include <opencv2/opencv.hpp> #include <iostream> #include<time.h>#include<math.h>#include <iostream> #include <set>#include <opencv2/highgui/highgui.hpp> #include &l原创 2020-08-22 10:05:57 · 464 阅读 · 0 评论 -
Opencv截取图片里最大的矩形
Opencv截取图片里最大的矩形1.代码#include <opencv2/opencv.hpp> #include <iostream> #include<time.h>#include<math.h>#include <iostream> #include <set>using namespace cv;using namespace std;RNG rng(12345);char strangerN原创 2020-08-20 16:49:58 · 1485 阅读 · 0 评论 -
boundRect.tl和boundRect.br什么意思
boundRect.tl和boundRect.br什么意思?在opencv中boundingRect的用法:1、boundingRect函数函数作用:计算轮廓的垂直边界最小矩形,矩形是与图像上下边界平行2、boundingRect函数调用形式C++: Rect boundingRect(InputArray points)points 读入的参数必须是vector或者Mat点集但是rectangle(drawing, boundRect[i].tl(), boundRect[i].br()原创 2020-08-19 11:26:18 · 2479 阅读 · 1 评论 -
Unity3d中渲染到RenderTexture的原理
Unity3d中渲染到RenderTexture的原理转载于https://blog.csdn.net/love_hot_girl/article/details/81910692?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522159022085919724848313770%2522%252C%2522scm%2522%253A%252220140713.130102334…%2522%257D&request_id=159022转载 2020-05-23 16:10:12 · 610 阅读 · 0 评论