IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 计算机视觉基础--立体视觉&图像聚类 -> 正文阅读

[人工智能]计算机视觉基础--立体视觉&图像聚类

1.立体视觉

立体视觉是一种计算机视觉技术,其目的是从两幅或两幅以上的图像中推理出图像中每个像素点的深度信息。
在这里插入图片描述
应用领域:机器人、辅助驾驶/无人驾驶、无人机等
立体视觉的原理:
立体视觉借鉴了人类双眼的“视差”原理,即左、右眼对于真实世界中某一物体的观测是存在差异的,我们的大脑正是利用左、右眼的差异,使得我们能够辨识物体的远近。(视差)

单目系统
注:P、Q是现实世界中两个真实的点,即需要照的点

当只有一个相机时,P、Q在成像平面的一个点上,判断不出两者的距离或两者离摄像机的距离差异。
在这里插入图片描述
双目系统–即有两个摄像机(两个眼睛)在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
转换为俯视图像在这里插入图片描述在这里插入图片描述
将同一空间物理点在不同图像中的映像点对应起来,这个差别称为视差图像
在这里插入图片描述
视差(Disparity)
在这里插入图片描述

2.点云模型

点云与三维图像
三位图像是一种特殊的信息表达形式,其特征是表达的空间中三个维度和数据。和二维图像相比,三位图像借助第三个维度的信息,可以实现天然的物体和背景解耦。
对于视觉测量来说,物体的二维信息往往随摄影方式而变化,但其三维特征对不同测量方式具有更好的统一性。
与相片不同,三位图像是对一类信息的统称,信息还需要有具体的表现形式,其表现形式包括:深度图(一会都表达物体与相机的距离),几何模型(由CAD软件建立),点云模型(所有逆向工程设备都将物体采样成点云)。

点云数据是最为常见也是最基础的三维模型。

点云:扫描资料以点的形式记录,每个点包含有三维坐标,有些可能含有颜色信息(RGB)或者反射强度信息(Intensity)
点云的概念:点云是在同一个空间参考系下表达目标空间分布和目标表面特征的海量点几何,在获取物体表面每个采样点的空间坐标后,得到的是点的几何,称为“点云”(Point Cloud)

点云的内容:根据机关测量原理得到的点云,包括三维坐标(XYZ)和激光反射强度(Intensity),强度信息与目标的表面材质、粗糙度、入射角风向,以及一起的发射能量,激光波长有关。
根据摄影测量原理得到的点云,包括三维坐标(XYZ)和颜色信息(RGB)。
点云处理的三个层次(了解)
在这里插入图片描述在这里插入图片描述
Spin image
Spin image是基于点云空间分布的最经典的特征描述方法
Spin image的思想是将一定区域的点云分布转换成二维的spin image,然后对场景和模型的Spin images 进行相似性度量

生成Spin image的步骤:
1)定义一个Oriented point
在这里插入图片描述
2)以Oriented point为轴生成一个圆柱坐标系
3)**定义Spin image的参数,Spin image是一个具有一定大小(行数列数)、分辨率(二维网格大小)**的二维图像(或者说是网格)
4)将圆柱体内的三维坐标投影到二维Spin image,这一过程可以理解为一个Spin image绕着法向量n旋转360度,Spin image 扫到的三维空间的点会落到Spin image 的网格中。
在这里插入图片描述

5)根据Spin image中的每个网格中落入的点不同,计算每个网格的强度I,显示spin image 时每个网格(也就是像素)I为依据。最直接的方法是直接计算每个网格中落入的店的个数,然而为降低对位置的敏感度、降低噪音影响、增加稳定性,Johnson论文中用双线性插值的方法将一个点分布到4个像素中。在这里插入图片描述
当一个点落入网格(i,j)中时会被双线性插值分散到(i,j)、 (i,j+1) 、(i+1,j)、 (i+1,j+1)四个网格中
在这里插入图片描述

spin image的三个关键参数
a.分辨率,即二维网格的也就是像素的实际尺寸,使用和三维网格相近的尺寸比较合适,因此通常是取三维网格所有边的平均值来作为spin inage 的每个网格尺寸,通常会把网格的长度和宽定义成相等,即边长,边长的计算公式(e为三维网络模型中的一条边,N为三维网格模型中的边的总数)
在这里插入图片描述

b. 大小,即spin image的行数和列数,两者一般也相等。可以参考的大小10
x10或20x20等

c. support angle,即法向量夹角大小的限制。空间中顶点的法向量与创建圆柱坐标系所选点法向量之间的夹角。在这里插入图片描述
可看出,对角度限制以后,那些相对于切面的“凹点(大于90°)”被剔除,保留了主要信息,降低了后续的计算量。
一般角度限制范围为60°-90°之间。

获得的spin image:
在这里插入图片描述

3.图像聚类算法

分类与聚类
分类其实是从特定的数据中挖掘模式,做出判断的过程。
主要过程
(1)训练数据集存在一个类标记,判断他是正向数据集(起积极作用,不是垃圾邮件)还是负向数据集(起抑制作用,垃圾邮件);
(2)然后需要对数据集进行学习训练,并构建一个训练的模型;
(3)通过该模型对预测数据集进行预测,并计算其结果的性能。
在这里插入图片描述

  • 聚类的目的也是把数据分类,但是事先是不知道如何去分的。完全是算法自己来判断各条数据之间的相似性,相似的就放在一起。

  • 在聚类的结论出来之前,完全不知道每一类有什么特点,一定要根据聚类的结果通过人的经验来分析,看看聚成的这一类大概有什么特点。

总之,聚类主要是”物以类聚“,通过相似性把相似元素聚集在一起,他没有标签;而分类通过标签来训练得到一个模型,对新数据集进行预测的过程,其数据存在标签。

聚类样本间的属性
1)有序属性:西瓜的甜度:0.1,0.5,0.9
2)无序属性:性别:男,女

聚类算法分为三大类:
1)原型聚类

  • K均值聚类算法

2)层次聚类
3)密度聚类

K-Means聚类
K-Means聚类是最常用的聚类算法,最初起源于信号处理,其目标是将数据点划分为K个类簇。该算法的最大优点是简单、便于理解,运算速度较快,缺点是要在聚类前指定聚集的类簇数。

k-means算法是一种原型聚类算法。

第一步:确定K值,即将数据集聚集成K个类簇或小组。
第二步,从数据集中随机选择K个数据点作为质心(Centroid)或数据中心
第三步,分别计算每个点到每个质心之间的距离,重新定义算法选出新的质心。(对于每个簇,计算其均值,即得到新的K个质心)
第四步,迭代执行第三步到第四步,直到迭代终止条件满足为止(聚类结果不在变化)

在这里插入图片描述在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
K-Means聚类与图像处理

在图像处理中,通过K-Means聚类算法可以实现图像分割、图像聚类、图像识别等操作。

我们通过K-Means可以将这些像素点聚类成K个簇,然后使用每个簇内的质心点来替换簇内所有的像素点,这样就能实现在不改变分辨率情况下量化压缩图像颜色,实现图像颜色层级分割。
在这里插入图片描述
优点:
1)是解决聚类问题的一种经典算法,简单、快速
2)对处理大数据集,该算法保持高效率
3)当结果簇是密集的,它的效果较好
缺点:
1)必须事先给出k(要生成簇的数目)
2)对噪声和孤立点数据敏感

4.层次聚类

层次聚类是一种很直观的算法。顾名思义就是要一层一层地进行聚类

层次法(Hierarchicalmethods)先计算样本之间的距离。每次将距离最近的点合并到同一个类。然后,再计算类与类之间的距离,将距离最近的类合并为一个大类。不停的合并,知道合成一个类,其中类与类的距离计算方法有:最短距离法,最长距离法,中间距离法,类平均法等。比如最短距离法,将类与类的距离定义为类与类之间样本的最短距离。
层次聚类法根据层次分解的顺序分为:自底向下和自上而下,即
凝聚的层次聚类算法和分层聚类算法(agglomerative和divisive)
,也可以理解为自下而上法(bottom-up)和自上而下法(top-down)
在这里插入图片描述
在这里插入图片描述
层次聚类
在这里插入图片描述在这里插入图片描述
在这里插入图片描述在这里插入图片描述
树形图分类判断
在这里插入图片描述
在这里插入图片描述
K-Means与层次聚类
每一种聚类方法都有其特征的数据结构,对于服从高斯分布的数据用K-Means来进行聚类效果会比较好。
而对于类别之间存在层结构的数据,用层次聚类会比较好。

密度聚类DBSCAN

算法:

需要两个参数:eps和形成高密度区域所需要的最少点数(minPts)

  • 它由一个任意未被访问的点开始,然后探索这个点的eps邻域,如果eps邻域里有足够的点,则建立一个新的聚类,否则这个点被标签为杂音。
  • 注意,这个杂音点之后可能被发现在其它点的eps邻域里,而该邻域可能有足够的点,届时这个点会被加入该聚类中。
    在这里插入图片描述
  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2021-09-29 10:15:46  更:2021-09-29 10:19:14 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/27 12:55:28-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码