MATLAB Answers

Find the changed area between two images

9 views (last 30 days)
Tala Hed
Tala Hed on 31 Jan 2019
Commented: Tala Hed on 31 Jan 2019
I have 3 photos taken from a sample. The first one is prior to a test and the second and third ones are taken after the test. I am intersted in finding the changed area in the painting after each test. IN other words between image number1and 2 and image number 1and3.
Image number 2 has slighty changed but image number 3 has considerably changed.
here are the photos.
Thank you
1.jpg
2.jpg
3.jpg

  0 Comments

Sign in to comment.

Answers (1)

Balakrishnan Rajan
Balakrishnan Rajan on 31 Jan 2019
Depends on your definition of area of the painting. Is every point with colour anything but absolute white considered as a part of the painting? Assuming that anything brighter than the mid level of gray to be an unpainted region, the following code must be able to get the area of a painting:
Im = imread('File location');
ImBW = Im(:,:,2);
imshow(ImBW);
threshold = 127;
area = 0;
for i = 1 : length(ImBW(:,1))
for j = 1 : length(ImBW(1,:))
if(ImBW(i,j)>threshold)
area = area+1;
end
end
end
Use this to compute the areas of the different images and take difference accordingly.
Hope it helps.

  1 Comment

Tala Hed
Tala Hed on 31 Jan 2019
I appreciate your help, but its not what I am looking for! maybe I was not clear :)
There should be comparision between the original image and the other two to detect the change between them!
Thanks

Sign in to comment.