基于内容的图像搜索:空间考量与技术应用
1. 空间考量的引入
在图像搜索中,基于整个图像的统计测量往往不如基于图像细分的测量有效。这是因为在许多图像中,最感兴趣的对象通常靠近图像中心。给靠近中心的像素更高的优先级可能会改善搜索效果,而忽略边界像素则肯定会加快搜索速度。
基于Rao的工作,有五种不同的定义子区域的方法:整体区域、矩形区域、角形区域、圆形区域和混合区域。
2. 不同类型的子区域
- 整体区域 :将整个图像视为一个单一区域,这对应于通常讨论和评估的全局技术。
-
矩形区域
- 实现方式 :将图像分割成多个垂直和水平部分,然后从网格中的每个区域提取特征。例如,垂直切割4次和水平切割4次会产生25个子区域。允许区域重叠可以模糊区域之间的边界,并允许对象位置有一定的自然变化。
- 优缺点 :优点是快速且易于实现;缺点是未考虑旋转因素。
- 实验结果 :使用灰度边缘特征时,整体图像的结果较差,而在子区域上使用这些特征时,结果显著改善。例如,使用25个边缘密度测量值组成的向量,边缘密度成功率从整体图像的3.8%提高到85.2%。
| 特征 | 整体图像成功率 | 5x5子区域成功率 |
|---|---|---|
| 边缘密度 | 3.8%(25/654) | 85.2%(557/654) |
| 布尔边缘密度 | 0.46%(3/654) | 55.2%(361/654) |
| 边缘方向 | - | 89.1%(583/654) |
-
角形区域
- 定义 :从图像的几何中心(而非基于像素的质心)辐射出的楔形部分,常见的角度差为45度,可创建八个角形区域。
- 优缺点 :优点是所有区域都包含一些中心和外围像素,具有良好的旋转特性;缺点是比矩形区域更难实现,某些角度的采样比其他角度更准确。
-
实现方法
:可以通过构建包含图像部分的三角形,然后进行标准的点在多边形内测试;或者使用任何像素与图像中心创建的简单角度。以下是计算角度的函数
angle_2pt的代码:
float angle_2pt (int r1, int c1, int r2, int c2)
{
double atan(), fabs();
double x, dr, dc, conv;
conv = 180.0/3.1415926535;
dr = (double)(r2-r1);
dc = (double)(c2-c1);
/* Compute the raw angle from Drow, Dcolumn */
if (dr==0 && dc == 0) x = 0.0;
else if (dc == 0) x = 90.0;
else
{
x = fabs(atan (dr/dc));
x = x * conv;
}
/* Adjust the angle according to the quadrant */
if (dr <= 0) {//upper 2 quadrants
if (dc < 0) x = 180.0 - x; // Left
}
else if (dr > 0) // Lower 2 quadrants
{
if (dc < 0) x = x + 180.0; // Left
else x = 360.0-x;
}
return (float)x;
}
-
圆形区域
- 定义 :由尽可能从图像几何中心开始的同心圆或环组成,实验中使用了五个环,最后一个环的半径等于最大行和列索引的最大值。
- 优缺点 :优点是旋转不变,使用更多环的成本不会显著增加,且易于对环进行加权,使图像中心更重要;缺点是实现成本高,边界附近的像素被任意分配到区域。
- 采样方法 :通过确定到图像中心的距离进行采样。例如,对于256x256像素的图像,若要创建五个区域,先计算最大圆的半径r4 = 256,然后计算相邻圆之间的距离dr = 64,依次得到r3 = 192,r2 = 128,r1 = 64。
-
混合区域
- 定义 :是角形区域和圆形区域的逻辑组合,类似于二维极坐标系统。
- 优缺点 :优点是结合了所有基于区域的方法的结果,应该能在广泛的图像类别中提供更好的结果;缺点是实现成本高,因为需要计算所有方法。
3. 空间采样测试
选择了五种算法:灰度西格玛、边缘密度、布尔边缘密度、边缘方向和颜色直方图,并对每种算法使用了五种定义区域的方法。实验使用了Corel数据集,包含来自8个类别的782张图像。
以下是“海滩”类别的区域/特征准确率表:
| 空间采样方法 | 灰度西格玛 | 边缘方向 | 边缘密度 | 布尔边缘密度 | 色调直方图 | 强度直方图 |
|---|---|---|---|---|---|---|
| 整体 | 12.8% | 18.3% | 9.6% | 11.6% | 23.7% | 18.5% |
| 矩形 | 13.2% | 20.7% | 9.6% | 10.2% | 22.1% | 12.7% |
| 角形 | 12.7% | 15.1% | 9.6% | 9.6% | 23.7% | 14.9% |
| 圆形 | 20.0% | 12.5% | 13.1% | 15.2% | 23.4% | 20.1% |
| 混合 | 22.1% | 21.4% | 5.8% | 14.3% | 25.5% | 12.4% |
通过对所有图像进行搜索实验,计算相似性值并排序,使用简单的Borda计数作为投票方法,最终得到的整体系统结果如下:
| 图像类别 | 结果 |
|---|---|
| 马 | 86.37% |
| 海滩 | 28.78% |
| 恐龙 | 98.97% |
| 花 | 81.67% |
| 公共汽车 | 58.78% |
| 大象 | 39.30% |
| 建筑 | 40.43% |
| 山脉 | 26.90% |
| 总体 | 56.95% |
与Rao和Tico的方法相比,本复合系统在大多数情况下给出了更好的成功率。
4. 其他考量因素
-
纹理
- 灰度共生纹理测量 :基于灰度共生的纹理测量在确定图像相似度方面有一定成功应用,如能量、熵、对比度和同质性。文献评估表明同质性效果最好,约为12%,但计算时间通常比大多数讨论的测量方法长。
- Tamura纹理特征 :基于人类感知而非数学原理,其中粗糙度、对比度和方向性对基于纹理的图像查询有一定价值,成功率在9 - 12%之间,且计算强度较低,常用于实际系统。
-
对象、轮廓和边界
- 对象识别的重要性 :从长远来看,识别图像中的对象能力将导致高度成功的基于内容的检索。目前技术水平相对较差,但前景良好。
- 实现步骤 :首先进行分割,使用颜色、纹理、边缘等方法区分主要对象和背景,然后对对象的形状进行统计表征或结构分析,并与数据集中的已知对象进行比较。
-
数据集
- 图像大小和分辨率 :为了在不同大小、比例和其他属性的图像数据集中获得最佳结果,应在测量特征之前将图像缩放到固定大小(如256x256)。
- 对比度调整 :修改图像的对比度,使其强度范围遵循已知模式,以确保图像在测量特征前具有相似的对比度并填充强度范围。
- 像素加权 :给靠近图像中心的像素更高的权重,例如使用固定大小的图像作为模板,构建一个权重图像,中心像素权重为2.0,外围边缘像素权重为0.2。
- 数据集特性 :对于高度同质的数据集,如医学图像数据和工业数据集,应识别特定特征以检测细微变化,或在图像的特定位置查找某些类型的特征。
5. 网站文件
可以在www - i6.informatik.rwth - aachen.de/dagmdb/index.php/Content - Based_Image_Retrieval找到一个不错的图像“数据库”列表。还有一些相关的文件,如
angular.c
用于使用角形方法对图像进行采样并显示子区域,
check.c
用于确认二进制特征文件与文本文件的正确性。
综上所述,基于内容的图像搜索涉及多种技术和方法,通过合理选择和组合这些方法,可以提高搜索的准确性和效率。在实际应用中,需要根据数据集的特点和具体需求进行优化和调整。
基于内容的图像搜索:空间考量与技术应用
6. 纹理分析在图像搜索中的应用
纹理是图像的重要特征之一,在图像搜索中具有重要作用。下面详细介绍两种常见的纹理分析方法及其应用。
-
灰度共生纹理测量
-
原理
:灰度共生矩阵描述了图像中灰度级的空间分布关系,通过计算能量、熵、对比度和同质性等统计量,可以量化图像的纹理特征。
-
优缺点
:优点是能够较为准确地描述图像的纹理信息,缺点是计算复杂度较高,需要较长的计算时间。
-
应用场景
:适用于对纹理细节要求较高的图像搜索场景,如纺织品、木材等纹理识别。
-
Tamura纹理特征
-
原理
:基于人类对纹理的感知,定义了粗糙度、对比度和方向性等特征。这些特征更符合人类的视觉认知,计算相对简单。
-
优缺点
:优点是计算效率高,对纹理的描述具有一定的直观性;缺点是对纹理的量化不够精确。
-
应用场景
:广泛应用于实际的图像搜索系统中,如QBIC和MARS等系统都使用了Tamura纹理特征。
| 纹理分析方法 | 原理 | 优点 | 缺点 | 应用场景 |
|---|---|---|---|---|
| 灰度共生纹理测量 | 基于灰度共生矩阵计算统计量 | 准确描述纹理信息 | 计算复杂度高 | 纺织品、木材纹理识别 |
| Tamura纹理特征 | 基于人类感知定义特征 | 计算效率高,直观性强 | 量化不够精确 | 实际图像搜索系统 |
7. 对象识别与图像分割
在图像搜索中,识别图像中的对象是实现高效检索的关键。以下是对象识别的相关步骤和方法。
-
图像分割
-
目的
:将图像中的主要对象与背景分离,以便后续对对象进行分析和识别。
-
方法
:可以使用颜色、纹理、边缘等信息进行分割。例如,基于颜色的分割方法可以通过颜色阈值将图像中的不同区域分离出来;基于边缘的分割方法则通过检测图像中的边缘来确定对象的边界。
-
对象特征提取
-
形状特征
:如圆形度、矩、傅里叶描述符等,可以描述对象的形状特征。这些特征可以通过对分割后的对象进行计算得到,并组成特征向量。
-
结构分析
:将对象与数据集中的已知对象进行比较,通过结构匹配来识别对象。
以下是对象识别的流程图:
graph TD;
A[图像输入] --> B[图像分割];
B --> C[对象特征提取];
C --> D[形状特征计算];
C --> E[结构分析];
D --> F[特征向量生成];
E --> F;
F --> G[与已知对象比较];
G --> H[对象识别结果];
8. 数据集处理与优化
为了提高图像搜索的准确性和效率,需要对数据集进行适当的处理和优化。
-
图像大小和分辨率调整
-
操作步骤
:将用户的图像和目标图像都缩放到固定大小(如256x256),以确保特征测量的一致性。可以使用图像缩放算法,如双线性插值或最近邻插值。
-
对比度调整
-
操作步骤
:修改图像的对比度,使其强度范围遵循已知模式。可以通过直方图均衡化等方法来实现。
-
像素加权
-
操作步骤
:使用固定大小的图像作为模板,构建一个权重图像,中心像素权重为2.0,外围边缘像素权重为0.2。将像素值乘以相应的权重,然后进行归一化处理。
以下是数据集处理的操作步骤列表:
1. 图像缩放:将图像缩放到256x256像素。
2. 对比度调整:使用直方图均衡化方法调整图像对比度。
3. 像素加权:构建权重图像,对像素进行加权和归一化处理。
9. 实验结果与比较
通过对Corel数据集的实验,比较了不同方法的图像搜索准确率。
| 图像类别 | Rao方法准确率 | Tico方法准确率 | 本复合系统准确率 |
| ---- | ---- | ---- | ---- |
| 海滩 | 27.7% | 25.6% | 28.8% |
| 马 | 89.0% | 68.3% | 86.4% |
| 恐龙 | 42.0% | 72.6% | 99.0% |
| 大象 | 20.0% | 24.7% | 39.3% |
| 花 | 46.4% | 51.3% | 81.7% |
| 建筑 | 27.0% | 24.2% | 30.4% |
| 公共汽车 | 36.0% | 33.7% | 58.8% |
| 山脉 | 26.0% | 19.9% | 26.9% |
| 总体 | 39.5% | 40.4% | 57.0% |
从实验结果可以看出,本复合系统在大多数情况下具有更好的准确率,说明合理组合多种方法可以提高图像搜索的性能。
10. 总结与展望
基于内容的图像搜索是一个复杂的领域,涉及空间考量、纹理分析、对象识别和数据集处理等多个方面。通过对不同方法的研究和实验,我们发现合理选择和组合这些方法可以显著提高搜索的准确性和效率。
在未来的研究中,可以进一步探索更高效的图像分割和对象识别算法,以提高对复杂图像的处理能力。同时,结合深度学习等先进技术,有望实现更智能、更精准的图像搜索系统。此外,对于不同类型的数据集,还需要深入研究其特性,开发针对性的优化方法,以满足不同应用场景的需求。
总之,基于内容的图像搜索技术具有广阔的发展前景,通过不断的研究和创新,将为人们提供更加便捷、高效的图像搜索服务。
超级会员免费看
12

被折叠的 条评论
为什么被折叠?



