Heim Backend-Entwicklung Python-Tutorial Detaillierte Erklärung der einfachen Zeichenbrettfunktion basierend auf opencv

Detaillierte Erklärung der einfachen Zeichenbrettfunktion basierend auf opencv

Aug 07, 2020 pm 03:51 PM
opencv 画板

Detaillierte Erklärung der einfachen Zeichenbrettfunktion basierend auf opencv

OpenCV bietet viele einfache Anweisungen zur Implementierung komplexer Funktionen. Basierend auf den grundlegenden Anweisungen zur Farb- und Mausinteraktion können wir ein einfaches Zeichenbrett erstellen. Obwohl es einfach ist, sind zur Herstellung des Rahmens nicht weniger Schritte erforderlich.

Wenn Sie interessiert sind, können Sie es gemäß meinen Schritten schreiben oder den Code direkt in das Hauptprogramm kopieren und ausführen.

Verwandte Lernempfehlungen: Python-Video-Tutorial

1. Funktion

Entfernen Sie die Zeichenbrettfunktion, um das spätere Schreiben von Programmen zu erleichtern.
Zielfunktionen: Anpassbare Farben, Zeichenbereich und Mauseingabe.

2. Framework-Konstruktion

Es gibt zwei Hauptschritte:

Schritt 1: Erstellen Sie eine Farbauswahl, die mit der Schieberegleranweisung cv.createTrackbar von OpenCV festgelegt werden kann. cv.createTrackbar verfügt über insgesamt fünf Parametereinstellungen: (Trackbar-Name, Zielfenstername, Startwert – auch Standardwert, Maximalwert, Rückruffunktion).

#创建画布
img=np.zeros((300,512,3),np.uint8)
#给画布命名——需要提供给Trackbar
cv.namedWindow("image")
#创建RGB三种颜色的Trackbar,返回函数不需要做任何动作
cv.createTrackbar("R","image",0,255,nothing)
cv.createTrackbar("G","image",0,255,nothing)
cv.createTrackbar("B","image",0,255,nothing)
#由于OpenCv里面无按钮函数,所以用0/1来表示开关
switch="0:OFF\n1:ON"
cv.createTrackbar(switch,"image",0,1,nothing)
#回调函数,不需要做任何操作
def nothing(x):
 pass
Nach dem Login kopieren

Schritt 2: Erfassen Sie den Mausaktionsstatus und zeichnen Sie basierend auf der Mausaktion Grafiken im Zeichenbereich. Gängige Mausbedienungsanweisungen können in Python mit der Anweisung *events = [i for i in dir(cv) if ‚EVENT‘ in i]* angezeigt werden.

#设置一个是否开始画画的开关
drawing=False
#定义画画函数
def draw(event,x,y,flag,param):
 #将画画开关作为全局变量,以便于在每次动作以后改变它的值
 global drawing
 #使用函数cv.EVENT_LBUTTONDOWN,如果鼠标左键按下,画圆,同时drawing为真
 if event==cv.EVENT_LBUTTONDOWN:
  cv.circle(img,(x,y),3,(g,b,r),-1)
  drawing=True
 #如果鼠标移动,进行下面操作
 elif event==cv.EVENT_MOUSEMOVE:
  #如果drawing为真,开始画圆
  if drawing==True:
   cv.circle(img, (x, y), 3, (g, b, r), -1)
 #如果鼠标左键抬起,画最后一个圆,并将drawing设为False,此时就会停止画画
 elif event==cv.EVENT_LBUTTONUP:
  cv.circle(img,(x,y),3,(g,b,r),-1)
  drawing=False
Nach dem Login kopieren

3. Hauptfunktion

Die Hauptfunktion besteht darin, die beiden oben genannten Teile zu integrieren. 4. Laufeffekt Erkundete die Details und fand heraus, was Aufmerksamkeit erfordert.

6. Allgemeine Vorgehensweise

while(1):
 #展示画布
 cv.imshow("image",img)
 #设置终止按钮,为了保证在32/64位系统或者在不是ASCII编码的键盘上有正常的操作,使用&0xFF取低八位
 k=cv.waitKey(1)&0xFF
 #如果k为27,即键盘上Esc的ASCII编码序号,退出画板
 if k==27:
  break
 #获取每个Trackbar中的值
 r=cv.getTrackbarPos("R","image")
 g = cv.getTrackbarPos("G", "image")
 b = cv.getTrackbarPos("B", "image")
 s = cv.getTrackbarPos(switch, "image")
 #如果开关是0,清空画板并禁止画画,如果是1,则允许
 if s==0:
  img[:]=0
 else:
  cv.setMouseCallback("image", draw)
#最后不要忘记销毁窗口
cv.destroyAllWindows()
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonDetaillierte Erklärung der einfachen Zeichenbrettfunktion basierend auf opencv. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Installieren Sie den OpenCV-Studienführer schnell mit dem Pip-Paketmanager Installieren Sie den OpenCV-Studienführer schnell mit dem Pip-Paketmanager Jan 18, 2024 am 09:55 AM

Verwenden Sie den Befehl pip, um das OpenCV-Tutorial einfach zu installieren. OpenCV (OpenSource Computer Vision Library) ist eine Open-Source-Computer-Vision-Bibliothek. Sie enthält eine große Anzahl von Computer-Vision-Algorithmen, die Entwicklern beim schnellen Erstellen von Bildern helfen können und videoverarbeitungsbezogene Anwendungen. Bevor wir OpenCV verwenden können, müssen wir es zuerst installieren. Glücklicherweise bietet Python ein leistungsstarkes Tool zur Verwaltung von Bibliotheken von Drittanbietern

Beispielanalyse einer Python-OpenCV-Bildpyramide Beispielanalyse einer Python-OpenCV-Bildpyramide May 11, 2023 pm 08:40 PM

1. Theoretische Grundlage der Bildpyramide Die Bildpyramide ist eine Art mehrskaliger Ausdruck von Bildern. Es handelt sich um eine effektive, aber konzeptionell einfache Struktur zur Erklärung von Bildern mit mehreren Auflösungen. Eine Bildpyramide ist eine Sammlung von Bildern mit zunehmend geringerer Auflösung, die in Pyramidenform angeordnet sind und vom gleichen Originalbild abgeleitet sind. Es wird durch Ladder-Down-Sampling ermittelt und das Sampling wird erst dann gestoppt, wenn eine bestimmte Beendigungsbedingung erreicht ist. Wir vergleichen Bilder Schicht für Schicht zu einer Pyramide. Je höher die Ebene, desto kleiner das Bild und desto geringer die Auflösung. Warum machen wir also eine Bildpyramide? Das liegt daran, dass sich durch die Änderung der Pixelgröße manchmal nichts an den Eigenschaften ändert. Wenn ich Ihnen beispielsweise ein Bild mit 10 Millionen Pixeln zeige, können Sie erkennen, dass sich darin eine Person befindet kann auch wissen, dass da ein Mensch drin ist, der aber gegen den Plan ist

OpenCV-Installations-Tutorial: Ein Muss für PyCharm-Benutzer OpenCV-Installations-Tutorial: Ein Muss für PyCharm-Benutzer Feb 22, 2024 pm 09:21 PM

OpenCV ist eine Open-Source-Bibliothek für Computer Vision und Bildverarbeitung, die in den Bereichen maschinelles Lernen, Bilderkennung, Videoverarbeitung und anderen Bereichen weit verbreitet ist. Bei der Entwicklung mit OpenCV entscheiden sich viele Entwickler für die Verwendung von PyCharm, einer leistungsstarken integrierten Python-Entwicklungsumgebung, um Programme besser debuggen und ausführen zu können. Dieser Artikel bietet PyCharm-Benutzern ein Installations-Tutorial für OpenCV mit spezifischen Codebeispielen. Schritt eins: Python installieren Stellen Sie zunächst sicher, dass Python installiert ist

So erzielen Sie mit Python+OpenCV den Effekt des Ziehens virtueller Quadrate So erzielen Sie mit Python+OpenCV den Effekt des Ziehens virtueller Quadrate May 15, 2023 pm 07:22 PM

1. Projekteffekt 2. Kernprozess 1. OpenCV liest den Videostream und zeichnet auf jedem Frame des Bildes ein Rechteck. 2. Verwenden Sie Mediapipe, um die Koordinaten der Finger-Schlüsselpunkte zu erhalten. 3. Bestimmen Sie anhand der Koordinatenposition des Fingers und der Koordinatenposition des Rechtecks, ob sich der Fingerpunkt auf dem Rechteck befindet. Wenn dies der Fall ist, folgt das Rechteck der Fingerbewegung. 3. Vorbereitung der Codeprozessumgebung: python:3.8.8opencv:4.2.0.32mediapipe:0.8.10.1 Hinweis: 1. Wenn die OpenCV-Version zu hoch oder zu niedrig ist, kann es zu Problemen kommen, z. B. dass die Kamera nicht geöffnet werden kann , Abstürze usw. Die Python-Version wirkt sich auf die optionalen Versionen von opencv aus. 2. pipinstallmediapipe kann op verursachen

Wie zeichne ich in OpenCV mit Java Linien mit Pfeilen? Wie zeichne ich in OpenCV mit Java Linien mit Pfeilen? Aug 20, 2023 pm 02:41 PM

Das Paket org.opencv.imgproc der JavaOpenCV-Bibliothek enthält eine Klasse namens Imgproc, die verschiedene Methoden zum Verarbeiten von Eingabebildern bereitstellt. Es bietet eine Reihe von Methoden zum Zeichnen geometrischer Formen auf Bildern. Um eine Pfeillinie zu zeichnen, müssen Sie die Methode ArrowedLine() dieser Klasse aufrufen. Die Methode akzeptiert die folgenden Parameter: ein Mat-Objekt, das das Bild darstellt, auf dem die Linie gezeichnet werden soll. Ein Point-Objekt, das zwei Punkte zwischen Linien darstellt. gezeichnet. Ein Skalarobjekt, das die Linienfarbe darstellt. (BGR) Eine Ganzzahl, die die Linienstärke darstellt (Standard: 1). Beispiel importorg.opencv.core.Core;importo

Wie implementiert man die Videoverarbeitung mit PHP und der OpenCV-Bibliothek? Wie implementiert man die Videoverarbeitung mit PHP und der OpenCV-Bibliothek? Jul 17, 2023 pm 09:13 PM

Wie implementiert man die Videoverarbeitung mit PHP und der OpenCV-Bibliothek? Zusammenfassung: Die Videoverarbeitung ist zu einer wichtigen Technologie in modernen wissenschaftlichen und technologischen Anwendungen geworden. In diesem Artikel wird erläutert, wie Sie die Programmiersprache PHP in Kombination mit der OpenCV-Bibliothek verwenden, um einige grundlegende Videoverarbeitungsfunktionen zu implementieren, und entsprechende Codebeispiele anhängen. Schlüsselwörter: PHP, OpenCV, Videoverarbeitung, Codebeispiele Einführung: Mit der Entwicklung des Internets und der Popularität von Smartphones sind Videoinhalte zu einem unverzichtbaren Bestandteil des Lebens der Menschen geworden. Um jedoch Videobearbeitung zu erreichen und

In Python können Bilder mithilfe von Methoden aus der OpenCV-Bibliothek segmentiert und extrahiert werden. In Python können Bilder mithilfe von Methoden aus der OpenCV-Bibliothek segmentiert und extrahiert werden. May 08, 2023 pm 10:55 PM

Bildsegmentierung und -extraktion: Vordergrundobjekte werden segmentiert oder als Zielbilder in Bildern extrahiert. Der Hintergrund selbst interessiert den Watershed-Algorithmus und den GrabCut-Algorithmus nicht, um das Bild zu segmentieren und zu extrahieren. Verwenden Sie den Wassereinzugsgebietsalgorithmus, um eine Bildsegmentierung und -extraktion zu erreichen. Der Wassereinzugsgebietsalgorithmus vergleicht Bilder anschaulich mit geografischen Geländeoberflächen, um eine Bildsegmentierung zu erreichen. Algorithmusprinzip: Jedes Graustufenbild kann als geografische Geländeoberfläche betrachtet werden. Gebiete mit hohen Graustufenwerten können als Berggipfel und Gebiete mit niedrigen Graustufenwerten als Täler betrachtet werden. Das Bild links ist das Originalbild und das Bild rechts ist die entsprechende „topografische Oberfläche“. Durch diesen Prozess wird das Bild in zwei unterschiedliche Gruppen unterteilt: Einzugsgebiete und Wassereinzugsgebietslinien. Der von uns errichtete Damm ist die Wasserscheide, also das Originalbild

Neulinge lesen bitte: Ausführliches Tutorial zur Installation von OpenCV in PyCharm Neulinge lesen bitte: Ausführliches Tutorial zur Installation von OpenCV in PyCharm Feb 26, 2024 pm 03:24 PM

PyCharm ist eine leistungsstarke integrierte Python-Entwicklungsumgebung (IDE), die von JetBrains entwickelt wurde. Sie bietet eine Fülle von Funktionen und Tools, die Python-Entwicklern beim Schreiben von Code, beim Debuggen von Programmen und beim Verwalten von Projekten helfen. Mit OpenCV, einer leistungsstarken Computer-Vision-Bibliothek, können Sie in PyCharm problemlos Bildverarbeitung, Videoverarbeitung und andere Aufgaben durchführen. In diesem Artikel werden die Schritte zur Installation und Konfiguration von OpenCV in PyCharm detailliert beschrieben und spezifische Codebeispiele bereitgestellt. 1.An

See all articles