计算机视觉(二)图像特征提取

news2024/12/29 10:10:35

文章目录

  • 颜色特征
    • 量化颜色直方图
      • 适用颜色空间:RGB、HSV等颜色空间
      • 操作
  • 几何特征
    • 边缘 Edge
      • 边缘定义
      • 边缘提取
  • 基于关键点的特征描述子
    • 引入
    • 几何特征:关键点
    • 几何特征:Harris角点
    • FAST角点检测
    • 几何特征:斑点
    • 局部特征:SIFT
    • 预备知识:Haar-like特征
    • 局部特征:SURF
    • BRIEF
    • LBP
  • 其他特征提取
  • 代码实践 pip install opencv-python

颜色特征

量化颜色直方图

适用颜色空间:RGB、HSV等颜色空间

  • HSV空间 计算高效,但存在量化问题和稀疏

操作

  • 颜色空间量化,单元(bin)由单元中心代表
    • 统计落在量化单元上的像素数量

几何特征

边缘 Edge

边缘定义

  • 像素值函数快速变化的区域->一阶导数的极值区域
    在这里插入图片描述

边缘提取

  • 先高斯去噪,再使用一阶导数获取极值
  • 导数对噪声敏感
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

基于关键点的特征描述子

引入

在这里插入图片描述

几何特征:关键点

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

几何特征:Harris角点

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

FAST角点检测

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

几何特征:斑点

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

  • 当sigma较小时,将识别出更为细节的边缘
    在这里插入图片描述
    在这里插入图片描述

局部特征:SIFT

  • 基于尺度空间不变的特征
  • 特点:
    - 具有良好的不变性
    - 独特性好,信息量丰富
    - 多量度
    - 计算快

在这里插入图片描述

  • 计算步骤
    在这里插入图片描述
  • 尺度空间
    LoG和DoG的运行结果差不多,但是DoG(差分)运算效率比LoG(微分)高很多
    在这里插入图片描述
  • 高斯金字塔
    在这里插入图片描述

补充:
1、为什么要构建高斯金字塔
高斯金字塔模仿的是图像的不同的尺度,尺度应该怎样理解?对于一副图像,你近距离观察图像,与你在一米之外观察,看到的图像效果是不同的,前者比较清晰,后者比较模糊,前者比较大,后者比较小,通过前者能看到图像的一些细节信息,通过后者能看到图像的一些轮廓的信息,这就是图像的尺度,图像的尺度是自然存在的,并不是人为创造的。好了,到这里我们明白了,其实以前对一幅图像的处理还是比较单调的,因为我们的关注点只落在二维空间,并没有考虑到“图像的纵深”这样一个概念,如果将这些内容考虑进去我们是不是会得到更多以前在二维空间中没有得到的信息呢?于是高斯金字塔横空出世了,它就是为了在二维图像的基础之上,榨取出图像中自然存在的另一个维度:尺度。因为高斯核是唯一的线性核,也就是说使用高斯核对图像模糊不会引入其他噪声,因此就选用了高斯核来构建图像的尺度。

2、高斯金字塔的构建步骤:
高斯金字塔构建过程中,一般首先将图像扩大一倍,在扩大的图像的基础之上构建高斯金字塔,然后对该尺寸下图像进行高斯模糊,几幅模糊之后的图像集合构成了一个八度,然后对该八度下的最模糊的一幅图像进行下采样的过程,长和宽分别缩短一倍,图像面积变为原来四分之一。

在这里插入图片描述

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

在这里插入图片描述

  • SIFT-特征点方向估计
    在这里插入图片描述
    在这里插入图片描述
    旋转过程比较复杂,转动特定角度时,点格坐标难表达

  • SIFT-计算特征点描述子
    在这里插入图片描述
    在这里插入图片描述

预备知识:Haar-like特征

  • Haar-like特征分为:边缘特征、线性特征、中心特征和对角线特征。它们组合为特征模板。
    在这里插入图片描述
    Haar特征反映了图像的灰度变化情况。

  • Haar-like特征的快速计算:积分图
    在这里插入图片描述

局部特征:SURF

对SIFT的改进

在这里插入图片描述
用海芬矩阵
在这里插入图片描述

  • 小造型
    在这里插入图片描述
    在这里插入图片描述

在这里插入图片描述
特征点→主方向→64维的向量

在这里插入图片描述
把海森矩阵做分析,形成模板

  • ORB特征描述
    在这里插入图片描述

在这里插入图片描述

BRIEF

在这里插入图片描述在这里插入图片描述
在这里插入图片描述
ORB计算形心。

LBP

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

  • 改进的LBP
    在这里插入图片描述
    在这里插入图片描述
    灰度不变性和旋转不变形

  • Gabor滤波器
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

其他特征提取

代码实践 pip install opencv-python

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

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

相关文章

GPT-4 模型详细教程

GPT-4(Generative Pretrained Transformer 4)是 OpenAI 的最新语言生成模型,其在各类文本生成任务中表现优秀,深受开发者和研究者喜爱。这篇教程将帮助你理解 GPT-4 的基本概念,并向你展示如何使用它来生成文本。 什么…

前端vue入门(纯代码)35_导航守卫

星光不问赶路人,时光不负有心人 【33.Vue Router--导航守卫】 导航守卫 正如其名,vue-router 提供的导航守卫主要用来通过跳转或取消的方式守卫导航。有多种机会植入路由导航过程中:全局的, 单个路由独享的, 或者组件级的。 记住参数或查…

uniapp JS文件里面调用自定义组件(不用每个页面在template中加组件标签)

前言 工具:uniapp 开发端:微信小程序 其他:uview 2.0 场景:路由器里面,统一验证是否已登录,如果没登录,则直接弹出登录弹窗出来,不管哪个页面都如此。 效果如下: 直接上…

【笔试强训选择题】Day29.习题(错题)解析

作者简介:大家好,我是未央; 博客首页:未央.303 系列专栏:笔试强训选择题 每日一句:人的一生,可以有所作为的时机只有一次,那就是现在!!!&#xff…

rsync—远程同步

目录 一:rsync概述 1.1rsync简介 1.2rsync同步方式 二:rsync特性 三:rsync同步源 四:rsync与cp、scp对比 五:常用rsync命令 六:rsync本地复制实例 七:配置源的俩种表示方法 八&#x…

[NLP]Huggingface模型/数据文件下载方法

问题描述 作为一名自然语言处理算法人员,hugging face开源的transformers包在日常的使用十分频繁。在使用过程中,每次使用新模型的时候都需要进行下载。如果训练用的服务器有网,那么可以通过调用from_pretrained方法直接下载模型。但是就本人…

安全DNS,状态码,编码笔记整理

一 DNS DNS(Domain Name System)是互联网中用于将域名转换为IP地址的系统。 DNS的主要功能包括以下几个方面: 域名解析:DNS最主要的功能是将用户输入的域名解析为对应的IP地址。当用户在浏览器中输入一个域名时,操作…

工程安全监测无线振弦采集仪在建筑物中的应用

工程安全监测无线振弦采集仪在建筑物中的应用 工程安全监测无线振弦采集仪是一种用于建筑物结构安全监测的设备,它采用了无线传输技术,具有实时性强、数据精度高等优点,被广泛应用于建筑物结构的实时监测和预警。下面将从设备的特点、应用场…

力扣热门100题之接雨水【困难】

题目描述 给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。 示例 1: 输入:height [0,1,0,2,1,0,1,3,2,1,2,1] 输出:6 解释:上面是由数组 [0,1,0,2,1,0,1,3…

如何使用GPT作为SQL查询引擎的自然语言

​生成的AI输出并不总是可靠的,但是下面我会讲述如何改进你的代码和查询的方法,以及防止发送敏感数据的方法。与大多数生成式AI一样,OpenAI的API的结果仍然不完美,这意味着我们不能完全信任它们。幸运的是,现在我们可以…

Packet Tracer – 配置动态 NAT

Packet Tracer – 配置动态 NAT 拓扑图 目标 第 1 部分:配置动态 NAT 第 2 部分:验证 NAT 实施 第 1 部分: 配置动态 NAT 步骤 1: 配置允许的流量。 在 R2 上,为 ACL 1 配置一个语句以允许属于 172.16.0.…

【JVM】浅看JVM的运行流程和垃圾回收

1.JVM是什么 JVM( Java Virtual Machine)就是Java虚拟机。 Java的程序都运行在JVM中。 2.JVM的运行流程 JVM的执行流程: 程序在执行之前先要把java代码转换成字节码(class文件),JVM 首先需要把字节码通过…

Visio/PPT/Matlab输出300dpi以上图片【满足标准投稿要求】

1. visio 遵照如下输出选项,另存为tif格式文件时,选择正确输出便是300dpi以上 2. matlab 文件选项选中导出设置,在渲染中选择dpi为600,导出图片即可,科研建议选择tif格式文件 3.ppt 打开注册表,winr键…

【报错】在python3.9环境下安装sqlmap报错

问题描述 报错内容: missing one or more core extensions (‘ssl’, ‘sqlite3’) most likely because current version of Python has been built without appropriate dev packages 原因分析: 缺少一个或多个核心扩展(‘ssl’、‘sqlit…

常见的栈溢出StackOverFlow 与 内存溢出OutOfMemory的区别

0、前言:内存模型 对于多线程运行情况下的jvm内存,我们应当知道: 每创建一个线程,jvm就会为其分配一块线程私有的工作内存,其中包括程序计数器、栈,等等。 对于每一个线程私有的栈,当线…

怎么限制文件打开次数、打开时间?

一些公司出于业务需求,可能会给客户或者合作伙伴发一些涉密图纸、文档、文件等重要文件,但是又不想文件被外发泄露随意传播,今天就教大家一个方法限制文件外发后别人打开这个文件的打开次数、打开时间、另存为等操作。 设置方法 本篇文章测试…

page _refcount和_mapcount字段

linux page有两个非常重要的引用计数字段_refcount和_mapcount,都是atomic_t类型,其中,_refcount表示内核中应用该page的次数。当_refcount 0时,表示该page为空闲或者将要被释放。当_refcount > 0,表示该page页面已…

APP-脱壳+反编译

APP反编译加固-自动查壳脱壳 为什么要脱壳? 因为不脱壳无法进行反编译 查壳工具:https://pan.baidu.com/s/1rDfsEvqQwhUmep1UBLUwSQ 密码: wefd 脱壳工具:https://github.com/CodingGay/BlackDex 查壳演示: 使用Java运行jar包&a…

浙江大学软件学院2022保研经历分享

首先,我想强调一点,如果我们只是一个普通的非211,985的本科生,一定要参加浙江大学每年7月份组织的夏令营,因为浙大的夏令营是一个海王营,基本上不会对入营的学生做筛选,但是要想获得优秀营员&am…