how can i find the number of the overlapped white pixels between 2 black and white images?

1 view (last 30 days)
Hi all
i have 2D images (BW), i performed transformation on one of them ,while keeping one without any changes , after that i need to find the number of the overlapped white pixels between imag1 and transformed imag2 ? how can i do this in matlab ?
please , i need simple illustration .
regards

Answers (1)

Sven
Sven on 15 Feb 2012
Im1 = rand(50,50)>0.2; % your first image
Im2 = rand(50,50)>0.6; % your transformed image
overlapIm = Im1 & Im2;
numSharedWhitePixels = nnz(overlapIm);
Is that what you were looking for?
  5 Comments
Image Analyst
Image Analyst on 16 Feb 2012
If the images are not of the same size, you need to rethink what you're attempting to do. Why did it change size? Just what kind of transform are you doing? Maybe you can resize one of the images to match the other.
mmm ssss
mmm ssss on 17 Feb 2012
@image analyst .for example
i wrote
xform=[cos(-50) sin(-50) 0 ;-sin(-50) cos(-50) 0;-50 50 1];
t_form_rotate_translate=maketform('affine',xform);
cb_trans=imtransform(p2,t_form_rotate_translate);
the size of p2 was 174*320,while the size of cb_trans is 252*355?
but i need to ask you is the translation and rotation will change the size of P2 when they implemented on it or there is a problem in my transformation ?how can i know this?
And if these transformations change the size, can i simply resized the op to be similar to ip to performing AND operator or not.?please i need illustration .

Sign in to comment.

Categories

Find more on Image Processing Toolbox 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!