OpenCV (Open Source Computer Vision) ist eine Computer Vision-Bibliothek, die verschiedene Funktionen zum Ausführen von Vorgängen für Bilder oder Videos enthält. Es wurde ursprünglich von Intel entwickelt, wurde aber später von Willow Garage gewartet und wird jetzt von Itseez gewartet. Diese Bibliothek ist plattformübergreifend, dh sie ist in mehreren Programmiersprachen wie Python, C ++ usw. verfügbar.

Lassen Sie uns verschiedene Möglichkeiten zur Visualisierung von Bildern diskutieren, bei denen Bilder in verschiedenen Formaten wie Graustufen, RGB-Skalierung, Hot_map, Randkarte, Spektralkarte usw. dargestellt werden.

RGB-Bild:

Das RGB-Bild wird durch eine lineare Kombination von 3 verschiedenen Kanälen dargestellt, nämlich R (Rot), G (Grün) und B (Blau). Die Pixelintensitäten in diesem Farbraum werden durch Werte im Bereich von 0 bis 255 für einen einzelnen Kanal dargestellt. Somit beträgt die Anzahl der Möglichkeiten für eine Farbe, die durch ein Pixel dargestellt wird, ungefähr 16 Millionen [255 x 255 x 255].

  
import cv2 
import matplotlib.pyplot as plt 
  
img = cv2.imread('g4g.png') 
  
plt.imshow(img) 

Ausgabe :

Graustufenbild:

Graustufenbild enthält nur einen einzigen Kanal. Die Pixelintensitäten in diesem Farbraum werden durch Werte im Bereich von 0 bis 255 dargestellt. Somit beträgt die Anzahl der Möglichkeiten für eine durch ein Pixel dargestellte Farbe 256.



  
import cv2 
  
img = cv2.imread('g4g.png', 0
  
img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) 
  
cv2.imshow('image', img)  
  
cv2.waitKey(0)          
cv2.destroyAllWindows() 

Ausgabe :

YCrCb-Farbraum:

Y steht für Luminanz- oder Luma-Komponente, Cb und Cr sind Chroma-Komponenten. Cb repräsentiert die Blau-Differenz (Differenz der blauen Komponente und der Luma-Komponente). Cr repräsentiert die Rotdifferenz (Differenz der roten Komponente und der Luma-Komponente).

  
import cv2 
  
img = cv2.imread('g4g.png') 
  
img = cv2.cvtColor(img, cv2.COLOR_BGR2YCrCb) 
  
cv2.imshow('image', img)  
  
cv2.waitKey(0)          
cv2.destroyAllWindows() 

Ausgabe :

HSV-Farbraum:

H: Der Farbton repräsentiert die dominante Wellenlänge.
S: Die Sättigung repräsentiert Farbtöne.
V: Wert steht für Intensität.

  
import cv2 
  
img = cv2.imread('g4g.png') 
  
img = cv2.cvtColor(img, cv2.COLOR_BGR2HSV) 
  
cv2.imshow('image', img)  
  
cv2.waitKey(0)          
cv2.destroyAllWindows() 

Ausgabe :

LAB Farbraum:

L - Repräsentiert Leichtigkeit.
A - Farbkomponente von Grün bis Magenta.
B - Farbkomponente von Blau bis Gelb.

  
import cv2 
  
img = cv2.imread('g4g.png') 
  
img = cv2.cvtColor(img, cv2.COLOR_BGR2LAB) 
  
cv2.imshow('image', img)  
  
cv2.waitKey(0)          
cv2.destroyAllWindows() 

Ausgabe :

Randkarte des Bildes:

Edge - Karte kann durch verschiedene Filter wie Laplace, erhalten werden Sobel usw. Hier verwenden wir Laplace Kantenkarte zu erzeugen.



  
import cv2 
  
img = cv2.imread('g4g.png') 
  
  
laplacian = cv2.Laplacian(img, cv2.CV_64F) 
cv2.imshow('EdgeMap', laplacian)  
  
cv2.waitKey(0)          
cv2.destroyAllWindows() 

Ausgabe :

Wärmekarte des Bildes:

In der Heatmap-Darstellung werden einzelne in einer Matrix enthaltene Werte als Farben dargestellt.

  
import matplotlib.pyplot as plt 
import cv2 
  
img = cv2.imread('g4g.png') 
  
plt.imshow(img, cmap ='hot'

Ausgabe :

Spektralbildkarte:

Die Spektralbildkarte erhält das Spektrum für jedes Pixel im Bild einer Szene.

  
import matplotlib.pyplot as plt 
import cv2 
  
img = cv2.imread('g4g.png') 
plt.imshow(img, cmap ='nipy_spectral'

Ausgabe :