feature extraction for MRI image
11 views (last 30 days)
Show older comments
farheen asdf
on 21 Jun 2015
Commented: Image Analyst
on 6 Dec 2022
hi. I want to extract features for analyzing an image. I have extracted 8 basic features such as energy, homogeneity, contrast, skewness, correlation, variance etc. What other features can i use for image classification? My image is a cancer MRI. Thanks in advance. Have a nice day :)
0 Comments
Accepted Answer
More Answers (4)
Rafee Muhammad
on 11 Feb 2019
%% Image Read
[filename, pathname] = uigetfile({'*.jpg'; '*.bmp'; '*.tif'; '*.gif'; '*.png'; '*.jpeg'}, 'Load Image File');
brainImg = imread([pathname filename]);
subplot(231);imshow(brainImg);title('Input image','FontSize',20);
%% preprocessing
[m n c] = size(brainImg);
if c == 3
brainImg = rgb2gray(brainImg);
end
[ brainImg ] = Preprocess( brainImg );
subplot(232);imshow(brainImg);title('preprocessed image','FontSize',20);
%% Convert To Binary
img2 = im2bw(brainImg);
%% Feature Extraction
signal1 = img2(:,:);
[cA1,cH1,cV1,cD1] = dwt2(signal1,'db4');
[cA2,cH2,cV2,cD2] = dwt2(cA1,'db4');
[cA3,cH3,cV3,cD3] = dwt2(cA2,'db4');
DWT_feat = [cA3,cH3,cV3,cD3];
G = pca(DWT_feat);
whos DWT_feat
whos G
g = graycomatrix(G);
stats = graycoprops(g,'Contrast Correlation Energy Homogeneity');
Contrast = stats.Contrast;
Correlation = stats.Correlation;
Energy = stats.Energy;
Homogeneity = stats.Homogeneity;
Mean = mean2(G);
Standard_Deviation = std2(G);
Entropy = entropy(G);
RMS = mean2(rms(G));
%Skewness = skewness(img)
Variance = mean2(var(double(G)));
a = sum(double(G(:)));
Smoothness = 1-(1/(1+a));
Kurtosis = kurtosis(double(G(:)));
Skewness = skewness(double(G(:)));
2 Comments
Emma Stone
on 10 Nov 2020
Edited: Emma Stone
on 10 Nov 2020
Hello Sir,
in your code we don't have information about preprocess function ,it gives error in below line, would you suggest me whats the issue!
[ brainImg ] = Preprocess( brainImg );
thanks
Priyanka Matta
on 20 May 2021
Hello Rafee,
I tried your code for extracting features in a IVUS image.
It worked very well.
thanks
farheen asdf
on 2 Jul 2015
2 Comments
Image Analyst
on 2 Jul 2015
I don't use Neural Networks. I've added the Product Neural Network Toolbox above, so maybe Greg Heath will see it and answer you.
Foading Leonce
on 10 Mar 2019
Edited: Image Analyst
on 5 Dec 2022
But in your code we don't have information about preprocess function in this line:
[ brainImg ] = Preprocess( brainImg );
Please supply that function. Thanks. 🙂
2 Comments
Image Analyst
on 5 Dec 2022
@Foading Leonce and @Fatima you might be able to get away without even using that line of code. We don't know what he did. Maybe it was just something you don't need to do, like cropping his image. Try it without that line of code (comment it out) and see how it works.
See Also
Categories
Find more on Biomedical Imaging in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!