Bonjour,
Je souhaite comparer deux images binaires afin d'obtenir une troisième image représentant l'information se retrouvant dans les 2 matrices en même temps. Je précise que les deux matrices sont de même taille. Actuellement je l'effectue à l'aide de 2 boucles for et je trouve que c'est assez long (Mes images font ~800x600) :
Existe-il une fonction Matlab permettant de le faire directement et surtout plus rapidement ? J'ai regardé du côté des fonctions "all", "ismember" et "intersect" (vues sur d'autres discussions), mais cela ne correspond pas à ce que je cherche.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 function image=essai(r,v) dimension=size(r); for m=1:dimension(1) for n=1:dimension(2) if r(m,n)== v(m,n) image(m,n)=r(m,n); % Si les deux valeurs sont égales, on garde la valeur (0 ou 1) else image(m,n)= 1; % Sinon, on remplace par du blanc end end end
Merci d'avance pour votre aide
Partager