自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(44)
  • 收藏
  • 关注

原创 OpenGL的学习之路 -5

人眼看世界,有一个可见范围。范围内可见,范围外不可见。在OGL中,有两种投影方式,对应两种视景体。,矩阵A变化,太阳自转,地球跟着太阳转;透视投影(可见,从视觉效果上,透视投影更符合人眼),地球自转的同时绕着太阳公转,同时,太阳也在自转。2.几个代码示例(主要目的:弄明白 变换栈),矩阵C变化,地球实现自转的效果;‘D’或者‘d’以及‘Y’或者‘y’(4)月亮绕着地球转、地球绕着太阳转。(2)键盘控制的自转和公转。1.视景体 正交投影。(上图仅学习记录用)透视投影(替换代码)(1)三个球绕红球转。

2023-11-26 22:37:54 454 1

原创 最小二乘法

最小二乘法

2023-11-24 20:51:24 105

原创 凸包的学习之路

凸包——graham scan algorithm

2023-11-19 15:27:39 179

原创 OpenGL 的学习之路-4(变换)

9个参数,三个一组,前三个是相机的位置,中间三个是相机看向的方向,后三个是相机的top方向。这里,一开始,相机位于原点位置,相机看向z轴负半轴(也就是屏幕里),相机的top方向是y轴的正方向。拍摄受相机的影响,影响相机的三个因素:相机的位置、相机的指向、相机的top方向。如果把相机比作人的眼睛的话,眼睛的位置、眼睛看向哪里、头的歪头。所有的变换操作是放在一个栈中的,在施加一个新变化上,该语句的作用是向栈中压入一个I(单位阵),也就是现在还无变换。3.如果有多个变换的函数,先施行的是最下面的,然后往上进行。

2023-11-18 21:58:56 207

原创 OpenGL的学习之路-3

令点A代表骰子的点数为1、4,点B代表骰子的点数为2、5,点C代表骰子的点数为3、6。现在开始扔,如果扔的点数为1或者4,那么取AP的中点作为新的P;如果扔到的点数为3,6,则同理取CP的中点作为新的P。同时,要把每次取得的新的P绘制出来,并保持与相应的A或B或C同色。glBegin(GL_LINES_LOOP) :给出的两个相邻的点首尾相连,最后一个点和第一个点相连,构成环。点和点之间是配对的,如果给的点的个数是奇数,那么最后一个点没有找到和他配对的点,会不起作用。明明是随机的,却呈现了规律性。

2023-11-13 15:43:57 532

原创 OpenGL学习之路-2

引入bool量isShowSubWin0, isShowSubWin1, isShowSubWin2, isShowSubWin3来判断是否应该显示该子窗口。1.回调函数myMainWinReshape中:改变窗口大小时,先将原来子窗口销毁(如果存在的话),再重新产生新的子窗口。道理上是这个样子,但是我在实际运行过程中,拖动鼠标改变窗口大小时,出现了问题。差不多是说,没有注册给窗口6的回调函数。可能和我这个freeglut有关系的。8.多窗口且子窗口能够跟随reshape的变化而变化。

2023-11-13 09:04:16 97

原创 凸包的学习之路

那么如何确定最初的那个极点呢,这里采用Lowest-then-Leftmost策略,实际上是两条准则,先找最低的点(也就是y值最小的点),如果存在多个y值相同的点,那么在找那个最左的点(也就是x值最小的点)。那极边的特性是,除了构成该极边的两个极点之外,剩下所有的点都在该极边的一边。OK啦,休息一下啦。如果是逆时针转的话,下一个极边从极点k出发,对其他点 l 进行搜索,如果新的 l 在kl的右侧,则更新极点。然后,松手,橡皮筋就会套在“最外面”的那些钉子上,会呈现出一个轮廓,这个轮廓构成的形状,就是凸包。

2023-11-12 18:26:32 121

原创 OpenGL学习之路

2.回调函数myMouse:四个参数,第一个int _button代表的是点击的是鼠标的哪个键(左键、中键、右键),int _state代表的是状态(按下DOWN、松开UP),int _x代表x坐标,int _y代表y坐标.2.glutCreateSubWindow(mainWin, 0, 0, 200, 200) : 子窗口,其主窗口为mainWin,位置(0,0),大小(200,200)按下F5之后,执行了 glutSpecialFunc(NULL),再按下其他的特殊键,也不会执行什么了。

2023-11-05 21:50:08 161

原创 数值分析:解线性方程组2

数值分析-学习记录

2023-10-30 17:07:12 152

原创 Code::Blocks+Opengl 环境搭建

code::blocks + opengl 环境搭建

2023-10-30 09:50:36 322 2

原创 【数值分析】解线性方程组

数值分析-学习记录

2023-10-28 11:27:42 140

原创 学习总结:关于C++ 4

是为data对应在内存中预留了大小为100的空间,只要存入的元素的内存大小不超过100,就不会“搬家”。但是,此时,data的大小还是0。对对象data中的元素进行循环,首先创建迭代器对象it,这个东西类似数组却不是数组,类似指针却不是指针。,可以直接向对象data中压入元素x,data的size也自然+1。这句话之后才是为vector对象data分配了20个空间。19(通过构建一个“迭代器”来探索迭代器的原理)首先,建立了一个vector类型的对象data,上述程序属于STL编程(也就是标准模板库编程)

2023-10-22 14:44:24 46

原创 学习总结:关于C++ 3

执行POW3(a++)之后,得到的是a*(a+1)*(a+1+1),那么最后a将变成a+1+1+1。BB结束之前,要告知他的父类,AA再执行析构函数。(没有函数调用的过程),调用pow3(a++),返回a*a*a,最后a将变成a+1。17(朋友类在父类中声明,相当于授权给子类能看见父类的private)15(继承中出现同名——加帽子,以及子类结束后父类也要再结束)这里不太明白的是,为什么a初始为16 0,而不是0 0。16(虚拟成员函数被继承的子类中的同名函数掩盖)如果使用内嵌函数inline。

2023-10-05 16:02:40 61

原创 Canny边缘检测

也可以直接用opencv的Canny函数,一句代码就可以实现。真的是傻瓜使用方式。这里面我觉得非极大值抑制那里的代码不太对,我在下面的代码中改了一下。Canny.h(自定义头文件)具体原理可以去某站学习。

2023-10-03 21:44:23 75

原创 学习总结:关于C++ 2

这样定义一个头文件,用宏来减少了工作量。但是,不适合多人协作编程...而C++中提供了更好的方式。疑问:为什么前面出现了"kill me!",说明是执行了析构函数?9( 宏的使用可以减少重复作用代码编写的工作量,但是...)10(结构体中使用模板template - 一)11(结构体中使用模板template - 二)8(类中成员函数之操作符的重载)project的结构如上。project的结构如上。7(类的分文件编写)

2023-10-03 11:06:43 67

原创 学习总结:关于C++ 1

(2)规定每一个结构体中都有一个this指针指向它自己,*this就是指向的具体的值。(3)在成员函数的函数头中的函数返回类型后的&,表示“引用”,作用是返回的不是一个临时开辟进行存储的空间内容(临时变量),而就是它自己!(2)函数参数带有标记&,意味着“引用”(reference),形参变成了实参的别称(同一个东西,同一块内存空间)。(4)C语言中不允许函数同名,而C++中允许,只要函数的参数不同就可以。(2)根据类构造对象时,其后参数的不同,调用不同的构造函数。4(引用,没有值传递的过程)

2023-10-02 22:41:50 61

原创 Code::Blocks+Opencv 环境搭建

code::blocks+opencv环境搭建

2023-09-30 10:10:44 98

原创 Code::Blocks使用指南之多文件编程

main函数中包含对函数的调用,但使用时需 include"add.h"要注意新建的源文件和头文件要成对出现并且名字也要一样。如果要使用多文件来编写程序,要新建。记得要勾选这两个,否则会失败的!

2023-09-22 14:51:02 3593

原创 【曲面参数化】games301第一讲

上图中,第1幅是一个螺旋线放在了三维空间中,但实际上用一维空间的线就可以将它表示出来,所以说,它的本质上是一维的;第2幅是一个曲面放在了三维空间上,但实际上用二维空间的平面就可以将它表示出来,所以说,它的本质上是二维的;第3幅的是三维空间中的一个看似不太规则的体,它的本质上是三维的。不同的最优准则(破坏一些什么,保留一些什么【根据目的】):度量曲面的几何性质(几何量)的变化。【例1】地图——地球表面展开(不同的展开方式,最后得到的地图也是不一样的)第一,函数的简化:映射f 线性函数空间(基函数的线性组合)

2023-09-13 23:13:50 348

原创 【概率论与数理统计】总体 抽样 样本 统计量 抽样分布(卡方分布、t分布、f分布) 正态总体下的抽样分布

宋浩老师课程的笔记

2023-08-29 21:24:20 161

原创 【概率论与数理统计】大数定律与中心极限定理

宋浩老师课程的笔记

2023-08-26 17:45:58 77

原创 Sift:小根堆(minpq.c)

sift:建立小根堆、插入新结点并进行调整、剔除根结点并进行调整等操作

2023-08-23 20:28:36 84

原创 【概率论与数理统计】协方差和相关系数

宋浩老师课程的笔记

2023-08-23 08:58:34 52

原创 【概率论与数理统计】数学期望与方差

宋浩老师课程的笔记

2023-08-19 16:47:00 414

原创 Sift算法的框架

到这里只是完成了Sift基本内容,关于进一步的实现,还要学习其他相关内容!还差一个调用这些函数的、包括Sift实现框架的函数。

2023-08-18 23:21:03 149 1

原创 【概率论与数理统计】二维随机变量函数的分布

宋浩老师课程的笔记

2023-08-17 10:54:27 95 1

原创 【概率论与数理统计】二维随机变量的独立性

宋浩老师的课程笔记

2023-08-17 10:49:28 219 1

原创 Sift:(第四步)为关键点构造描述符

sift算法的第四步:构建关键点描述符的知识以及代码注释

2023-08-17 07:33:54 631 1

原创 sift:(第三步)为关键点赋予方向

sift算法的第三步:为关键点赋予方向的知识以及代码注释

2023-08-13 17:34:19 282 1

原创 Sift:(第二步)关键点位置的确定

sift算法的第二步:找寻精确特征点的知识以及代码注释

2023-08-12 16:14:35 453 1

原创 【概率论与数理统计】条件分布(一维变量、二维变量)

宋浩老师概率论课程的笔记

2023-08-11 21:32:06 178 1

原创 Sift:(第一步)建立高斯差分金字塔

sift算法的第一步:建立高斯金字塔的知识以及代码注释

2023-08-10 21:32:47 656 1

原创 【概率论与数理统计】二维随机变量:分布函数(联合分布函数、边缘分布函数)、联合概率密度、边缘概率密度、联合分布律、边缘分布律

宋浩老师概率论课程的笔记

2023-08-09 16:51:01 3545

原创 【概率论与数理统计】随机变量函数的分布【离散、连续】

宋浩老师概率论课程的笔记

2023-08-08 11:51:52 68

原创 【概率论与数理统计】0-1分布、几何分布、二项分布、泊松分布、超几何分布、均匀分布、指数分布、正态分布

宋浩老师相关课程的个人笔记

2023-08-07 16:45:49 886

原创 【概率论与数理统计】随机变量、离散型随机变量及其概率分布、连续性随机变量及其概率密度函数、分布函数

来自宋浩老师相关课程的笔记

2023-08-07 16:38:18 74

原创 【概率论与数理统计】事件、古典概型、几何概型、条件概率、乘法公式、全概率公式、贝叶斯公式、事件的独立性、伯努利模型

笔记内容来源于宋浩老师概率论课程

2023-08-04 16:42:29 234 1

原创 机器学习2022吴恩达老师课程——学习笔记(五)

2022吴恩达老师机器学习课程的笔记(五)——Scaling Feature(特征缩放)、判断收敛的方法以及梯度下降中学习率的选择

2023-08-01 18:25:14 339 1

原创 机器学习2022吴恩达老师课程——学习笔记(四)

2022吴恩达老师机器学习课程的笔记(四)——关于multiple Linear Regress的模型、成本函数、梯度下降的实现

2023-07-28 07:05:38 185 1

原创 Numpy——学习吴恩达老师机器学习课程中资料的简单总结

vector和matrix

2023-07-27 17:27:48 142 1

空空如也

空空如也

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

TA关注的人

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