Texture Feature Extraction from a mammography Image

17 visualizaciones (últimos 30 días)
Mohamed Ahmed
Mohamed Ahmed el 29 de Jul. de 2017
Editada: Amelougou Abderrahman el 19 de Mayo de 2022
I need to extract Texture Features of ROI to be classified whether as benign(normal) or malignant(abnormal).
I used a code, but it's results is not good using different well-known classifiers (SVM kernels for example)
I uploaded a picture that illustrates the following:
1- The first picture titled as('Removed Pectoral'): Breast Image after removing (pectoral muscle)
2- The second picture titled as('ROI'):The Extracted ROI from the removed pectoral muscle image
3- The third picture titled as('segmented ROI): Is the Segmented ROI (Segmentation of ROI image)
My main aim is to obtain the features I uploaded (Additional features in the code)
I used this code for obtaining the features
% Use the Extracted ROI named as "ROI" in the uploaded Images
% Use the following angles "offset":(0,45,90,135)
GLCM = graycomatrix(ROI,'Offset',[0 1;-1 1;-1 0;-1 -1]);
% Calculate the four built-in MATLAB features
stats=graycoprops(GLCM,{'Contrast','Homogeneity','Correlation','Energy'});
contrast=(stats.Contrast);
en=(stats.Energy);
co=(stats.Correlation);
hom=(stats.Homogeneity);
% Calculate mean and standard deviation
m=mean(mean(ROI));
s=std2((ROI));
% The first feature vector
f1=[m s hom co en contrast];
% Calculate the texture Features
% Picture used is" segmented ROI" in the uploaded images
% This picture is the segmentation of " ROI " picture used at the
% beginning of the code
% Features to be extracted " Area, Perimeter, compactness, smoothness, entropy,..."
J2=SegmentedROI;
I=J2;
J2 = uint8(255 * mat2gray(J2));
% Detecting the edges of the ROI
J3=edge(J2,'log');
bw=bwareaopen(J2,150);
bwp=edge(bw,'sobel');
geometric.area=sum(sum(bw));
geometric.peri=sum(sum(bwp));
geometric.compact=geometric.peri^2/geometric.area;
count=1;
roih=0;
for i=1:size(bw,1);
for j=1:size(bw,2);
if bw(i,j)
roih(count,1)=double(SegI(i,j));
count=count+1;
end
end
end
nh=roih/geometric.area;
texture.mean=mean(roih);
texture.globalmean=texture.mean/mean(mean(double(I)));
texture.std=std(roih);
texture.smoothness=1/(1+texture.std^2);
texture.uniformity=sum(nh.^2);
texture.entropy=sum(nh.*log10(nh));
texture.skewness=skewness(roih);
texture.correlation=sum(nh'*roih)-texture.mean/texture.std;
yy=[texture.mean,texture.globalmean,texture.std,texture.smoothness,texture.uniformity,...
texture.entropy,texture.skewness,texture.correlation];
y1=[y1;yy];
xy=[geometric.area,geometric.peri,geometric.compact];
x1=[x1;xy];
f2=[x1 y1];
Totalfeaures=[f1,f1];
  2 comentarios
Ankur Pruthi
Ankur Pruthi el 22 de Feb. de 2021
Hi mohamed ahmed. Can u please share the code for pectoral muscle removal from the image. It would be of great help to me. Mail id- ankpru@gmail.com

Iniciar sesión para comentar.

Respuestas (8)

fatin rasyidah
fatin rasyidah el 26 de Nov. de 2017
hi Mohamed Ahmed, may I know what method that u use to extract ROI and segment the ROI. I hope u can share it, because i am currently doing the same thing like u have did. thanks in advance
  5 comentarios
Hoang Duy
Hoang Duy el 15 de Dic. de 2019
Hi Mohamed Ahmed can u send me the MATLAB code for ROI extraction and Segment the ROI with thanks my email duyhm1998@gmail.com

Iniciar sesión para comentar.


sathya lakshmanan
sathya lakshmanan el 16 de Oct. de 2018
Hi Mohamed Ahmed can u send me the MATLAB code for ROI extraction and Segment the ROI with thanks my email sathyass660@gmail.com

hamid hosseinabadi
hamid hosseinabadi el 17 de Dic. de 2018
Hi Mohamed Ahmed plz send to me your MATLAB code hosseinabadi_hamid@yahoo.com

Loai Kinani
Loai Kinani el 17 de Abr. de 2019
Hi Mohammad,
can you share the the matlab code of pectoral muscle removal.
Thank you

ahmed nageeb
ahmed nageeb el 22 de Jun. de 2019
hello every one
when use SegI , give me error
Undefined function or variable 'SegI'.
can help me
  1 comentario
Walter Roberson
Walter Roberson el 23 de Jun. de 2019
You are correct, the code that was posted does not define several of the variables.
SegI is not a function: it is a variable the user defined but did not show us the construction of.

Iniciar sesión para comentar.


mary mwadulo
mary mwadulo el 25 de Sept. de 2019
hi Mohamed Ahmed,can you kindly share with me the MATLAB code for pectoral muscle removal, extracted ROI and Segmented ROI.Am currently working on the same. my email is mwalowe@yahoo.com thank you.
  1 comentario
manish kumari kumari
manish kumari kumari el 15 de Abr. de 2020
hi Mohamed Ahmed,can you kindly share with me the MATLAB code for pectoral muscle removal, extracted ROI and Segmented ROI.Am currently working on the same. my email is mk2634347@gmil.com

Iniciar sesión para comentar.


Elahe Mgh
Elahe Mgh el 11 de Ag. de 2020
Editada: Elahe Mgh el 11 de Ag. de 2020
Hi Can you send me the matlab code for extracted ROI and segmented? elaheh_mgh@yahoo.com

Amelougou Abderrahman
Amelougou Abderrahman el 19 de Mayo de 2022
Editada: Amelougou Abderrahman el 19 de Mayo de 2022
hello everyone please I need your help urgently...I worked at first with the Matlab FirstCode code which allows me to delete the pectoral muscle after the background deletion but I would like to see my final image of the same original image size that's why I tried to work on the same code with modifications: 1. orientation of the images right to left and 2. do not remove the background 3 .determine the first and the last non-black pixel in the image i.e. I determine my region of interest ROI 4.application of pectoral muscle removal algorithm .....but unfortunately does not give results requested (muscle removal).....please help

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by