[Computer Vision] lecture1-9

内容说明

该博客内容主要为The Ancient Secrets of Computer Vision作业的补充说明
顺序也基本是按照lecture的顺序
如果需要系统学习请到该网站自行观看和学习该课程的视频和课件

计算机视觉的等级

1.low-level主要是对图片本身的操作
2.mid-level作者定义为图片与其他联合获得信息
3.high-level指可以像人一样获得有意义的信息
the level of computer vision

关于图片的基础知识

RGB格式

大部分彩色图片都是RGB格式,即red、green、blue,每个通道都有一个值,最终的颜色由这三个值共同决定
例如:red:255,green:0,blue:0,则最终才为正红色

存储格式

1.使用坐标:use (x,y,c) —— x和y即宽w和高h
column x, row y, channel c
2.CHW格式: for (x,y,z) of image (W,H,C):x + yW + zW*H
在这里插入图片描述

关于HSV

Hue色相 Saturation饱和度 Value亮度
RGB可以转化到HSV
More saturation = intense colors
More value = lighter image
Shift hue = shift colors
更多HSV的内容
在这里插入图片描述

插值方法

最邻近元法

这是最简单的一种插值方法,不需要计算,在待求象素的四邻象素中,将距离待求象素最近的邻象素灰度赋给待求象素。1在这里插入图片描述在这里插入图片描述
在这里插入图片描述

三角插值法

V:value —— A:面积
Q = V1 * A1 + V2 * A2 + V3 * A3
在这里插入图片描述

双线插值法

V:value —— A:面积
Q = V1 * A1 + V2 * A2 + V3 * A3 + V4 * A4

q1 = V1 * d2 + V2 * d1
q2 = V3 * d2 + V4 * d1
q = q1 * d4 + q2 * d3

A1 = d2 * d4
A2 = d1 * d4
A3 = d2 * d3
A4 = d1 * d3

q = V1 * A1 + V2 * A2 + V3 * A3 + V4 * A4
在这里插入图片描述

图片处理

改变图片内存大小

X到Y的映射: X:4 * 4 —— Y:7 * 7
aX + b = Y 通过左上角和右下角(或其他)求得a = 4/7,b = -3/14

在这里插入图片描述
在这里插入图片描述
1.放大图片:用双线插值法处理每一个新点的值
2.缩小图片(比如7 * 7 变成 1 * 1)
①用中心值代替
②用平均值代替
在这里插入图片描述

卷积

在这里插入图片描述

// 这个用于垂直/水平边缘检测 从暗到明/从明到暗 !非对应
var m = [-1,-2,-1; 0,0,0; 1,2,1];
var n = [-1,0,1; -2,0,2; -1,0,1];

具体矩阵作用请看吴老师第四课卷积的第一周内容
下面这个区别吴老师也提到了的
后面的那个主要是数学上让卷积满足结合律,但对于机器学习是没有必要的,我们都用前面那个
在这里插入图片描述

边缘检测

把图像当作一个函数,边缘可以理解为该函数变化迅速的地方
即该函数一次导数的最值处
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
f(a)就是第一个pixel的value,乘以-1,即-f(a)
h=2,即f(a+h)为第三个pixel的value

著名的sobel算子的由来:在这里插入图片描述
如果用二次求导,则只需要最终的值为0即可,更简单
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这里同一阶求导原理一样
在这里插入图片描述
最终得到的kernel/filter

高斯滤波器

高斯滤波器是一个低通滤波器
用原图减去高斯滤波后的图像就可以得到高通滤波后的图像

非极大值抑制得边缘线

在这里插入图片描述边缘向两边求导,两边求导得到的值应该都是比较大的

在这里插入图片描述
如果有一边值比较小,即有一边变化不明显,则判断不是边缘,变成黑块
在这里插入图片描述

特征提取

特征点的选择

要选取Self-difference(ΣdΣx,y (I(x,y) - I(x+dx,y+dy))2)大的点,一般是某个角
下面这种有些角度明明不是同一点却可以重合,效果不是特别好

在这里插入图片描述
在这里插入图片描述

特征点的计算(半知)

带有权重的附件梯度值的和
在这里插入图片描述
在这里插入图片描述结论:如果这个图片适合做特征点的话,λ2会很大

仿射

在这里插入图片描述在这里插入图片描述
在这里插入图片描述
具体矩阵推导请移步第六讲PPT

RANSAC求矩阵

得到|| b - M a ||2的最小值
1.|| b - M a ||2 =bTb - 2aTMTb + aTMTMa
2.求导=0:-MTb + (MTM)a = 0,解得a=(MTM)-1MTb

RANSAC原理

RANSAC: RANdom SAmple Consensus
假设观测数据中包含局内点和局外点,其中局内点近似的被直线所通过,而局外点远离于直线。简单的最小二乘法不能找到适应于局内点的直线,原因是最小二乘法尽量去适应包括局外点在内的所有点。相反,RANSAC能得出一个仅仅用局内点计算出模型,并且概率还足够高。但是,RANSAC并不能保证结果一定正确,为了保证算法有足够高的合理概率,我们必须小心的选择算法的参数。 2在这里插入图片描述
在这里插入图片描述

RANSAC过程 2

RANSAC算法的输入是一组观测数据,一个可以解释或者适应于观测数据的参数化模型,一些可信的参数。
RANSAC通过反复选择数据中的一组随机子集来达成目标。被选取的子集被假设为局内点,并用下述方法进行验证:
1.首先我们先随机假设一小组局内点为初始值。然后用此局内点拟合一个模型,此模型适应于假设的局内点,所有的未知参数都能从假设的局内点计算得出。
2.用1中得到的模型去测试所有的其它数据,如果某个点适用于估计的模型,认为它也是局内点,将局内点扩充。
3.如果有足够多的点被归类为假设的局内点,那么估计的模型就足够合理。
4.然后,用所有假设的局内点去重新估计模型,因为此模型仅仅是在初始的假设的局内点估计的,后续有扩充后,需要更新。
5.最后,通过估计局内点与模型的错误率来评估模型。
整个这个过程为迭代一次,此过程被重复执行固定的次数,每次产生的模型有两个结局:
1、要么因为局内点太少,还不如上一次的模型,而被舍弃,
2、要么因为比现有的模型更好而被选用。

矩阵求解 (未知)

在这里插入图片描述

拼接

在这里插入图片描述
这种拼接对两边来说占比更大,重叠效果不好

在这里插入图片描述
采用圆筒形式
在这里插入图片描述

SIFT算法

为了对抗明暗的影响,用梯度作为特征点的特征

极值点

使用差分高斯金字塔代替高斯金字塔进行极值检测,会节省很多的计算时间
每一个像素点要和它所有的相邻点(26个)比较,看其是否比它的图像域和尺度域的相邻点大或者小 3

在这里插入图片描述
极值点满足下列式子的保存,否则删除
目的:消除边缘响应
推导及更多sift
在这里插入图片描述

HOG

Histogram of Oriented Gradients
通过统计的方法最终得到右图
好处:有方向可旋转
详细情况
在这里插入图片描述

光流

和特征匹配不一样,物体移动后背景不一样,梯度不同
在这里插入图片描述是用一个时间函数和一个位置函数表达相同的特征点

在这里插入图片描述
蓝色=红色:f(p - 𝚫p, t) = f(p, t + 𝚫t)
由泰勒展开式f(x)≈ mx + b近似得f(p - 𝚫p, t)=m(p - 𝚫p) + b
mp - m𝚫p + b - f(p, t) ≈ f(p, t + 𝚫t) - f(p, t) 左边代入 f(p, t)=mp+b
-m𝚫p ≈ f(p, t + 𝚫t) - f(p, t)左边𝚫p是我们想知道的,右边是我们已经知道的,m是f(p - 𝚫p, t)的斜率dp,在边缘检测里提到过如何求解
最终得到-dx𝚫x + -dy𝚫y ≈ f((x,y), t + 𝚫t) - f((x,y), t)
即dxu + dyv = It[x,y] - It+𝚫t[x,y]
意思如图
在这里插入图片描述
很多点一起
S = [dx1 dy1 dx2 dy2 … dx9 dy9]
𝚫p = [u v]
T = [It[x1,y1] - It+𝚫t[x1,y1] It[x2,y2] - It+𝚫t[x2,y2] … It[x9,y9] - It+𝚫t[x9,y9]]

S𝚫p = T
||S𝚫p - T||2 = 0
𝚫p = (STS)-1STT
求解过程同 RANSAC求矩阵
计算不懂。。有点同RANSAC计算
𝛌1 or 𝛌2 <=0 S无解
在这里插入图片描述

改进(未推)

缺点如下
在这里插入图片描述
LK改进:迭代
dxnu + dynv = It[x,y] - It+𝚫t[x + dxn-1,y + dyn-1]
或者用泰勒公式的前两项,如下
𝚫p = -½(At)-1(bt+𝚫t - bt)
SAST + bST + c = T
||SAST + bST + c - T||2 = 0
实际上At≠ At+𝚫t,用A = ½(At + At+𝚫t)代替
𝚫b = -½(bt+𝚫t - bt)
在这里插入图片描述
在这里插入图片描述

双目测距

双目摄像头的原理与人眼相似。人眼能够感知物体的远近,是由于两只眼睛对同一个物体呈现的图像存在差异,也称“视差”。物体距离越远,视差越小;反之,视差越大。视差的大小对应着物体与眼睛之间距离的远近,这也是3D电影能够使人有立体层次感知的原因
双目系统对目标物体距离感知是一种绝对的测量,而非估算 4

在这里插入图片描述
目的:求得(x1,y1,z1
已知:(x’1,y’1,1)【某个特征点】,各个相机参数,和两个相机间转换参数
需要:根据(x’1,y’1,1)求出图中的线, 再根据对应关系求出 (x’2,y’2,1)及直线,然后转到左相机的坐标下,两线交点即为目标点,所以为求解线性方程
视差 :即左相机像素点(xl, yl)和右相机中对应点(xr, yr)的关系,这是双目视觉的核心问题
在这里插入图片描述
在这里插入图片描述
用最简单的情况来说明
在这里插入图片描述
由相似三角形可得Z,具体请移步

极线约束

关键是如何求得(x’2,y’2,1)
不用全图搜索对应的(x’2,y’2,1),而是在一条线上
在这里插入图片描述
第一步:把左相机的原点和(x’1,y’1,1)转到右相机坐标下
第二步:根据参数,把黑线上(左相机平面)的两点坐标变为红线上(右相机平面)的两点坐标
在这里插入图片描述
第三步:因为相机平面上的点都为(x,y,1)格式,所以可以把所得的坐标代入方程ax+by+c=0来求解红色的线,即(a b c).

在这里插入图片描述
第四步:代入后的两个方程说明(a b c)与两个向量同时垂直,可得方程如下
在这里插入图片描述最后
在这里插入图片描述
算法大意就是计算不同的特征点,在另一边的线上找对应的特征点
最后计算特征点对应值最高的深度
在这里插入图片描述
注意:
特征点的选择除了要由self-diferrence之外(在特征点的选择那儿讲的)
还要注意特征点的匹配顺序
在这里插入图片描述

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值