多媒体信息处理-重点知识-3. Feature Indexing and Retrieval

Chap 3. Feature Indexing and Retrieval

什么是索引?
为了提高数据集的检索效率而生成的结构化信息

基于特征的相似度匹配是多媒体数据检索方法的基础
从多媒体对象中提取重要特征,将其转化成高维特征向量存储在数据库中

相似性度量:
两种查询任务:
在这里插入图片描述

相似性查询可以通过扫描数据库来实现,但代价非常高
过滤 精简模式: Filter & Refine
近似策略快速过滤,对筛选后的结果精确比较
过滤策略需要满足两个条件:
候选集不能丢失任何可能的对象( 保证召回率
候选集包含的对象不能比真实相关对象多太多( 保证精度

核心问题 :如何高效的基于特征向量计算多媒体对象之间的相似性或距离?
特征向量通常是高维的三维空间中的点、立方体、球
文本、音频、图像等多媒体特征数据
常用的线性匹配查询,在高维特征条件下速度非常慢,需要研究特殊的技术和数据结构来支持高效的相似性匹配
高维数据的特点:
具有复杂的结构:可能是一个点,也可能是更复杂的图形,难以对高维数据排序
思路 :特征空间结构化
有了结构才能进行高效的索引,每次查询只需要检索少数几个子空间
高维索引就是针对高维空间进行空间划分和检索的技术和数据结构
影响查询效率的关键因素是磁盘的 I/O 次数,利用索引技术可以有效减少 I/O 次数
树结构非常自然的适用于索引结构

多维索引法
R tree 及其变形、 kd tree 等
近似最近邻法
VA File 等
降维法
iDistance 等
基于聚类的索引方法
Clindex 等

▪ 基于B树的索引方法
▪ B树,即二叉搜索树,其特点包括
▪ 1. 所有非叶子节点至多拥有两个子节点
▪ Left和Right
▪ 2. 所有的节点存储一个关键字
▪ 3. 非叶子节点的左指针指向小于其关键字的子
树,右节点指向大于其关键字的子树
▪ 数据的多维性使得传统的B树索引不再适合
▪ B树在一个维度上比较数据间的关系
▪ 大于、小于、等于
▪ 需要研究能适应高维特性的空间索引方式

▪ R-tree
▪ R树是B树向多维空间发展的另一种形式,是一种动态索引结构
▪ 对象空间按范围划分,每个结点对应一个区域▪ 由中间节点和叶节点组成
▪ 非叶结点存储其所有子结点的区域范围,所有子结点的区域都落在它的区域范围之内▪ 叶结点中存储其区域范围之内的所有空间对象的最小外接矩形(MBR

▪ 每个结点所能拥有的子结点数目有上、下限
▪ 下限保证对磁盘空间的有效利用
▪ 上限保证每个结点对应一个磁盘页
▪ 当新增操作导致某结点需要的空间大于一个磁盘页时,将该结点一分为二
▪ R树是一种动态索引结构,即:它的查询可与新增或删除同时进行

▪ 最小外接矩形MBR是包围数据,且平行于X,Y轴的最小外接矩形(以二维为例)
▪ MBR有什么作用?
▪ 数据的分布是不规则的,而MBR是平行于X,Y轴的规则图形,针对这样的矩形进行几何上的任何判断更加简单
▪ R-tree是B树在高维数据空间的扩展
▪ 是一种高度平衡树
▪ 用原始数据的最小边界矩形表示数据
▪ 删除、更新等操作都类似B树
▪ 有效支持的数据维数20维以下
▪ 可以进行点查询和范围查询
▪ 影响查询效率的主要因素
▪ 重叠区域:导致查询时遍历多个路径
▪ 死空间:导致查询时遍历不必要的路径
▪ 在构建R-tree时要尽量减少重叠区域和死区域的面积
分裂的原则:尽量减少对分裂后的两个节点进行查询操作
▪ 两个子节点所覆盖的区域面积之和尽量的小
▪ R-tree算法主要问题:
▪ 节点存在重叠现象,导致查询时可能要遍历多条路径,甚至是全部路径
▪ 当数据维度增大时,重叠现象迅速恶化,导致查询性能急剧下降

▪ R±tree
▪ 基本结构与R-tree相同
▪ 兄弟节点之间的MBR不允许重叠
▪ 一个数据可以被分割存储在不同的叶子节点中
▪ R±tree具有更好的查询性能,但需要更多的存
储空间
▪ 新增和删除操作的效率较低

▪ k-d-tree
▪ 一种由二叉搜索树推广而来的用于多维检索的树的结构形式(k即为空间的维数),主要应用于多维空间关键数据的搜索
▪ 传统二叉树无法适应多维数据的需求
▪ 与二叉搜索树不同的是它的每个结点表示k维空间的一个点,用一个k-1维超平面将节点所表示的k维空间分成两个部分
▪ N mod k

▪ VA-File (Vector Approximation File)
▪ 一种针对高维空间中矢量(点数据)的快速近似查询方法
▪ 通过数据压缩,近似表示高维矢量数据,减少磁盘代价

▪ VA-File的K近邻查询
▪ 1. 根据查询矢量确定匹配范围的下界和上界
▪ 2. 对候选矢量计算与查询矢量间的距离并排序 得到K近邻结果
▪ 量化精度影响匹配效果
▪ 量化越精确,第一步过滤效果越好,但代价更高
▪ 反之会影响第一步的查询精度
▪ 需要一个折中策略来确定量化精度

▪ iMinMax(θ)
▪ 一种基于降维的高维索引方法
▪ 将高维空间的点用其在所有维上的最大值或最小值表示,即利用边界近似的方法将高维数据映射到一维,然后用B±tree进行索引
▪ 通过调整参数θ,使算法适应不同的数据分布

▪ 基于聚类的索引结构
▪ 高维数据的分布具有聚集的特点
▪ 存在的问题:
▪ 聚类算法复杂度较高
▪ 聚类效果不理想

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

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

相关文章

使用BundleFusion重建個人數據集【全網最詳細】

寫在前面 推薦使用的項目代碼: GitHub - FangGet/BundleFusion_Ubuntu_Pangolin: a porting for BundleFusion working on ubuntu, with Pangolin as visualizer 本人電腦配置: 本人電腦配置是Ubuntu 20.04cuda 11.7 2080TI 使用iphone 進行場景的拍…

PS在图片上直线、虚线、曲线

使用钢笔工具和直线工具都可以画直线,

python代码性能分析

基准测试可以发现程序变慢了,那么是因为什么原因导致性能变慢的,需要进一步做代码性能分析。python同样提供了性能分析工具。 cProfile cProfile是python默认的性能分析器,他只测量CPU时间,并不关心内存消耗和其他与内存相关联的…

SkyEye:助力飞行器状态控制系统仿真

飞行器与常见的航天器一样,属于安全关键领域的大型复杂设备,对安全性、可靠性有着极高的要求。为保证稳定飞行,需要对目标对象进行实时跟踪,通过发出正确的修正偏差指令来操纵飞行器改变飞行姿态,因此对飞行器状态控制…

Java实现的双向链表示例

双向链表(Doubly Linked List)是一种链式数据结构,每个节点都包含两个指针,一个指向前一个节点,一个指向后一个节点。双向链表与单向链表相比,除了有前向指针外,还有一个额外的后向指针&#xf…

Stable Diffusion 提示词语法(Prompt)

本文收录于《AI绘画从入门到精通》专栏,专栏总目录:点这里。 大家好,我是水滴~~ 本篇文章主要讲述 Stable Diffusion 提示词语法,主要包括:提示词的概念、提示词的长度、权重、分步绘制、交替绘制、组合绘制等&#x…

LeetCode每日一题 相同的树(二叉树)

题目描述 给你两棵二叉树的根节点 p 和 q ,编写一个函数来检验这两棵树是否相同。如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。 示例 1: 输入:p [1,2,3], q [1,2,3] 输出:true 示…

ChatGPT/GPT4科研技术应用与AI绘图(包含Claude3、Gemini、Sora、GPTs中大模型的最新技术)

2023年随着OpenAI开发者大会的召开,最重磅更新当属GPTs,多模态API,未来自定义专属的GPT。微软创始人比尔盖茨称ChatGPT的出现有着重大历史意义,不亚于互联网和个人电脑的问世。360创始人周鸿祎认为未来各行各业如果不能搭上这班车…

springboot使用异步多线程

shigen坚持更新文章的博客写手,擅长Java、python、vue、shell等编程语言和各种应用程序、脚本的开发。记录成长,分享认知,留住感动。 个人IP:shigen 在shigen之前的很多文章中,提到了线程池: 高性能API设计…

二叉搜索树题目:二叉搜索树迭代器

文章目录 题目标题和出处难度题目描述要求示例数据范围进阶 解法一思路和算法代码复杂度分析 解法二思路和算法代码复杂度分析 解法三思路和算法代码复杂度分析 题目 标题和出处 标题:二叉搜索树迭代器 出处:173. 二叉搜索树迭代器 难度 4 级 题目…

文物藏品信息管理系统的优势

本系统支持一普标准所有管理信息,包括保管信息、基本情况、鉴定信息、考古发掘信息、来源信息、流传经历、损坏记录、移动记录、修复记录、展览信息、著录信息、收藏单位信息等的管理和维护。 能够实现对藏品信息进行动态管理,提供藏品信息管理指标的维护…

力扣--动态规划516.最长回文子序列

思路分析: 创建一个二维动态规划表dp,其中dp[i][j]表示在子串s[i...j]中的最长回文子序列的长度。初始化基本情况:对角线上的元素dp[i][i]都为1,因为单个字符本身就是长度为1的回文子序列。从字符串末尾向前遍历,填充…