I am trying calculate the area and perimeter of Brain CT image right and left hemisphere by using regionprops so I am not sure if I am doing the right job or if there is a better way to do it.
I did image registration and transformation to align the image.
% BInary image and connecting labels and calaculate area and perimeter of both sides%%
rightbin=im2bw(rightBrain_img);leftbin=im2bw(leftBrain_img);CCright=bwconncomp(rightbin);% Calculate number of connected objects in right.
nr=CCright.NumObjects;CCleft=bwconncomp(leftbin);%Calculate number of connected objects in left
nl=CCleft.NumObjects;grightBrain_img=regionprops(CCright,'Area','Perimeter','Centroid' );Area=zeros(nr,1);Perimeter=zeros(nr,1);for i=1:nr Area(i)=grightBrain_img(i).Area; Perimeter(i)=grightBrain_img(i).Perimeter; endRAreaMEAN=mean(Area);RPerimeterMEAN=mean(Perimeter);gleftBrain_img=regionprops(CCleft,'Area','Perimeter');Area=zeros(nl,1);Perimeter=zeros(nl,1);for j=1:nl Area(j)=gleftBrain_img(j).Area; Perimeter(j)=gleftBrain_img(j).Perimeter; endLAreaMEAN=mean(Area);LPerimeterMEAN=mean(Perimeter);if LAreaMEAN==RAreaMEAN msgbox('symmetry') else msgbox('Not symmetric')endend
Best Answer
This condition will likely never happen:
Why not? See the FAQ: http://matlab.wikia.com/wiki/FAQ#Why_is_0.3_-_0.2_-_0.1_.28or_similar.29_not_equal_to_zero.3F
Try ismembertol() to do floating point comparisons.