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

模糊颜色和纹理直方图(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 系数。

时间: 05-23

图像检索:FCTH(Fuzzy Color and Texture Histogram)算法的相关文章

HDU 1556 Color the ball【算法的优化】

/* 解题思路:每次仅仅求解一開始的第一个数字,让第一个数字加一,最后的一个数字的后面一个数减一.我们能够想想,最后加的时候,就是加上前面一个数出现的次数和自己本身出现的次数. 解题人:lingnichong 解题时间:2014-10-25 10:30:46 解题体会:因为測试区间非常大,所以此题非常easy超时 */ Color the ball Time Limit: 9000/3000 MS (Java/Others)    Memory Limit: 32768/32768 K (Jav

笔试算法题(51):简介 - 红黑树(RedBlack Tree)

红黑树(Red-Black Tree) 红黑树是一种BST,但是每个节点上增加一个存储位表示该节点的颜色(R或者B):通过对任何一条从root到leaf的路径上节点着色方式的显示,红黑树确保所有路径的差值不会超过一倍,最终使得BST接近平衡: 红黑树内每个节点包含五个属性:color, key, left, right和p,p表示指向父亲节点的指针:一棵BST需要同时满足下述五个性质才能称作红黑树: 每个节点只能是红色或者黑色节点中的一种: 根节点必须是黑色: 每个叶节点(NULL)必须是黑色:

[数据结构和算法]折半插入排序算法笔记

/// <summary> /// 步骤: /// 1.记录当前待排元素 /// 2.标记顺序表有序查找区域下界和上界 /// 3.在顺序表有序查找区域中折半查找等待排序元素的位置 /// 4.把顺序表有序查找区域的某些元素后移一位,以空出位置给等待排序的元素 /// 5.在空出的位置填写当前排序元素 /// </summary> /// <param name="elements"></param> static void SqList

图像处理与计算机视觉基础,经典以及最近发展

*************************************************************************************************************** 在这里,我特别声明:本文章的源作者是   杨晓冬  (个人邮箱:[email protected]).原文的链接是 http://www.iask.sina.com.cn/u/2252291285/ish.版权归 杨晓冬 朋友所有. 我非常感谢原作者辛勤地编写本文章,并愿意共

图像处理与计算机视觉:图像处理与分析

1. Bilateral Filter Bilateral Filter俗称双边滤波器是一种简单实用的具有保持边缘作用的平缓滤波器,由Tomasi等在1998年提出.它现在已经发挥着重大作用,尤其是在HDR领域. [1998 ICCV] BilateralFiltering for Gray and Color Images [2008 TIP] AdaptiveBilateral Filter for Sharpness Enhancement and Noise Removal 2. Col

OpenGL核心技术之抗锯齿

笔者介绍:姜雪伟,IT公司技术合伙人,IT高级讲师,CSDN社区专家,特邀编辑,畅销书作者,国家专利发明人;已出版书籍:<手把手教你架构3D游戏引擎>电子工业出版社和<Unity3D实战核心技术详解>电子工业出版社等. CSDN视频网址:http://edu.csdn.net/lecturer/144 抗锯齿问题在游戏中一直存在的,尤其是体现在3D模型上的材质或者游戏UI界面上,由于现在引擎都非常完善,并且引擎都提供了抗锯齿功能,我们通过引擎提供的参数界面设置一下就可以消除.但是很

R语言 qplot

qplot 的意思是quick plot,是属于ggplot2包的一部分,使用时需先加载包. qplot参数: qplot(x, y = NULL, ..., data, facets = NULL, margins = FALSE, geom = "auto", xlim = c(NA, NA), ylim = c(NA, NA), log = "", main = NULL, xlab = deparse(substitute(x)), ylab = depar

cv 2.0入门

环境 VS2010UltimTrial1.iso                    http://pan.baidu.com/s/1dEL85kl VS2010UltimTrialCHS版注册码    YCFHQ-9DWCY-DKV88-T2TMH-G7BHP opencv-2.4.9.exe                              http://pan.baidu.com/s/1kVaVwoR 图片地址:                                  

56 Facial Recognition Research Groups to Watch

56 Facial Recognition Research Groups to Watch The research of facial recognition has been a fascinating journey. It began in the 1960s with Woody Bledsoe, Helen Chan Wolf, and Charles Bisson who created programs to assist with basic face recognition

Halcon学习之四:有关图像生成的函数

1.copy_image ( Image : DupImage : : ) 复制image图像 2.region_to_bin ( Region : BinImage : ForegroundGray, BackgroundGray,Width, Height : ) 将区域Region转换为一幅二进制图像BinImage. ForegroundGray, BackgroundGray分别为前景色灰度值和背景色灰度值. Width, Height为Region的宽度和高度. 3.region_t