计算机视觉-SIFT

一.SIFT(Scale Invariant Feature Transform) 算法

1.图像尺度空间

  • 要让计算机能够对物体在不同尺度下有一个统一的认知,就要需要考虑图像在不同尺度(远近,大小,颜色区别等)下存在的特点.
  • 尺度空间的获取通常使用高斯模糊来实现.I(x,y)表示一幅图像,G(x,y,sigma)为高斯函数,对图像做高斯滤波
    在这里插入图片描述
  • 选择不同大小的矩阵,做滤波;sigma主要控制矩阵中值的大小,不同的sigma的高斯函数决定了对图像的平滑程度,越大的sigma对应的图像月模糊;

2.多分辨率金字塔
在这里插入图片描述

  • 对中不同大小的图像都做出多个高斯滤波

3.高斯差分金字塔(DOG)
在这里插入图片描述

  • 提取有价值的信息,可以对相同大小(一组)图像作差(相邻间图像作差),可以消除相同的信息,提取出不同的信息(特征)
  • 对结果图像组中的选择差分结果较大值是比较重要的特征
    在这里插入图片描述

4.DoG空间极值检测

  • 选取一个点,在本图像中和其8邻域点进行比较,还要和去相邻的上一幅图和下一幅图的8邻域内的所有点作比较,来确定该点的大小(总共26个点进行比较).
    在这里插入图片描述

5.关键点的精确定位

  • 这些候选关键点是 DOG空间的局部极值点,而且这些极值点均为离散的点,精确定位极值点的一种方法是:对尺度空间DOG函数进行曲线拟合,计算其极值点,从而实现关键点的精确定位;
  • 对离散的点进行求导,可以利用原始函数求导公式
    在这里插入图片描述
  • 对于图像数据,是一个三维的数据,用同样的方法来计算极值;
    在这里插入图片描述

6.消除边界响应
在这里插入图片描述
7. 特征点的主方向

  • 每个特征点可以得到三个信息(x,y,sigma,seta),即位置,尺度,和方向.具有多个方向的关键点可以被复制成多分,然后将方向值分别赋值给复制后的特征点,一个特征点就产生了多个坐标,尺度相等,但是方向不同的特征点;在这里插入图片描述

在这里插入图片描述

8.生成特征描述

  • 方向和大小;

  • 梯度直方图

  • 在完成关键点的梯度计算后,使用直方图统计邻域内像素的梯度和方向(主方向);

  • 为了保证特征矢量的旋转不变性,要以特征点为中心,在附近邻域内将坐标轴旋转seta角度,即将坐标轴旋转为特征点的主方向;
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  • 分为四个区域,进行统计;
    在这里插入图片描述
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/484126.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

世界上最好的光刻机为什么来自荷兰?【物联网智商精选】

来源: 大数据实验室“是说芯语”已陪伴您439天现在微电子集成电路技术对世界的各种科技电子产品越来越应用广泛了,一个国家的发展越来越离不开高端芯片了,一个国家越是发展得越快对高端芯片需求量越大,比如我国的芯片需求占世界的50&#xff…

云计算与分布式系统课程学习笔记(二)——Linux基本命令的使用与熟悉

(1) jps 【显示当前系统的java进程情况,及其id号】 -q只显示pid,不显示class名称,jar文件名和传递给main方法的参数-m输出传递给main方法的参数-l输出主类的完整包名或者jar文件完整路径名-v输出传递给JVM的参数 编写一个JSPDemo…

【转】为了修复打码女神脸,他们提出二阶段生成对抗网络EdgeConnect

当图像缺失部分太多的时候,结合多阶段方法和边缘先验信息,这个 GAN 实现了高还原度的图像修复,玩法还不止于此。 在过去几年中,深度学习技术在图像修复方面取得了显着进步。然而,许多这些技术无法重建合理的结构&#…

QT跨平台项目开发经验(项目打包)

1.代码编写 1.1 代码编写简短,代码运行效率高,适当注释。一般一个大型的项目,代码的运行效率要求较高,一般需要秒级响应,甚至毫秒级。 1.2 建议使用命名空间::的形式来访问该命名空间中的变量和函数,这样可…

高等数学、线性代数、概率论、几何这些知识可以用来干什么?

来源:图灵人工智能应该会有很多模友在开始学习数学分析和高等数学时,第一反应是:但其实大多数人所用的教材,从大众角度看还没有到一种极致精确的架构数学的程度。大多数的教材所做的还是“我教会你怎么弄这个东西就行了&#xff0…

CentOS7 /etc/profile 添加环境变量重开终端后不生效

排查步骤如下: 查看/etc/profile里面的环境变量是否填写正确。 需要重启操作系统(很重要!!!) 将环境变量写入/etc/bashrc文件

C++类重点难点

1.构造函数与析构函数 1.1 在创建对象的时候会执行构造函数,对对象的成员属性进行初始话,在对象的生命周期结束时,执行析构函数; 1.2 设计到动态分配内存的时候,在构造函数中进行内存分配,在析构函数中进行…

CentOS7.7安装MySQL5.6并配置环境变量(详细版)

i. tar包下载 官网下载 https://dev.mysql.com/downloads/mysql/网盘获取 链接:https://pan.baidu.com/s/1DpULc0qQ4hqx6HWUwRilpw 提取码:tgdv ii. 安装所需环境 yum -y install make gcc-c cmake bison-devel ncurses-develiii. 解压tar包&#xf…

多少血的教训,才能换来对自动驾驶的严格限定、真实了解和正确使用?

来源:胡延平EarthRambler真的到了应该出台严格的安全措施的时候,而<道路交通安全法*修订建议稿>如何明确责任成为关从最新一起车祸的碰撞情况看,高速公路追尾卡车,雷达对前方目标的识别和驾驶系统的反应可能…

java并发编程-----深入剖析ThreadLocal

一.对ThreadLocal的理解 ThreadLocal,很多地方叫做线程本地变量,也有些地方叫做线程本地存储,其实意思差不多。可能很多朋友都知道ThreadLocal为变量在每个线程中都创建了一个副本,那么每个线程可以访问自己内部的副本变量。 这句…

QT动态连接库的编写

1.QT动态链接库的编写流程 1.1 首先在Qt Creator中创建一个动态连接库Matrix,添加类名,生成一个类(matrix.h和matrix.cpp)和一个matrix_global.h的文件,在matrix_global.h中可看到使用的导出宏,为MATRIXSHARED_EXPORT。如果只想导…

VMware下主机与虚拟机剪切板独立,无法直接复制粘贴

看了很多博客都说需要重新安装vmware tools,但我使用的是这种方法,亲测有效!!! 关闭虚拟机点击编辑虚拟机设置->选项选择客户机隔离,勾选上启动复制粘贴即可(如果之前就已经勾选上但失效的情…

教AI区分因果关系和相关性,将改变下一代 AI 的研发

来源:ScienceAI编辑:萝卜皮多年前,AI 领域曾发生过一件荒唐而有趣的事情。据说,研究人员开发了一种对医院数据进行训练的算法。这个算法发现,「患有哮喘的肺炎患者的治愈表现,比没有哮喘的肺炎患者更好」&a…

sdaf

dfddfdd 转载于:https://www.cnblogs.com/jiangfeilong/p/10432174.html

Java Socket实现客户端服务端之间的通信

Java Socket Java Socket编程用于在不同JRE上运行的应用程序之间的通信。Java Socket编程可以是面向连接的或无连接的。Socket和ServerSocket类用于面向连接的套接字编程,DatagramSocket和DatagramPacket类用于无连接套接字编程。 此Demo将进行单向客户端和服务器…

数据结构-线性结构

一.线性结构 1.顺序线性表 1.1 线性结构是一种基本的数据结构,具有单一前驱和后继的数据关系描述。 1.2 线性表的存储结构分为顺序存储和链式存储。 1.3 顺序线性表的元素间的逻辑关系无需占用额外的空间来存储。 1.4 一般地,以LOC(a1a_1a1​)表示线性…

脑智前沿科普|虚拟现实如何欺骗你的大脑

来源:公众号(脑与心智毕生发展研究中心CLIMB)编辑:Yezi审阅:mingzlee7虚拟现实(Virtual reality, VR)就像被神奇地传送到另一个世界。这是一项令人兴奋的技术,但当我们戴上耳机后,我们很少停下来…

C++11新特性以及std::thread多线程编程

一 .C11新特性 1. auto 类型推导 1.1 当号右边的表达式是一个引用类型时,auto会把引用抛弃,直接推导出原始类型; 1.2 当号右边的表达式带有const属性时,auto不会使用const属性; 1.3 当const 和引用结合时,…

Linux下Java连接数据库出现 Access denied for user 'root'@'localhost' (using password: YES)错误

一、问题描述 centos 7 终端键入 mysql -u root -p 输入密码后可成功访问数据库,但使用IDEA编写Java代码实现数据库连接时却出现Access denied for user ‘root’‘localhost’ (using password: YES) 错误。 二、解决方法 在刚安装mysql时,系统会默认…

Zookeeper常用命令行及API

一、Zookeeper常用命令行 1.启动zookeeper客户端(在启动zookeeper集群后启动进行调试) zkCli.sh   2.查看帮助、操作历史 help、history 3.查看当前Znode的目录 ls /    ls2 /  (查看当前Znode的详细信息) 4.创建Znode (1)默认:create 路径 内容 create /Wy…