[PYTHON] Verstehen, wie Bilder auf Jupyter angezeigt werden (Verwendung von imshow / matplotlib von OpenCV)

Einführung

Dieser Artikel ist ein Artikel, der versucht zu verstehen, wie ein Bild auf Jupyter und die dem Ausgabebild entsprechende Funktion angezeigt werden, indem das Argument und die Liste geändert werden. Da ich ein Anfänger im maschinellen Lernen bin, wäre ich sehr dankbar, wenn Sie auf Meinungen oder Fehler hinweisen könnten.

einpacken

Bilder inline anzeigen

pic.ipynb



import cv2
import matplotlib.pyplot as plt

img = cv2.imread('012.JPG') #Wählen Sie ein Bild aus, das Sie laden möchten.Legen Sie es in den gleichen Ordner wie ipynb.
fig = plt.figure(figsize=(10,10))
ax = fig.add_subplot(1,1,1)
ax.imshow(img)
ax.axis("off")

012.png

Zunächst habe ich das Bild grundsätzlich angezeigt. Hier bedeutet (-0,5,719,5,719,5, -0,5), dass die untere linke Koordinate (-0,5,719,5) und die obere rechte Koordinate (719,5, -0,5) ist. Die Anzeige des Bildes unterscheidet sich von der in der Mathematik erlernten Richtung der xy-Achse, und der Ursprung befindet sich oben links, daher wie folgt.

014.png

Überprüfen Sie die Größe des Bildes

pic.ipynb


img.shape
(720, 720, 3)

Da es darstellt (vertikale Auflösung, horizontale Auflösung, Anzahl der Kanäle), können Sie sehen, dass es 3 Kanäle mit 720 x 720 (= RGB-Farbe) gibt. ** Beachten Sie, dass wenn dies in xy ausgedrückt wird, dies (y, x, Anzahl der Kanäle) ist. ** ** **

Zeigen Sie die Bildkoordinaten und das Bild an dieser Position an

pic.ipynb


img[0,0]
array([162, 127,  77], dtype=uint8)

Es stellt sich heraus, dass der RGB-Wert der Ursprungsposition (0,0) (162, 127, 77) ist. Wenn es angezeigt wird, ist es außerdem wie folgt.

pic.ipynb



fig = plt.figure(figsize=(10,10))
ax = fig.add_subplot(111)
ax.imshow(img[0:1,0:1])#Zeigen Sie die Wertekoordinaten im Bereich an und geben Sie sie an
ax.axis("on")

015.png

Selbst wenn Sie (0,0) -Koordinaten anzeigen möchten, tritt ein Fehler auf, sofern Sie keinen Bereich wie [0: 1, 0: 1] angeben. Seien Sie also vorsichtig.

Achten Sie bei der Anzeige auf die x- und y-Koordinaten

pic.ipynb


fig = plt.figure(figsize=(10,10))
ax = fig.add_subplot(111)
ax.imshow(img[0:720,0:10])
ax.axis("on")

Wenn Sie img [0: 720,0: 10] angeben, wird es vertikal angezeigt, da es als y: 0 bis 720 und x: 0 bis 10 angezeigt wird. Beachten Sie, dass das Gegenteil der Fall ist, wenn Köpfe mit x- und y-Koordinaten vorhanden sind. Das Bild unten ist ein vertikal langes Bild.

018.png

Wenden Sie das Mosaik mit dem Größenänderungsmodul an

pic.ipynb


img_re= cv2.resize(img, dsize=None, fx=0.1, fy =0.1)
fig = plt.figure(figsize=(10,10))
ax = fig.add_subplot(1,1,1)
ax.imshow(img_re)
ax.axis("off")

Mosaic wird angewendet, indem die Anzahl der Pixel mit dem Modul cv2.resize () auf 1/10 reduziert wird. In dem Argument in resize sind fx und fy die Vergrößerungen von x und y. Dieses Mal wurde die Anzahl der Pixel durch Einstellen auf 0,1 (= 10%) auf 1/10 reduziert.

016.png

Erhöhen Sie die Transparenz

pic.ipynb


fig, ax = plt.subplots(facecolor="w")
ax.imshow(img, alpha=0.5)

plt.show()

Durch Angabe des Alpha-Arguments des imshow-Moduls im Bereich von 0 bis 1 und Bestimmung der Transparenz ist es möglich, zu einem helleren Farbton zu wechseln.

017.png

Am Ende

Wenn Sie Bilder verarbeiten möchten, ist dieser Vorgang grundlegend. Ich fand es sehr wichtig, durch Bewegen meiner Hände ein echtes Gefühl zu bekommen.

Das vollständige Programm ist unten gespeichert. https://github.com/Fumio-eisan/jupyter_pic20200313

Recommended Posts

Verstehen, wie Bilder auf Jupyter angezeigt werden (Verwendung von imshow / matplotlib von OpenCV)
So zeigen Sie Bilder kontinuierlich mit matplotlib Memo an
So zeigen Sie mehrere Bilder einer Galaxie in Kacheln an
PIL-Bilder auf Jupyter anzeigen
So installieren Sie OpenCV auf einem Mac
Wie man Matplotlib auf Heroku ausführt
Verwendung von Jupyter am Frontend von Spacon ITO
So unterdrücken Sie Anzeigefehler in matplotlib
So zeigen Sie Piktogramme unter Manjaro Linux an
Zeigen Sie das Diagramm von tensorBoard auf jupyter an
Jupyter Notebook Grundlagen der Verwendung
So zeichnen Sie ein OpenCV-Bild mit Pygame
[Python] So legen Sie die Position und Größe der Fensteranzeige von matplotlib fest
Ich möchte ein Bild auf Jupyter Notebook mit OpenCV (Mac) anzeigen.
So installieren Sie OpenCV auf Jetson Nano Python
So machen Sie mehrere Kernel auf Jupyter auswählbar
Ich möchte mehrere Bilder mit matplotlib anzeigen.
So lösen Sie das Problem, dass nur der Prozess übrig bleibt, wenn Sie auf dem Imshow-Bildschirm von OpenCV auf Kreuz drücken
[Python] So installieren Sie OpenCV unter Anaconda [Windows]
Ich habe versucht zusammenzufassen, wie man Matplotlib von Python verwendet
So zeigen Sie den Fortschrittsbalken auf dem Jupyter-Notizbuch an, um den Fortschritt anzuzeigen
Wie benutzt man Matplotlib?
So zeigen Sie eine bestimmte Zeile einer Datei oder ein Befehlsergebnis unter Linux an (sed, awk)
Erstellen Sie eine Funktion zum Anzeigen von Bildern wie Jupyter / RStudio [Docker]
Erleichtern Sie die Anzeige von Python-Modulausnahmen
[Ev3dev] So zeigen Sie ein BMP-Bild mit Python auf dem LCD an
So zeigen Sie eine Liste der mit pyenv installierbaren Versionen an
So erhöhen Sie die Anzahl der Datensatzbilder für maschinelles Lernen
So registrieren Sie ein Paket in PyPI (Stand September 2017)
So sehen Sie den Inhalt der ipynb-Datei des Jupyter-Notizbuchs
Tensorboard im Jupyter-Notebook auf Docker kann nicht angezeigt werden (gelöst)
Wenn ich mit matplotlib eine große Anzahl von Diagrammen generiere, möchte ich das Diagramm nicht auf dem Bildschirm anzeigen (Jupyter-Umgebung).
So vereinheitlichen Sie die Behälterbreite, wenn mehrere Histogramme übereinander angezeigt werden (matplotlib)
Für diejenigen, die nicht wissen, wie man ein Passwort mit Jupyter auf Docker festlegt
Japanische Anzeige von Matplotlib, Seaborn
So ändern Sie das Layout von Jupyter
So registrieren Sie sich bei pypi
Beschriften Sie Bilder im Jupiter-Labor
Hinweise zu imshow () von OpenCV
So verwenden Sie Jupyter Notebook
So zeigen Sie eine bestimmte Dateispalte unter Linux an (awk)
Tag 65 Ich habe matplotlib installiert, um Grafiken auf meinem Jupyter-Notizbuch zu zeichnen.
So installieren Sie OpenCV in Cloud9 und führen es in Python aus
Zeigen Sie das Bild der an den PC angeschlossenen Kamera auf der GUI an.
Löse verstümmelte japanische Zeichen in matplotlib von Jupyter Notebook auf Docker
Echtzeitanzeige von Videos, die von einer Webkamera auf einem Jupyter-Notebook (Python3) aufgenommen wurden
So führen Sie Jupyter und Spark auf einem Mac mit minimalen Einstellungen aus
So zeigen Sie PDF-Auflösung und detaillierte Informationen unter Linux an (pdfinfo)
So speichern Sie einen Teil eines langen Videos mit OpenCV
Wie nutzt man maschinelles Lernen für die Arbeit? 01_ Den Zweck des maschinellen Lernens verstehen
So aktualisieren Sie die Python-Version von Cloud Shell in GCP
So fügen Sie OpenCV in Raspberry Pi ein und sammeln mit Python ganz einfach Bilder von Gesichtserkennungsergebnissen