Instead of using 3-D color histogram, we use a fuzzy inference system to build a 1_D fuzzy color histogram, which is more resistant to noise in the image, and can be used in content based image retrieval.
my brother piyali banerjee
use this function to call FIS and extract 1-D fuzzy color histogram.
function [featureVector,RGB] = fuzzy_colour_histogram(I)
%Fuzzy colour histogram features
%Input: I (sRGB colour image)
%Output: featureVector (feature vector)
featureVector = ;
%Convert into Lab
C = makecform('srgb2lab');
I = applycform(I,C);
%Normalize between 0 and 1
I = double(I);
I = I/255;
[rows cols channels] = size(I);
%Load fuzzy system
fismat = readfis('FuzzyHistogramLinkingNew15.fis');
%Compute fuzzy-coloured image
I_F = zeros(rows, cols);
for r = 1:rows
for c = 1:cols
I_F(r,c) = evalfis(I(r,c,:), fismat);
featureVector = hist(reshape(I_F,1,rows*cols),15)/(rows*cols);
dear aqeel this is .fis file.but can u plz post the matlab coding how to implement this fuzzy inference rules to get the output fuzzy linking histogram bins for a given input image
The color space used is CIElab because it's device independent. However this color space is hard to understand by human, therefore building fuzzy rules needs training in photoshop hhhhhhhh.
Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.