diff options
Diffstat (limited to 'getFeatureExt.m')
-rw-r--r-- | getFeatureExt.m | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/getFeatureExt.m b/getFeatureExt.m new file mode 100644 index 0000000..791a7aa --- /dev/null +++ b/getFeatureExt.m @@ -0,0 +1,63 @@ +function [ minc,maxc ] = getFeatureExt( img ) + ncnls = 8; + secs = 6; + cnls = zeros(size(img,1), size(img,2),ncnls); + cnls(:,:,1:3) = img; + cnls(:,:,4:6) = rgb2ycbcr(img); + hsv = rgb2hsv(img); + cnls(:,:,7:8) = hsv(:,:,1:2); + for i=1:ncnls + cnls(:,:,i) = histeq(cnls(:,:,i)); + end + % Schmid + scVec=[ + 1,2; + 1,4; + 2,4; + 1,6; + 2,6; + 3,6; + 1,8; + 2,8; + 3,8; + 1,10; + 2,10; + 3,10; + 4,10]; + gbVec = [ + 0.3,0,4,2; + 0.3,0,8,2; + 0.4,0,4,1; + 0.4,0,8,2; + 0.3,pi/2,4,2; + 0.3,pi/2,8,2; + 0.4,pi/2,4,1; + 0.4,pi/2,8,2;]; + gb = length(gbVec); + sc = length(scVec); + minc = []; + maxc = []; + for i = 1:sc + for cnl = 1:ncnls + for sec = 1:secs + filt = schmidFilter(scVec(i,1),scVec(i,2)); + section = getSection(cnls(:,:,cnl),sec,secs); + res = imfilter(section, filt, 'symmetric'); + minc = cat(2,minc,min(min(res))); + maxc = cat(2,maxc,max(max(res))); + end + end + end + for i = 1:gb + for cnl = 1:ncnls + for sec = 1:secs + filt = gaborFilter(gbVec(i,1),gbVec(i,2),gbVec(i,3),gbVec(i,4)); + section = getSection(cnls(:,:,cnl),sec,secs); + res = imfilter(section, filt, 'symmetric'); + minc = cat(2,minc,min(min(res))); + maxc = cat(2,maxc,max(max(res))); + end + end + end +end + |