I want to find difference between two images.
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
One is a partial image of the other. Size is same. How get rid of black border. Tried XOR after binarizing(some processing applied in between but general idea is XOR). Fine results in image area but unwanted results on and outside border

1 commentaire
Walter Roberson
le 8 Avr 2019
What black border are you trying to get rid of?
I see a white border in the binary test image: are you referring to that ?
Réponses (1)
Image Analyst
le 8 Avr 2019
You can get the bounding box of the small image by doing
[rows, columns] = find(binaryImage);
row1 = min(rows);
row2 = max(rows);
col1 = min(columns);
col2 = max(columns);
% Now crop the image to remove black frame
croppedImage = binaryImage(row1:row2, col1:col2);
% Resize it
binaryImage = imresize(binaryImage, size(otherImage));
Now you can compare the images by subtraction or xor() or whatever.
2 commentaires
Image Analyst
le 11 Avr 2019
Use a rotationally and scale invariant matching technique: Hu's image moments. See this link from the University of Arizona
Voir également
Catégories
En savoir plus sur Convert Image Type dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
