Heim > Backend-Entwicklung > Python-Tutorial > Wie finde ich den HSV-Wert einer Farbe mit OpenCV Python?

Wie finde ich den HSV-Wert einer Farbe mit OpenCV Python?

王林
Freigeben: 2023-08-19 14:25:14
nach vorne
979 Leute haben es durchsucht

如何使用OpenCV Python找到一种颜色的HSV值?

Um den HSV-Wert einer Farbe zu ermitteln, können wir die Farbraumkonvertierung von BGR in HSV verwenden. Zuerst definieren wir die Farbwerte als numpy.ndarray im BGR-Format und konvertieren sie dann in den HSV-Raum.

Wir können auch die unteren und Obergrenzen des HSV-Wertes als [H-10, 100, 100] und [H+10, 255, 255] finden kann verwendet werden, um ein Objekt einer bestimmten Farbe zu verfolgen.

Um den

HSV-Wert einer Farbe zu ermitteln, führen Sie die folgenden Schritte aus:

Schritte

Importieren Sie die erforderlichen Bibliotheken. In allen folgenden Python-Beispielen sind die erforderlichen Python-Bibliotheken

OpenCV und NumPy. Stellen Sie sicher, dass Sie sie bereits installiert haben.

import cv2
import numpy as np
Nach dem Login kopieren

Definieren Sie ein

numpy.ndarray für die Farbe, dtype=np.uint8.

green = np.uint8([[[0, 255, 0]]])
Nach dem Login kopieren

Konvertieren Sie die oben definierte Farbe in

HSV.

hsvGreen = cv2.cvtColor(green, cv2.COLOR_BGR2HSV)
Nach dem Login kopieren

Drucken Sie die Farbwerte aus.

print("HSV of Green:", hsvGreen)
Nach dem Login kopieren

Schauen wir uns einige Programmbeispiele an, um es klar zu verstehen.

Beispiel 1

In diesem Beispiel finden wir den

HSV-Wert für die grüne Farbe. Der BGR-Wert von Grün beträgt [0,255,0].

# import required libraries
import numpy as np
import cv2
# define a numpy.ndarray for the color
# here insert the bgr values which you want to convert to hsv
green = np.uint8([[[0, 255, 0]]])

# convert the color to HSV
hsvGreen = cv2.cvtColor(green, cv2.COLOR_BGR2HSV)

# display the color values
print("BGR of Green:", green)
print("HSV of Green:", hsvGreen)

# Compute the lower and upper limits
lowerLimit = hsvGreen[0][0][0] - 10, 100, 100
upperLimit = hsvGreen[0][0][0] + 10, 255, 255

# display the lower and upper limits
print("Lower Limit:",lowerLimit)
print("Upper Limit", upperLimit)
Nach dem Login kopieren
Ausgabe

Wenn Sie das obige Python-Programm ausführen, wird die folgende Ausgabe erzeugt

BGR of Green: [[[ 0 255 0]]] 
HSV of Green: [[[ 60 255 255]]] 
Lower Limit: (50, 100, 100) 
Upper Limit (70, 255, 255)
Nach dem Login kopieren
Die chinesische Übersetzung von Beispiel 2 lautet:

Beispiel 2

In diesem Beispiel finden wir den

HSV-Wert für eine Farbe, deren

BGR-Wert

[106,76,89]. ist

# import required libraries
import numpy as np
import cv2
green = np.uint8([[[0, 255, 0]]])

# convert the color to HSV
hsvGreen = cv2.cvtColor(green, cv2.COLOR_BGR2HSV)

# here insert the bgr values which you want to convert to hsv
bgr = np.uint8([[[106,76,89]]])
hsv = cv2.cvtColor(green, cv2.COLOR_BGR2HSV)
print("BGR Value:", bgr)
print("HSV Value:", hsv)

# compute the lower and upper limits
lowerLimit = hsvGreen[0][0][0] - 10, 100, 100
upperLimit = hsvGreen[0][0][0] + 10, 255, 255

# display the lower and upper limits
print("Lower Limit:",lowerLimit)
print("Upper Limit", upperLimit)
Nach dem Login kopieren
Ausgabe Wenn Sie das obige Python-Programm ausführen, wird die folgende Ausgabe erzeugt

BGR Value: [[[76 76 89]]] 
HSV Value: [[[ 60 255 255]]] 
Lower Limit: (50, 100, 100) 
Upper Limit (70, 255, 255)
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie finde ich den HSV-Wert einer Farbe mit OpenCV Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:tutorialspoint.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage