MATLAB Reverse Colormap

Ammar Ali 15 Februar 2024
MATLAB Reverse Colormap

In diesem Tutorial wird das Umkehren einer Farbtabelle mit der Funktion flipud() in MATLAB erläutert.

MATLAB Reverse Colormap

Die Colormap legt die Farben eines Grafikobjekts wie ein Bild fest. Eine Colormap ist eine Wertematrix, die RGB-Triplettwerte verwendet, um den Werten einer Matrix oder eines Arrays Farben zuzuweisen.

In Matlab wird ein Bild in Matrixform gespeichert und enthält Zahlen, die seine Farben definieren. Wenn wir eine Funktion wie imshow() verwenden, um die Matrix als Bild anzuzeigen, weist die Funktion dem Bild mithilfe einer Farbtabelle Farbwerte zu.

Um eine Colormap umzukehren, können wir die Funktion flipud() verwenden, um die Werte einer Matrix oder eines Arrays umzukehren. Die Colormap ist auch eine Matrix, die die Farbwerte enthält, sodass wir die Funktion flipud() verwenden können, um die in der Colormap vorhandenen Farben umzukehren.

Wenn wir eine Farbtabelle umkehren, werden die Farben in einem Bild und anderen Objekten, die Matlab gerade anzeigt, umgekehrt. Lassen Sie uns zum Beispiel ein Binärbild erstellen und seine Farbzuordnung mit der Funktion flipud() umkehren.

Siehe Code unten.

clc
clear

v = [0 0 0 0;0 1 0 0;0 0 1 0;0 0 0 0];
figure(1)
imshow(v,'InitialMagnification','fit')
colorbar
figure(2)
imshow(v,'InitialMagnification','fit')
colorbar
colormap(flipud(gray))

Ausgang:

umgekehrte Farbkarte

Im obigen Code haben wir mit der Funktion imshow() zwei Figuren des Binärbilds erstellt. Die erste Abbildung zeigt das Originalbild und den Farbbalken mit der Originalfarbkarte.

In der zweiten Abbildung haben wir die Farbtabelle der ersten Abbildung umgekehrt. In der Ausgabe zeigt die linke Abbildung das Bild mit der ursprünglichen Farbtabelle und die rechte Abbildung das Bild mit der umgekehrten Farbtabelle.

Wir können in der Ausgabe sehen, dass die Farben umgekehrt sind. Die weiße Farbe wird in Schwarz umgewandelt und die schwarze Farbe wird in Weiß umgewandelt.

Im obigen Code haben wir die Vergrößerungseigenschaft der Funktion imshow() verwendet, um das angegebene Bild an die Figur anzupassen, da das Bild sehr klein ist, aber wenn die Größe des Eingabebilds groß ist oder wir dies nicht möchten Vergrößern Sie das gegebene Bild, können wir es vernachlässigen.

Im obigen Beispiel haben wir ein Binärbild mit nur zwei Farben verwendet, können diese Operation aber auch mit einem farbigen Bild durchführen.

Wenn wir die Farbtabelle eines farbigen Bildes spiegeln wollen, müssen wir die letzte Zeile des obigen Codes ändern, in der wir die graue Farbtabelle spiegeln, aber wir müssen die Farbtabelle anstelle von grau verwenden.

Lassen Sie uns zum Beispiel die Funktion imagesc() verwenden, um ein Farbbild aus einer Matrix zu erstellen und seine Farbtabelle mit der Funktion flipud() umzukehren.

Siehe Code unten.

clc
clear

v = [0 0 0 0;0 1 0 0;0 0 1 0;0 0 0 0];
figure(1)
imagesc(v)
colorbar
figure(2)
imagesc(v)
colorbar
colormap(flipud(colormap))

Ausgang:

umgekehrte Farbkarte eines farbigen Bildes

Die Funktion imagesc() zeigt ein Bild mit skalierten Farben an. Wenn die Eingabe dieser Funktion eine Matrix ist, weist die Funktion jedem Wert eine andere Farbe aus einer Farbkarte zu und zeigt sie an.

Im obigen Code drehen wir die vorherige Farbtabelle um und weisen der neuen Farbtabelle die neuen Werte zu.

In der obigen Ausgabe zeigt die linke Abbildung das Bild mit der ursprünglichen Farbtabelle und die rechte Abbildung das Bild mit der umgekehrten Farbtabelle. Wir können in der obigen Ausgabe sehen, dass die Farbe des Bildes und der Farbbalken geändert wurden.

Überprüfen Sie diesen Link(https://www.mathworks.com/help/matlab/ref/colormap.html) für weitere Details über die Farbtabelle. Überprüfen Sie diesen Link(https://www.mathworks.com/help/matlab/ref/colormap.html) für weitere Details über die Funktion flipud().

Autor: Ammar Ali
Ammar Ali avatar Ammar Ali avatar

Hello! I am Ammar Ali, a programmer here to learn from experience, people, and docs, and create interesting and useful programming content. I mostly create content about Python, Matlab, and Microcontrollers like Arduino and PIC.

LinkedIn Facebook

Verwandter Artikel - MATLAB Colormap