Heim  >  Artikel  >  Backend-Entwicklung  >  So zeichnen Sie mit Python geometrische Formen auf ein Bild

So zeichnen Sie mit Python geometrische Formen auf ein Bild

WBOY
WBOYOriginal
2023-08-18 13:02:051747Durchsuche

So zeichnen Sie mit Python geometrische Formen auf ein Bild

So zeichnen Sie mit Python geometrische Formen auf Bildern

Einführung: Als leistungsstarke Programmiersprache kann Python nicht nur fortschrittliche Technologien wie Datenverarbeitung und maschinelles Lernen ausführen, sondern auch Bildverarbeitung und Grafikzeichnung. Bei der Bildverarbeitung ist es häufig erforderlich, verschiedene geometrische Formen auf Bildern zu zeichnen. In diesem Artikel wird erläutert, wie Sie mit Python geometrische Formen auf Bildern zeichnen.

1. Umgebungsvorbereitung und Bibliotheksinstallation

Bevor wir beginnen, müssen wir zunächst mehrere notwendige Bibliotheken für Python installieren, hauptsächlich einschließlich der OpenCV-Bibliothek und der Matplotlib-Bibliothek. Sie können es mit dem Befehl pip installieren, wie unten gezeigt:

pip install opencv-python
pip install matplotlib

Nach Abschluss der Installation können wir mit Python beginnen, die geometrischen Formen des Bildes zu zeichnen.

2. Ein Rechteck zeichnen

Das Zeichnen eines Rechtecks ​​ist eine der einfachsten geometrischen Formzeichnungen und kann über die Rechteckfunktion in der OpenCV-Bibliothek erreicht werden. Hier ist ein einfacher Beispielcode:

import cv2

Bild lesen

img = cv2.imread('image.jpg')

Rechteck zeichnen

cv2.rectangle(img, (100, 100), ( 300, 300), (0, 255, 0), 3)

Bild anzeigen

cv2.imshow('image', img)
cv2.waitKey(0)
cv2.destroyAllWindows()

Im obigen Code haben wir Lesen Sie zunächst ein Bild über die Funktion cv2.imread und speichern Sie es in der Variablen img. Dann rufen wir die Funktion cv2.rectangle auf, um ein Rechteck zu zeichnen, wobei der erste Parameter die Bildvariable, der zweite Parameter die Koordinaten der oberen linken Ecke des Rechtecks ​​und der dritte Parameter die Koordinaten der unteren rechten Ecke des Rechtecks ​​sind Rechteck und der vierte Parameter ist die Farbe. Der fünfte Parameter ist die Linienbreite. Schließlich zeigen wir das Bild über die Funktion cv2.imshow an.

3. Zeichnen Sie einen Kreis

Das Zeichnen eines Kreises kann auch über die OpenCV-Bibliothek erfolgen, und Sie können die Kreisfunktion verwenden. Hier ist ein Beispielcode:

import cv2

Lesen Sie das Bild

img = cv2.imread('image.jpg')

Zeichnen Sie einen Kreis

cv2.circle(img, (200, 200), 100, (0, 0, 255), -1)

Bild anzeigen

cv2.imshow('image', img)
cv2.waitKey(0)
cv2.destroyAllWindows()

Im obigen Code lesen wir zuerst Erstellen Sie ein Bild über die Funktion cv2.imread und speichern Sie es in der Variable img. Dann rufen wir die Funktion cv2.circle auf, um einen Kreis zu zeichnen, wobei der erste Parameter die Bildvariable, der zweite Parameter die Mittelpunktskoordinate, der dritte Parameter der Radius, der vierte Parameter die Farbe und der fünfte Parameter ist Wenn die Linienbreite auf -1 eingestellt ist, wird der Kreis ausgefüllt. Schließlich zeigen wir das Bild über die Funktion cv2.imshow an.

4. Linien zeichnen

Das Zeichnen von Linien ist auch eine häufige Anforderung zum Zeichnen geometrischer Formen, die mit der Linienfunktion in der OpenCV-Bibliothek erreicht werden kann. Hier ist ein Beispielcode:

import cv2

Lesen Sie das Bild

img = cv2.imread('image.jpg')

Zeichnen Sie die Linie

cv2.line(img, (100, 100), (300 , 300), (255, 0, 0), 5)

Bild anzeigen

cv2.imshow('image', img)
cv2.waitKey(0)
cv2.destroyAllWindows()

Im obigen Code: Außerdem lesen wir zunächst ein Bild über die Funktion cv2.imread und speichern es in der Variablen img. Dann rufen wir die Funktion cv2.line auf, um eine gerade Linie zu zeichnen, wobei der erste Parameter die Bildvariable, der zweite Parameter die Startpunktkoordinaten der Linie, der dritte Parameter die Endpunktkoordinaten der Linie und der vierte Parameter sind Parameter ist die Farbe. Der fünfte Parameter ist die Linienbreite. Schließlich zeigen wir das Bild über die Funktion cv2.imshow an.

5. Polygone zeichnen

Um Polygone zu zeichnen, können Sie auch die Linienfunktion in der OpenCV-Bibliothek verwenden. Sie müssen nur die Koordinaten mehrerer Punkte übergeben. Hier ist ein Beispielcode:

import cv2

Lesen Sie das Bild

img = cv2.imread('image.jpg')

Definieren Sie mehrere Eckpunkte des Polygons

pts = np.array([[200, 50 ], [300, 100], [300, 200], [100, 200], [100, 100]], np.int32)

Draw polygon

cv2.polylines(img, [pts], True, ( 255, 0, 255), 3)

Bilder anzeigen

cv2.imshow('image', img)
cv2.waitKey(0)
cv2.destroyAllWindows()

Im obigen Code übergeben wir auch zuerst The Die Funktion cv2.imread liest ein Bild und speichert es in der Variablen img. Dann definieren wir ein Array pts, das die Koordinaten mehrerer Eckpunkte des Polygons enthält. Schließlich rufen wir die Funktion cv2.polylines auf, um Polygone zu zeichnen, wobei der erste Parameter die Bildvariable ist, der zweite Parameter das Scheitelpunktarray ist, der dritte Parameter angibt, ob das Polygon geschlossen werden soll, der vierte Parameter die Farbe ist und die Der fünfte Parameter ist die Linienbreite. Schließlich zeigen wir das Bild über die Funktion cv2.imshow an.

Fazit: Dieser Artikel stellt kurz vor, wie man mit Python geometrische Formen auf Bildern zeichnet, und gibt Beispielcodes für Rechtecke, Kreise, Linien und Polygone. Durch das Erlernen dieser Methoden können wir Python besser für die Bildverarbeitung und das Zeichnen von Grafiken anwenden. Ich hoffe, dieser Artikel ist für alle hilfreich.

Das obige ist der detaillierte Inhalt vonSo zeichnen Sie mit Python geometrische Formen auf ein Bild. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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