
早期学习笔记
刚入学时的学习笔记,太幼稚了
西西敏
星光不问赶路人,时光不负有心人。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
win10+vs2019+opencv3.1.0+contrib
参考、拼凑了多篇博文,感谢这几位博主:https://blog.youkuaiyun.com/weixin_42012977/article/details/82992962 (此博文在最后一步添加附加依赖项时有错误)https://blog.nowcoder.net/n/a2a23494a1714a18837dfb74760824bc (此博文较详细,完全按此博文来,应该没问题)...转载 2019-12-06 22:43:26 · 1185 阅读 · 0 评论 -
【C++ & Opencv】【第十九天】char** argv和char* argv[]
要明白的一点是,char* argv[]并不表示argv[]是一个指针,而表示argv[]这个数组里的元素是指针;另外,这些指针指向的是char类型的变量,即字符型变量。这个意思就是说,*argv[2]就是一个字符。那么此处的argv就是argv[]的首元素的地址(也可称作“指针”),那么argv就是*argv[0]这个字符型变量的指针的地址(或称作指针的指针)。而char*...原创 2019-07-25 15:32:19 · 656 阅读 · 0 评论 -
【转】C++ main函数中参数argc和argv含义及用法
https://blog.youkuaiyun.com/dcrmg/article/details/51987413转载 2019-07-25 16:16:49 · 195 阅读 · 0 评论 -
【C++ & Opencv】【第二十天】【转】透视变换+++++通过矩阵对图像进行平移、缩放、旋转等
https://blog.youkuaiyun.com/guduruyu/article/details/72518340https://blog.youkuaiyun.com/a352611/article/details/51417779https://www.cnblogs.com/fuly550871915/p/4886353.html转载 2019-07-26 10:05:54 · 1028 阅读 · 0 评论 -
学习——图像拼接过程第一步:柱面变换
网上查到两种柱面变换的方法:①https://www.cnblogs.com/cheermyang/p/5431170.html ②https://www.cnblogs.com/william-d-king/articles/5444936.html其中,以①为主,②只有极少数。但是研究...原创 2019-07-22 16:23:28 · 1373 阅读 · 2 评论 -
【C++ & Opencv】【第廿五天】hash_map以及容器和迭代器的概念
容器,大概就是一个能装很多小东西的意思。比如一个vector容器,可以装很多int类型的数据。迭代器,就相当于容器中小东西的一个指针,用来对这些小东西的地址进行操作。http://c.biancheng.net/view/338.htmlhash_map:https://www.youkuaiyun.com/gather_26/NtjaIgzsMjYtYmxvZwO0O0OO0O0O.html...转载 2019-07-31 15:07:07 · 207 阅读 · 0 评论 -
【C++ & Opencv】【第十六天】图片的(行、列)与坐标(x,y)的关系
Opencv中,读图片行数为img.rows,图片列数为img,cols。那么图片最右下角的像素的坐标,是(img.rows,img.cols)吗?不是!而是(img.cols,img.rows)。因为横坐标x,表示的实际上是像素所在的列数;而纵坐标y,表示的实际上是像素所在的行数。...原创 2019-07-22 20:33:37 · 1033 阅读 · 0 评论 -
【C++ & Opencv】【第十六天】int a[]的输入输出,char a[]的输入输出,string a的输入输出,string a[]的输入输出的区别与联系
int a[],string a[]只能靠for循环对各个元素a[i]进行遍历来实现输入或输出;char a[]与string a都叫做“字符串”,既可以通过for循环来实现输入输出,也可以通过cin和cout来实现输入输出。...原创 2019-07-22 23:04:54 · 287 阅读 · 0 评论 -
【C++ & Opencv】【第二十天】设置感兴趣区域时Rect()里的四个数代表什么
设置感兴趣区域时,如:Mat ROI(M,Rect(10,10,100,100));(10,10)是起点位置,但(100,100)却不是终点位置!转:https://blog.youkuaiyun.com/ljxopencv/article/details/91864660https://blog.youkuaiyun.com/qq_35294564/article/details/81045381...转载 2019-07-26 21:24:23 · 290 阅读 · 0 评论 -
【C++ & Opencv】【第十七天】【转】Sift
https://blog.youkuaiyun.com/dcrmg/article/details/52561656讲解了高斯金字塔、DOG金字塔。这几天读到的讲解最详细的博客 https://blog.youkuaiyun.com/dcrmg/article/details/52577555另:https://www.cnblogs.com/ronny/p/4045979.html...转载 2019-07-23 11:56:35 · 155 阅读 · 0 评论 -
【C++ & Opencv】【第廿二天】“指向函数类型的指针”与“返回值为指针的函数”的区别
首先给出两个形式:int (*p) (int,int) 与 int *p (int a,int b);①前者是指向函数类型的指针:假若前面已经声明了一个函数 int f (int s,int m); 那么我们就可以在声明一个指向函数类型的指针 int (*p) (int,int); (注意,此处(...原创 2019-07-28 19:49:11 · 156 阅读 · 0 评论 -
【C++ & Opencv】【第廿六天】说一说链表及其两种插入方法
首先说个事,C++中的新字符new,如new int,返回的是一个指针!那么在链表中用它就很方便,加入已声明了链表结构体为ListNode,那么直接new ListNode,返回的就是一个指向链表的指针。其次要知道,不管头插法还是尾插法,它们所建立的链表的结构都是一样的,头结点里都不存data,尾节点的next都指向Null。下面开始正题:提前声明一个链表的结构体:struct ...原创 2019-08-01 23:37:31 · 252 阅读 · 0 评论 -
【C++ & Opencv】【第卅八天】仿射变换
仿射矩阵其实并不复杂,它只是一个两行三列的矩阵,用它乘上点坐标(x,y),就能实现对点的伸缩、旋转、平移操作。复杂的是怎样求仿射矩阵。下面这篇文章讲的是基本的仿射变换。感谢原博主(似乎我和原博主是同届毕业哈):https://blog.youkuaiyun.com/windowsyun/article/details/78158747什么是仿射变换?仿射变换就是图像的线性变换加上平移,用一幅图表示,...转载 2019-08-08 15:43:25 · 440 阅读 · 0 评论 -
一种在程序中求两直线交点的简单数学方法
若有两点确定一条直线:即 ( x1 , x2 ) 确定L1,( x3 , x4 )确定L2。然后想确定这两条直线的交点。不必用解二元一次方程的方法,有一种方法可以直接算出。设两直线交点为 ( Px , Py ) ,则:即:这个公式似乎是与一个叫贝塞尔参数的理论有关。...转载 2019-08-11 17:28:40 · 936 阅读 · 0 评论 -
【C++ & Opencv】【第十八天】【转】解决一个大问题!
https://blog.youkuaiyun.com/fengying2016/article/details/76698171感谢!转载 2019-07-24 17:54:58 · 196 阅读 · 0 评论 -
【C++ & Opencv】【第廿三天】new与delet对普通变量与对象的用法
首先要明白,new或delet都是对变量/对象的地址进行操作的,或者说它们都是对指针进行操作的。new int 返回的是一个地址。那么:① 对普通变量可以有: int *p=new int; delet p;② 对对象可以有: Box *p=new Box; 接下来,命令 p->volume(); 是被允许的。 然后可以 delet p...原创 2019-07-29 16:14:23 · 202 阅读 · 0 评论 -
【C++ & Opencv】【第十八天】如何转换数据类型和通道数
https://blog.youkuaiyun.com/haima1998/article/details/82079042转载 2019-07-24 16:56:37 · 565 阅读 · 0 评论 -
static在声明【变量】或【函数】时的作用
声明变量static声明变量,往往用于函数中的局部变量,如void test() static int a=10; printf("%d",a); a++; printf("%d",a);我们要明确的是,①函数中,被static声明的局部变量,不会随函数的结束而释放。②static声明的变量只会被初始化一次。那么,当此函数第一次被调用结束后,a=11;而第二次调用结束后,a=12。...原创 2019-07-13 11:29:26 · 470 阅读 · 0 评论 -
【C++ & Opencv】【第七天】typedef 定义函数指针类型
形如:typedef void (*sss) (int a);就叫做函数指针类型。①通过下面一个例子理解一下此类型:#include <iostream>using namespace std;char(*pFun)(int);char glFun(int a){ cout << a << endl; return a;}...原创 2019-07-13 19:55:39 · 186 阅读 · 0 评论 -
【C++ & Opencv】【第七天】读网上的一条程序(给滤波器加一个可调的刻度条(轨迹条))
此程序和95%的注释出自浅墨大神https://blog.youkuaiyun.com/poem_qianmo/article/details/22745559我对代码中的一点点小错误进行了修改,另外在第一个creatTrackbar函数处加了一点点注释。程序作用是对一幅图分别进行了方框滤波、均值滤波、高斯滤波,特别的是在每一次滤波结果图中都添加了一个轨迹条(或者说可读条),使得滤波器“核”的大小可以...原创 2019-07-13 22:14:37 · 197 阅读 · 0 评论 -
【C++ & Opencv】【第八天】不同深度的图片在imshow()中显示的问题
首先是看到imshow,忽然在想,它的参数只有两个吗?查了一下,的确只有两个,第一个参数是窗口名称,是字符串形式,要加双引号,如"tupian1";第二个参数是要显示的图片名称,不必加引号,直接写名字,如 tupian1 。imshow()声明如下:void imshow(const string& winname InputArray mat);然后偶然查到,不同深度的图...原创 2019-07-14 21:18:45 · 476 阅读 · 1 评论 -
【C++ & Opencv】【第九天】Opencv中size()函数的行列前后问题
简单来说,size(a,b)中,a是列(图像宽度),b是行(图像高度)而用Mat声明的图像如 Mat img(480,600,CV_8UC3)中,480是行,600是列。https://blog.youkuaiyun.com/CYummy/article/details/82983677...原创 2019-07-15 10:20:19 · 1537 阅读 · 0 评论 -
霍夫变换学习记录
霍夫变换学习记录目的:分离出图片中的几何形状。通常有:①直线 ②椭圆先看一段代码:#include <opencv2/opencv.hpp>#include <opencv2/imgproc/imgproc.hpp> using namespace cv; int main( ){ Mat srcImage = imread("1.jpg"); ...原创 2019-07-11 13:16:23 · 817 阅读 · 0 评论 -
visual studio显示不出图片,图片框纯灰色,鼠标一直在忙碌转圈状态
#include <iostream>#include <opencv2/opencv.hpp>#include <opencv2/highgui/highgui.hpp>using namespace std;using namespace cv;int main(){ Mat M = imread("C:\\Users\\35749\\D...原创 2019-07-11 20:13:56 · 3293 阅读 · 0 评论 -
visual studio 的调试
参考文章 https://docs.microsoft.com/zh-cn/visualstudio/debugger/debugger-feature-tour?view=vs-2017①断点处表示此句尚未执行;②局部变量窗口查看各变量的状态,堆栈窗口查看当前执行到哪一步或哪个函数。...原创 2019-07-12 10:57:10 · 130 阅读 · 0 评论 -
【C++ & Opencv】【第十七天】实参a[ ]与形参a[ ]的是否可a++或++a问题
首先说一个无关的小问题:①数组a[ ]的用法竟与指针*p的用法类似(可以有*(a+i)等,它就表示a[i]),即数组与指针类型,就像char b[ ] 与 string b类似。 ②数组作形参时,声明为void max(int a[ ]),那么在输入形参时,时只输入数组名即可,如max(a),而不是max(a...原创 2019-07-23 21:09:38 · 558 阅读 · 0 评论 -
【C++ & Opencv】【第廿三天】对类体的数据成员进行初始化的两种方式
首先要明白,两种方式都是通过构造函数来进行初始化,不同的是定义构造函数的方式。以下都以在类外定义构造函数为例。假设已声明了公有或私有数据成员weight、height、length;且假设已声明了一个类Box,那么它的构造函数也一定叫做Box。①普通方式: Box::Box(int h,int w,int len){ ...原创 2019-07-29 10:37:55 · 245 阅读 · 0 评论 -
【转】如何在Opencv3中应用SIFT/SURF算法
需配置新的库,如下:https://blog.youkuaiyun.com/qq_39707351/article/details/80100778感谢博主!另:https://blog.youkuaiyun.com/dcrmg/article/details/52614031https://blog.youkuaiyun.com/lihuacui/article/details/56667342这段pyt...转载 2019-07-24 10:59:37 · 1435 阅读 · 0 评论 -
学习——读鱼眼镜头畸变矫正论文
感谢以下博客的博主!【总】基本流程: https://blog.youkuaiyun.com/neu_chenguangq/article/details/53454512 (这是主要参考文章) https://blog.youkuaiyun.com/ssw_1990/article/details/53216767 ...原创 2019-07-17 16:21:02 · 612 阅读 · 0 评论 -
Opencv & C++ 学习笔记
Opencv & C++ 学习笔记C++星号*的用法除了基本的乘法、指针用法外,有几点需要强调:1.char string = “Hello world!” /string并没有存下Hello world,而是存下了这串字符串的首地址;正如int p_a =& a 表 示p_a的地址 等于 a的地址,而不是等...原创 2019-07-10 15:35:51 · 599 阅读 · 0 评论