Main Content

Die Übersetzung dieser Seite ist veraltet. Klicken Sie hier, um die neueste Version auf Englisch zu sehen.

Bildfusion

Die Toolbox benötigt nur eine Funktion für die Bildfusion: wfusimg. Vollständige Informationen zu dieser Funktion finden Sie auf der entsprechenden Referenzseite. Weitere Informationen zu Fusionsmethoden finden Sie unter der wfusmat-Funktion.

In diesem Abschnitt lernen Sie Folgendes:

  • Bilder aus ihren Zerlegungen zusammenfügen

  • Bilder aus ihren Zerlegungen wiederherstellen

Das Prinzip der Bildfusion mithilfe von Wavelets umfasst Folgendes: Die Wavelet-Zerlegungen zweier Originalbilder werden mithilfe der Fusionsmethoden zusammengefügt, die bei Approximations- und Detailkoeffizienten angewendet werden (siehe [MisMOP03] und [Zee98] unter Referenzen).

Die beiden Bilder müssen dieselbe Größe aufweisen und mit indizierten Bildern auf einer gemeinsamen Farbkarte in Zusammenhang stehen (Informationen zum Ändern von Bildgrößen finden Sie unter wextend).

Es werden zwei Beispiele untersucht: Im ersten Beispiel werden zwei verschiedene Bilder zusammengefügt, woraus ein neues Bild entsteht, und im zweiten wird ein Bild aus zwei unscharfen Versionen eines Originalbildes wiederhergestellt.

Zwei Bilder fusionieren

Dieses Beispiel veranschaulicht, wie Sie zwei Bilder fusionieren, um ein neues Bild zu erstellen.

Laden Sie die Bilder der Maske und der Büste.

load mask
x1 = X;
load bust
x2 = X;

Fügen Sie die beiden Bilder aus Wavelet-Zerlegungen auf Ebene 5 mithilfe des Wavelets db2 zusammen. Führen Sie die Fusion durch, indem Sie den Mittelwert für Approximationen und Details übernehmen.

wv = 'db2';
lv = 5;
xfusmean = wfusimg(x1,x2,wv,lv,'mean','mean');

Fügen Sie die beiden Bilder erneut zusammen. Allerdings führen Sie die Fusion dieses Mal aus, indem Sie für die Approximationen das Maximum und für die Details das Minimum verwenden.

xfusmaxmin = wfusimg(x1,x2,wv,lv,'max','min');

Plotten Sie die Original- und die fusionierten Bilder.

subplot(2,2,1)
image(x1)
axis square
title('Mask')
subplot(2,2,2)
image(x2)
axis square
title('Bust')
subplot(2,2,3)
image(xfusmean)
axis square 
title('Synthesized Image: mean-mean')
subplot(2,2,4)
image(xfusmaxmin)
axis square
title('Synthesized Image: max-min')
colormap(map)

Figure contains 4 axes objects. Axes object 1 with title Mask contains an object of type image. Axes object 2 with title Bust contains an object of type image. Axes object 3 with title Synthesized Image: mean-mean contains an object of type image. Axes object 4 with title Synthesized Image: max-min contains an object of type image.

Bild aus zwei unscharfen Versionen wiederherstellen

Dieses Beispiel veranschaulicht, wie Sie ein Bild aus zwei unscharfen Versionen eines Originalbildes wiederherstellen.

Laden Sie zwei unscharfe Versionen eines Originalbildes.

load cathe_1
x1 = X;
load cathe_2
x2 = X;

Fügen Sie die beiden Bilder aus Wavelet-Zerlegungen auf Ebene 5 mithilfe des Wavelets smy4 zusammen. Führen Sie die Fusion aus, indem Sie für Approximationen und Details das Maximum des Absolutwerts der Koeffizienten übernehmen.

wv = 'sym4';
lv = 5;
xfus = wfusimg(x1,x2,wv,lv,'max','max');

Plotten Sie die Original- und die fusionierten Bilder.

subplot(2,2,1)
image(x1)
axis square
title('Catherine 1')
subplot(2,2,2)
image(x2)
axis square
title('Catherine 2')
subplot(2,2,3)
image(xfus)
axis square 
title('Synthesized Image')
colormap(map)

Figure contains 3 axes objects. Axes object 1 with title Catherine 1 contains an object of type image. Axes object 2 with title Catherine 2 contains an object of type image. Axes object 3 with title Synthesized Image contains an object of type image.

Siehe auch

|