GIST特征描述符使用

  • 时间:
  • 浏览:0
  • 来源:大发快三_快三下载app送18元彩金_大发快三下载app送18元彩金

GIST形态学 描述符使用

2012-12-06 09:49  Justany_WhiteSnow  阅读(...)  评论()  编辑  收藏

两种场景形态学 描述

场景形态学 描述?

通常的形态学 描述符全是对图片的局部形态学 进行描述的,以这个思路进行场景描述是不可行的。

比如:对于“大街上有或多或少行人”这个场景,让我应该 们时需通过局部形态学 辨认图像是是是不是有大街、行人等对象,再断定这是是是不是满足该场景。但这个计算量无疑是巨大的,且形态学 向量也可能大得无法在内存中存储计算。

类似即使使用GIST进行1MB的图像数据搜索,也时需3.8GB的RAM空间。

—— Evaluation of GIST descriptors for web­scale image search Talk

这迫使让我应该 们时需两种更加“宏观”的形态学 描述最好的方法,从而忽略图片的局部特点。比如:让我应该 们不不知道图像中在哪些地方地方位置有十几个 人,可能有或多或少哪些地方对象。

没有 应该要怎样定义两种“宏观”的场景形态学 描述呢?

让我应该 们注意到:

大多数城市看起来就像天空和地面由建筑物外墙紧密连接;大每种高速公路看起来就像十几个 多 大冠部 拉伸天际线,上方充满了凹型(车辆);而森林场景将包括在十几个 多 封闭的环境中,有垂直形态学 作为背景(树),并连接到一定纹理的水平冠部 (草)。

没有 看来,空间包络可不可不可不可不可以一定程度表征哪些地方地方信息。

两种空间包络描述

让我应该 们定义下列两种对空间包络的描述最好的方法:

  • 自然度(Degree of Naturalness):场景可能中暗含度的水平和垂直线,这表明该场景有明显的人工痕迹,通常自然景象具有纹理区域和起伏的轮廓。所以,边缘具有高度垂直于水平倾向的自然度低,反之自然度高。
  • 开放度(Degree of Openness):空间包络是是是不是封闭(或围绕)的。封闭的,类似:森林、山、城市中心。可能是广阔的,开放的,类似:海岸、高速公路。
  • 粗糙度(Degree of Roughness):主要指主要构成成分的颗粒大小。这取决于每个空间中元素的尺寸,让我应该 们构建更加复杂化的元素的可能,以及构建的元素之间的形态学 关系等等。粗糙度与场景的分形维度有关,所以可不可不可不可不可以叫复杂化度。
  • 膨胀度(Degree of Expansion):平行线收敛,给出了空间梯度的高度特点。类似平面视图中的建筑物,具有低膨胀度。相反,非常长的街道则具有高膨胀度。
  • 险峻度(Degree of Ruggedness):即相对于水平线的偏移。(类似,平坦的水平地面上的山地景观与陡峭的地面)。险峻的环境下在图片中生产倾斜的轮廓,并隐藏了地平线线。大多数的人造环境建立了平坦地面。倘若,险峻的环境大多是自然的。

从而基于这五点对图像进行形态学 描述。

本文不不准备深入GIST的算法,如想了解具体算法,请参考参考资料1。

MatLab实现

参考资料2提供了十几个 多 MatLab实现。

类似通过图片计算GIST形态学 描述,在使用LMgist的情形下,可不可不可不可不可以没有 写:

% 读取图片
img = imread('demo2.jpg');

% 设置GIST参数
clear param
param.orientationsPerScale = [8 8 8 8]; % number of orientations per scale (from HF to LF)
param.numberBlocks = 4;
param.fc_prefilt = 4;

% 计算GIST
[gist, param] = LMgist(img, '', param);

具体请参考参考资料2。

C实现

  • 首先在LEAR下载其提供的Lear's GIST implementation。

可能其基于FFTW3(the Faster Fourier Transform in the West),所以让我应该 们还时需先安装fftw3。

  • 在下载页面下载十几个 多 合适的FFTW3版本。
  • Linux可能Mac时需在终端运行configure时配置浮点数版本(Windows没试过,不过Lear's GIST implementation的Readme中说明了不到在Linux和Mac上跑,所以Windows安装这个也没有 ……),即

./configure --enable-single

  •  在进行编译:

make

make check

sudo make install

  • 编译Lear's GIST implementation

时需将Makefile的:

compute_gist: compute_gist.c gist.o standalone_image.o
gcc -Wall -g -o $@ $^ $(WFFTLIB) -lfftw3f

换成-lm,改成:

compute_gist: compute_gist.c gist.o standalone_image.o
gcc -Wall -g -o $@ $^ $(WFFTLIB) -lfftw3f -lm

倘若:

make

  • 将生成compute_gist程序,则可不可不可不可不可以对PPM图片进行GIST计算。类似在终端输入:

./compute_gist ar.ppm

可能老出9500个浮点数,如下:

0.0579 0.1926 0.0933 0.0662 ....

……

.... 0.0563 0.0575 0.0640

注意事项

  1. 输入图片时需是原始(也倘若二进制)的PGM/PPM格式的图片。
  2. 输入图片的尺寸时需是相同的,倘若计算出来的GIST没哪些地方地方意义。
  3. 通过SVM训练来进行图片检测,5001年那篇论文得出83.7%的判断准确度。

参考资料

Modeling the Shape of the Scene: A Holistic Representation of the Spatial Envelope . Aude Oliva & Antonio Torralba . January 22, 5001

Modeling the shape of the scene: a holistic representation of the spatial envelope DEMO

  • 分类 Computer Vision
  •