[PYTHON] Punkt entsprechend dem Bild

Überblick

Die im Protokoll aufgezeichneten Berührungskoordinaten werden einfach auf dem entsprechenden Bildschirmbild aufgezeichnet. Da die Strafen von ... eingetreten sind, werden wir es automatisieren.

Die x-Achse und die y-Achse werden gezeichnet, und auch die Größe des Bildes ändert sich. [Python - Python3-Koordinaten auf Bild | Teratail plotten] [5]

Ich konnte das geplottete Bild mit plt.imshow sehen. ... Wenn Sie mit> speichern, ändert sich die Anzahl der Pixel, und es wird sogar eine zusätzliche Achse angehängt, um die ein Rand angezeigt wird.

Ist es im Gegenteil selten, dass es bequemer ist? Fall. Wie ich später erfuhr, scheint es, dass es ohne Kissen (PIL) gemacht werden kann. [Link] [4]

Code

import matplotlib.pyplot as plt
from PIL import Image

#Figuren- und Axtvorbereitung...Routineverarbeitung von Matplotlib
fig = plt.figure(figsize=(8, 6))
fig.patch.set_facecolor('white') #<--Das muss nicht sein. Die Hintergrundfarbe der gesamten Figur wird festgelegt, aber mit Bild gemalt.
ax = fig.add_subplot(1, 1, 1)

#Wenn es ein Bild ist(0,0)Kommt nach links oben,Invertieren, da die positive Richtung der y-Achse nach unten zeigt_yaxis()
# ax.invert_yaxis()Ich dachte, aber ich brauche es nicht.

#x und y sind Berührungskoordinaten, die aus dem Protokoll erhalten werden. Hier werden vorläufig oben links, in der Mitte und unten rechts angegeben.
x = [0, 400, 200]
y = [0, 300, 150]

#Zeichnen Sie Berührungskoordinaten
ax.scatter(x, y, c='red', s=20)


#Stellen Sie ein Bildschirmbild in den Hintergrund
im = Image.open("aaaa.png ")
ax.imshow(im)

#Speichern Sie das Plotbild
plt.savefig("aaaa_plot.png ")

Originalbild (aaaa.png) x ・ x 400x300 Bild entsprechend mit Farbe gemacht aaaa.png

Nach dem Plotten (aaaa_plot.png) aaaa_plot.png

Code 2 - Kein Kissen

import matplotlib.pyplot as plt
import matplotlib.cbook as cbook
import pathlib

#Laden Sie das Bild
f = cbook.get_sample_data(pathlib.Path("aaaa.png ").absolute())
im = plt.imread(f)

#Figuren- und Axtvorbereitung...Routineverarbeitung von Matplotlib
fig = plt.figure(figsize=(8, 6))
ax = fig.add_subplot(1, 1, 1)

#Ich weiß nicht warum, aber Axt.invert_yaxis()Die Y-Achse zeigt nach unten, ohne aufzurufen

#x und y sind Berührungskoordinaten, die aus dem Protokoll erhalten werden. Hier werden vorläufig oben links, in der Mitte und unten rechts angegeben.
x = [0, 400, 200]
y = [0, 300, 150]

#Zeichnen Sie Berührungskoordinaten
ax.scatter(x, y, c='red', s=20)

#Stellen Sie ein Bildschirmbild in den Hintergrund
ax.imshow(im)

#Speichern Sie das Plotbild
plt.savefig("aaaa_plot2.png ")

Bemerkungen

Als ich dachte, dass diese Buße das Gefühl hatte, gesehen zu werden, war sie nahe an ↓. [Exportieren Sie den Teil, der dem regulären Ausdruck entspricht, nach Excel + Plot --Qiita] [2] Zu diesem Zeitpunkt war es nicht erforderlich, es mit dem Bild abzugleichen. + Ich habe Excel ausgewählt, damit andere Personen die Rohdaten bequem anzeigen können.

Referenz

[matplotlib - So zeigen Sie Bilder und Arrays mit imshow an - Pynote] [1] [Eine sehr Zusammenfassung von Matplotlib-Qiita] [3] [python --matplotlib: Inkompatibel mit Plotkoordinaten in image imshow --stackoverrun] [4] [AxesDivider — Matplotlib 2.0.2 documentation][6] [1]:https://www.pynote.info/entry/matplotlib-imshow [2]:https://qiita.com/int_main_void/items/f59d9e9f2a8d8f9c6b51 [3]:https://qiita.com/nkay/items/d1eb91e33b9d6469ef51 [4]:https://stackoverrun.com/ja/q/10393572 [5]:https://teratail.com/questions/139505 [6]:https://matplotlib.org/mpl_toolkits/axes_grid/users/axes_divider.html

Recommended Posts

Punkt entsprechend dem Bild
Wenn Sie mit der Maus über Matplotlib fahren, wird das entsprechende Bild angezeigt.
Generieren Sie dynamisch einen SQLalchemiefilter entsprechend den Bedingungen
Versuchen Sie, dem Bild die Verzerrung des Fischaugenobjektivs hinzuzufügen
Python-Konstanten wie None (laut Referenz)
Schneiden Sie das Bild mit Pythonista auf abgerundete Ecken
Ich habe versucht, die Trapezform des Bildes zu korrigieren
Der Weg nach Pythonista
Der Weg nach Djangoist
Laden Sie das durch Anfragen heruntergeladene Bild direkt in S3 hoch
Wenden wir die Markenbildfarbe auf die Farbkarte von matplotlib an!
Ich habe versucht, Iris aus dem Kamerabild zu erkennen
Speichern Sie das von pyqtgraph gezeichnete Diagramm in einem Bild
Konvertieren Sie das Bild in .zip mit Python in PDF
Farbpunkte entsprechend dem Abstand von der Regressionskurve
BGM wird automatisch entsprechend dem Inhalt der Konversation ausgewählt
Ändern Sie die Größe des Bildes auf die angegebene Größe und schwärzen Sie die Ränder
Python Open CV hat versucht, das Bild im Text anzuzeigen.
Ich habe versucht, das Bild mithilfe von maschinellem Lernen zu komprimieren
Ich habe versucht, die Entropie des Bildes mit Python zu finden
opencv-python Einführung in die Bildverarbeitung
[Python] Ändern Sie den Namen der Bilddatei in eine Seriennummer
Verwendung des Generators
Der Weg zum Herunterladen von Matplotlib
Entfernen Sie den Rahmen aus dem Bild
Ich habe ein Punktbild des Bildes von Irasutoya gemacht. (Teil 1)
Ändern Sie die Lautstärke von Pepper entsprechend der Umgebung (Ton).
Konvertieren Sie die vorliegenden Bilddaten (png) in ein .pbm-Bild
Ich habe ein Punktbild des Bildes von Irasutoya gemacht. (Teil 2)
Wie benutzt man den Dekorateur?
Das Bild ist Namekuji
So erhöhen Sie die Achse
So starten Sie die erste Projektion
Zeigen Sie das Bild der an den PC angeschlossenen Kamera auf der GUI an.
Ich habe versucht, das SD-Boot-Image von LicheePi Nano zu erstellen
Ich habe versucht, das Bild mit OpenCV im "Skizzenstil" zu verarbeiten
Versuchen Sie, ein neues Bild mit dem trainierten StyleGAN2-Modell zu bearbeiten
Berücksichtigen Sie die Verarbeitungsgeschwindigkeit, um den Bildpuffer mit numpy.ndarray zu verschieben
[Los] Erstellen Sie einen CLI-Befehl, um die Erweiterung des Bildes zu ändern
Ich habe versucht, das Bild mit OpenCV im "Bleistift-Zeichenstil" zu verarbeiten
Ich habe versucht, ein Standbild aus dem Video auszuschneiden
Python-Skript für KiCad-Pre-Place-Footprint fast entsprechend dem Layout des Schaltplans
Programmieren, um in der Welt zu kämpfen ~ 5-1
Programmierung, um in der Welt zu kämpfen ~ 5-5,5-6
Wie berechnet man den Autokorrelationskoeffizienten?
Weg zum Assistenten: 4. Schritt
Mounten Sie das an CentOS 7 angeschlossene Volume
Überlassen Sie die mühsame Verarbeitung Python
Programmieren, um in der Welt zu kämpfen 5-3
Verwendung des optparse-Moduls
Django1.11.1 Bild-Uploader Leicht zu stolpernde Punkte
Erkennen Sie Mosaikpunkte im Bild
Ändere das Fliegengewichtsmuster in Pythonic (?) (2)
Programmierung für den Kampf in der Welt - Kapitel 4
Workflow zum Konvertieren der Formel (Bild) in Python
Im Python-Befehl zeigt Python auf Python3.8
Lesen des SNLI-Datensatzes
So erhalten Sie die Python-Version