matlab练习程序(GIST特征)
GIST是一种图像全局信息特征,能够对场景进行识别与分类。
计算方法如下:
1. 首先在4个尺度和8个方向上设置Gabor滤波器,并对图像做滤波,得到32个滤波后图像。
2. 对滤波后图像分成4*4个区域,计算每个区域内像素均值。
3. 得到4*8*4*4=512个区域均值组成的特征向量,即为Gist512特征。
matlab代码如下:
clear all;close all;clc; img = imread('rice.png'); imshow(img); [h,w] = size(img); feature=[]; for level=4:4:16 for ori = 0:45:360-45 [mag,phase] = imgaborfilt(img,level,ori); for i=1:h/4:h for j=1:w/4:w me = mean(mag(i:i+h/4-1,j:j+w/4-1),'all'); feature=[feature;me]; end end imshow(mat2gray(mag)); end end figure; plot(feature);
结果如下: