多媒体信息处理-重点知识-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进行索引
▪ 通过调整参数θ,使算法适应不同的数据分布

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

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

springboot245科研项目验收管理系统

科研项目验收管理系统 摘 要 使用旧方法对科研项目信息进行系统化管理已经不再让人们信赖了,把现在的网络信息技术运用在科研项目信息的管理上面可以解决许多信息管理上面的难题,比如处理数据时间很长,数据存在错误不能及时纠正等问题。这次…

Tomcat性能调优

1‍.应用场景/常见内容溢出问题‍ 常见问题为内存溢出,分为堆内存溢出、非堆内存溢出,比较常见的为堆内存溢出,后2类属于非堆内存溢出。 堆溢出: java.lang.OutOfMemoryError:Java heap spcace 原因:项目运行阶段,new的对象过多…

Linux CentOS系统安装Spug并结合内网穿透实现远程访问本地运维平台

目录 前言 1. Docker安装Spug 2 . 本地访问测试 3. Linux 安装cpolar 4. 配置Spug公网访问地址 5. 公网远程访问Spug管理界面 6. 固定Spug公网地址 结语 作者简介: 懒大王敲代码,计算机专业应届生 今天给大家聊聊Linux CentOS系统安装Spug并结合…

Leetcode刷题(三十八)

旋转矩阵(Medium) 给定一个 n n 的二维矩阵 matrix 表示一个图像。请你将图像顺时针旋转 90 度。你必须在 原地 旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要 使用另一个矩阵来旋转图像。示例 1:输入:mat…

Blazor系统教程(.net8)

Blazor系统教程 1.认识 Blazor 简单来讲,Blazor旨在使用C#来替代JavaScript的Web应用程序的UI框架。其主要优势有: 使用C#编写代码,这可提高应用开发和维护的效率利用现有的NET库生态系统受益于NET的性能、可靠性和安全性与新式托管平台(如…

MYSQL使用mysqldump备份、复原数据库

参考 添加链接描述 1. 备份数据库 C:\Windows\system32>mysqldump -uroot -p test student>C:\student.sql Enter password: ****2. 备份多个数据库 mysqldump -u root -p --databases test mysql>C:\testandmysql.sql3. 备份所有数据库 mysqldump -u root -p -…

二维码样式修改如何在线处理?在电脑上改二维码图案的方法

随着网络的不断发展,二维码的应用场景不断增多,很多人都会将内容放到二维码中,通过扫码的方式将储存在云端的数据调取显示。而面对不同的用途时,对二维码的样式也会有单独的要求,比如需要改变颜色、加入文字、logo、尺…

加油!你也可以成为学生口中的“好老师”

在教育的道路上,每一位教师都承载着塑造未来的重要使命。而成为学生口中的“好老师”,无疑是每位教育工作者的追求和荣耀。那么,如何才能成为这样的“好老师”呢? 一、热爱教育,关爱学生 成为“好老师”的首要条件是对…

神经网络(neural network)

在这一章中我们将进入深度学习算法,学习一些神经网络相关的知识,这些是有更加强大的作用,更加广泛的用途。 神经元和大脑(neurons and the brain): 我们对于我们的编程的进步主要来自我们对于大脑的研究,根据我们对于大脑的研究…

Vue系列-环境快速搭建

vue环境快速搭建 演示视频 快速搭建Vue开发环境pnpm和yarn 1. 基本信息 作者: GMCY系列: Vue仓库: GitHub | Gitee话题(GitHub): tools \ vue创建时间: 2024/03/02 2. 介绍 功能 批处理文件vue 环境的快速搭建nodejs, npm, pnpm, yarn 自动 下载安装npm, pnpm, yarn 自动 …

网络空间资产安全解决方案

长期以来,我们一直强调要做好网络安全建设,而其中的第一步就是要做好对自身资产的发现和清点,正如大家经常所说的那句话——“你无法保护你看不见的东西”。的确,如果不知道自己拥有什么资产,那么如何去了解与它们相关…

js 实现点击按钮小球加入购物车动画

本文旨在实现类似点击按钮实现小球加入购物车效果。 使用技术: Vue2使用 Pubsub 监听按钮点击事件(如果不想用也可以自己改造下)监听 onmousemove 来获取按钮点击时的鼠标位置 小球组件: html css: 小球父元素&am…

小心!Springer旗下34年老刊大量撤稿中国论文,16天见刊,中国人该如何应对?

毕业推荐 SCIE: • 计算机类,6.5-7.0,JCR1区,中科院2区 • 2个月19天录用,6天见刊,36天检索 SCI&EI(CCF-C类) • 算法类,2.0-3.0,JCR3区,…

ChatGPT提问技巧——标准提示

ChatGPT提问技巧——标准提示 标准提示是一种通过向模型提供一个具体要完成的任务,指导ChatGPT输出的简单方式。例如,如果你想生成一个新闻的总结,你要提供一个任务像这样的“总结一下这篇新闻文章“。 提示格式:”生成【任务】…

IoT数据采集网关在企业应用中扮演着关键角色-天拓四方

随着物联网(IoT)技术的不断发展,越来越多的企业开始利用IoT技术实现智能化、自动化的生产和管理。在这个过程中,IoT数据采集网关作为连接物理世界与数字世界的桥梁,发挥着至关重要的作用。 IoT数据采集网关是一种硬件…

LeetCode 2917.找出数组中的 K-or 值:基础位运算

【LetMeFly】2917.找出数组中的 K-or 值:基础位运算 力扣题目链接:https://leetcode.cn/problems/find-the-k-or-of-an-array/ 给你一个下标从 0 开始的整数数组 nums 和一个整数 k 。 nums 中的 K-or 是一个满足以下条件的非负整数: 只有…

横琴正式封关运行,惟客数据都做了什么?

​作为中国实施高水平制度型开放的重大探索,位于珠海横琴岛的横琴粤澳深度合作区于2024年3月1日零时正式实施分线管理封关运行,共设1个“一线”口岸、7个“二线”海关作业现场,覆盖旅检、货运、通关、稽(核)查等多线条…

第26章 模块

本章内容  理解模块模式  凑合的模块系统  使用前 ES6 模块加载器  使用 ES6 模块 现代 JavaScript 开发毋庸置疑会遇到代码量大和广泛使用第三方库的问题。解决这个问题的方案通常需要把代码拆分成很多部分,然后再通过某种方式将它们连接起来。 文章目录 …

MySQL基础-----函数

目录 前言 一、字符串函数 演示 案例 二、数值函数 演示 案例 三、日期函数 演示 案例 四、流程函数 演示 案例 前言 本期我们就开始MySQL中函数的学习。函数 是指一段可以直接被另一段程序调用的程序或代码。 也就意味着,这一段程序或代码在MySQL中 已经…

Linux之线程概念

目录 一、细粒度划分 1、堆区细粒度划分 2、物理内存和可执行程序细粒度划分 3、虚拟地址到物理地址的转化 二、线程的概念 1、基本概念 2、线程的优点 3、线程的缺点 4、线程异常 5、线程用途 三、Linux下的进程和线程 一、细粒度划分 1、堆区细粒度划分 在语言…