文档章节

图像检索:FCTH(Fuzzy Color and Texture Histogram)算法

abcijkxyz
 abcijkxyz
发布于 2016/08/06 12:26
字数 1024
阅读 4
收藏 0

模糊颜色和纹理直方图(Fuzzy Color and Texture Histogram,FCTH)

 

本文节选自论文《基于半监督和主动学习相结合的图像的检索研究》


FCTH 特征可从 3 个模糊单元的组合求得结果。先将图像划分成若干分块,在第一个模糊单元中以 HSV 颜色空间的三个信道为输入,经模糊系统最终产生 10-bin 的直方图。在第二个模糊单元修改每个颜色的色调后,经模糊系统最终产生 24-bin 的直方图。以上两个模糊单元在颜色描述子的章节中已详细作了解释,且模糊颜色描述子与 CEDD中所提的颜色描述子是同一个概念,在此不再累述。在第三个模糊单元中,将图像分块经 Harr 小波变换成一组纹理元素,模糊系统以这些纹理元素集为输入将 24-bin 直方图转换成 192-bin 的直方图。最后是描述 FCTH 特征提取的实现。

2.1.3.2.1. 模糊纹理分割

模糊系统如图 2-8 所示,展示了模糊纹理直方图的求解过程,图像分块经 Harr 小波变换得到三个纹理元素fLH,fHL和fHH。这三个纹理元素作为模糊系统的输入,可得到 8-bin 直方图,8bins 对应的区域分别是:(0)低能量线性区,(1)低能量水平激活区,(2)低能量垂直激活区,(3)低能量水平和垂直激活区,(4)高能量线性区,(5)高能量水平激活区,(6)高能量垂直激活区,(7)高能量水平和垂直激活区。

事实证明fLH,fHL和fHH等纹理元素能有效辨别图像的纹理。


2.1.3.2.2. FCTH 的实现

首先定义与提取颜色信息相关的单元为颜色单元,与提取纹理信息相关的单元为纹理单元,如图 2-9 所示,纹理单元所在的模糊系统产生了 8 个区间,颜色单元所在的模糊系统产生了 24 个独立区间,这样最终的直方图将产生 8*24=192bin 区域。为了塑造这个直方图,衡量图像的细节与计算要求,先将图像分割成 1600 个分块。如果定义纹理单元的bin为N并且颜色单元的bin为M,那么该图像分块的直方图位置将为:N*24+M。

整个 FCTH 的实现模型如图 2-9 所示,分为纹理单元模块与颜色单元模块。

 

a) 在纹理单元模块中,每个图像分块经 Harr 小波变换得到三个纹理元素fLH,fHL和fHH的值,经模糊关联系统分类可将该图像分块归类于 8-bin 直方图中的一种。假设该图像分块被归类到第二 bin 中,则它对应的纹理应为低能量水平激活区。

b) 在颜色单元模块中,每个图像分块被转化到 HSV 颜色空间。信道色调 H,饱和度 S,亮度V组成模糊系统的输入,得到输出为10-bin的直方图。假设输出结果为第4bin,对应的颜色为红色。第二个模糊系统(24-bin 模糊关联)将原先的每个色调再次分割成 3 色调,改变亮度 V 为两个模糊区间,得出输出为 24-bin 直方图。再假设输出结果为第 4bin,此时对应的颜色却为深红色。合并这三个模糊系统最终可将该图像分块归类为 27bin(1*24+3)。

c) 反复对图像的所有分块执行上(a),(b)两个步骤,得到整张图像的直方图,直方图会归一于{0-1}区间内,而每个直方图可量化为 3 比特。

 

2.1.3.2.3. FCTH 特征的相似度量

为了计算 FCTH 特征向量的相似性距离我们选择使用 Tanimoto 系数。

本文转载自:http://blog.csdn.net/leixiaohua1020/article/details/16883143

abcijkxyz
粉丝 63
博文 6196
码字总数 1876
作品 0
深圳
项目经理
私信 提问

暂无文章

将博客搬至CSDN

https://blog.csdn.net/qq_38157006

Marhal
8分钟前
1
0
unicode Java中求字符串长度length()和codePointCount()的区别

在计算字符串长度时,Java的两种方法length()和codePointCount()一度让我困惑,运行书上例子得到的长度值是相等的,那为什么要设定两个方法呢? 对于普通字符串,这两种方法得到的值是一样的...

泉天下
9分钟前
1
0
uin-app 一、学习理由

选择uni-app 理由 别人的理由 1. 5+ 有HTML5+和Native.js技术,HTML5+包含常用的跨平台的几百个API,能满足常规开发需求,而Native.js把40w原生api映 射成js对象,这样js可以直接调原生。HTM...

轻轻的往前走
10分钟前
1
0
方括号及其在命令行中的不同用法介绍

通配 方括号最简单的用法就是通配。你可能在知道“ Globbing”这个概念之前就已经通过通配来匹配内容了,列出具有相同特征的多个文件就是一个很常见的场景,例如列出所有 JPEG 文件: ls *.j...

Linux就该这么学
16分钟前
1
0
vecty 基础

gopherjs 是把 go 编译为 js 的工具。 vecty 是基于 gopherjs 的一种类似 React 的开发框架。 安装 gopherjs 和 vecty go get -u github.com/gopherjs/gopherjsgo get -u github.com/gopher......

electricface
17分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部