Albert's Blog
-
-
2021年个人总结
2021年,过的很快感觉什么都没有发生,又感觉不知发生了什么。一些重要的事情还是有必要留恋一下的。谈起2020年不算是友好的一年去年还觉得“2020”是“爱你爱你”没想到最后成了“二你二你”,生活也是爱开玩笑,明明白白二了我一回当然也可能是因为自己不争气。研究生初试成绩不理想,复试也多次碰壁;毕业呢也并没有感受到快乐,那一句句“年后见”、“兄弟们九月份见”再也没有了,连每晚的“两岸猿叫”都没了;毕业也好,也不好。幸运的是还有书读,还有学上,也来到了之前想来的城市甚至还能在一志愿的学校学习,这该死的缘分。在这里也认识一群新的伙伴,对我也照顾挺多的,我很幸运每一段路上遇到的每个人。不过我现在... 阅读全文… -
贪婪算法
贪心算法贪心算法(又称为贪婪算法 Greedy Algorithm)指的是,在对问题求解时,总是做出在当前看来是最好的选择,换句话说,就是通过一步步寻找局部最优解的方式来寻找全局最优解。贪心算法在有最优子结构的问题中尤为有效。最优子结构的意思是局部最优解决定全局最优解。也就是说问题能够分解成子问题来解决,子问题的最优解能递推到最终问题的最优解。 找零问题假设商店老板需要找零n元钱,钱币的面额有100元,50元,20元,5元,1元,如何找零使得所需钱币的数量最少?(并没有面额10的钱币)如果是找零276元呢?$1002+501+102+51+1*1=276$代码如下:12345678910... 阅读全文… -
立体视觉计算视差图
立体视觉计算视差图 stereo vision一、实验原理1、立体图像立体视差也就是立体视像,是基于双眼视差所获得的深度知觉。所谓立体图像,其实就是有两台水平的相机对同一场景进行观测,这时,得到的两幅图像就有了相同的图像平面,图像的行是对齐的。参考图如下所示: 原理图1.jpg 由于采用的图像是官网提供的图片,是已经矫正过的,所以这两幅图就可以看成是理想的。根据偏移可以计算出深度,公... 阅读全文… -
深度优先和广度优先搜索算法
参考学习内容 阅读全文… -
排序算法之快速排序
快速排序–一种使用D&C的排序算法算法原理 快速排序是对冒泡排序算法的改进,基本思想是:选择一基准元素,以此将剩余元素中的小于该基准元素的值放在左边,大于该基准元素的值放在右边;然后再在左侧序列和右侧序列做同样的处理操作;以此类推,直至各个序列都剩余一个元素时,即排序完成。 算法实现步骤 首先设定一基准值(pivot),通过该基准值将待排序序列分成左右两部分。 将小于或等于基准值的元素放在序列左边,将大于基准值的元素放在序列的右边。此时左边序列的元素都是小于基准值的,右边的元素都是大于基准值的,这个基准值就叫做分区(partition)操作。 此时,左边和右边的序列均可看作是新... 阅读全文… -
LDA线性判别分析
LDA线性判别分析基本概念线性分类: 指存在一个线性方程可以把待分类样本分离开,或者用一个超平面将正负样本分开,表达式为$$y=w^\mathrm T+b$$所谓超平面即是区分样本点的一个决策面,在二维世界中,可以理解为一条直线,如一次函数。非线性分类: 指不存在一个线性分类能将样本分隔开,可以是一个曲面,也可以是多个超平面的组合。 LDA思想核心思想:类内小,类间大线性判别分析(Linear Discrimination Analysis, LDA)是一种监督学习的线性降维方法,即每个样本都是由类别的输出。其主要思想是”投影后类内方差最小,类间方差最大“,我们知道,对于一组数据来说,均... 阅读全文… -
排序算法之选择排序
排序算法之选择排序数组数据在内存中的顺序是连续的,在使用时需要向计算机申请分配一定的内存空间,如果申请的空间一定,再加入新的数据时如果当前空间不足需要重新向计算机申请;同样,如果先前申请了大量的空间,但在使用过程中并没有被用到,则会造成空间的浪费。 术语数组的元素带编号,编号从0开始,这个位置叫做索引,故说:”元素a位于索引1处“,在元素读取和插入时有以下特征: 数组和链表操作.png ... 阅读全文… -
Camera-calibration
相机标定一、前提准备1、伪硬件 名称 数量 标定板8×10 1 手机 1 待标定照片 12 支架 1 手机固定在支架上,调整标定板位置,对其从不同角度进行拍照,所拍摄照片为11张。保存到文件夹后对其进行依次命名:*.jpg(如:1.jpg) 2、软件 使用的编程语言:python 工具包:opencv, numpy, glob 二、寻找标定棋盘并进行标定1、python + opencv 的方案 利用opencv寻找棋盘,所用到的函数如下: cv2.TERM_CRITERIA_MAX_I... 阅读全文… -
c语言短路求值
C语言学习过程遇到的重点内容记录 何为短路求值?所谓短路求值,其实就是C语言逻辑操作符&&和||的特性,具体特性如下: && 逻辑与&& 逻辑操作符的左操作数总是首先进行求值, 如果它的值为真, 则继续计算右操作数的值, 然后执行与操作得到表达式结果; 如果它的值为假, 根据与操作 有假则假 的性质可以断定该表达式的值为假, 所以不再计算右操作数的值。 || 逻辑或|| 逻辑操作符的左操作数也是首先进行求值, 如果它的值为假, 则继续计算右操作数的值, 然后执行与操作得到表达式结果; 如果它的值为真, 根据或操作 有真则真 的性质可以断... 阅读全文…