Einfache Python + OpenCV-Programmierung mit Canopy

Ziel

Für diejenigen, die es mögen, werde ich vorstellen, wie eine integrierte Entwicklungsumgebung für Python namens Canopy erstellt und verwendet wird. Es ist viel einfacher als das Erstellen einer C ++ & OpenCV-Umgebung mit Visual Studio usw. Es richtet sich hauptsächlich an Studierende an Lehrkräfte und Mitarbeiter (ich werde unter der Voraussetzung eines akademischen Kontos sprechen). Ich habe auch ein Beispiel für das Bauen auf einem Mac vorgestellt, aber ich denke, dass es auf anderen Plattformen keinen großen Unterschied gibt. Lesen Sie unter Linux und Windows die entsprechenden Pfadeinstellungen durch.

Schritt 1 Eröffnen Sie ein Konto-Download

Wenn Sie ein College-E-Mail-Konto wie ***. Ac.jp haben, können Sie ein akademisches Konto bei Canopy eröffnen und über 200 vorgefertigte Pakete kostenlos erhalten. Wenn Sie kein Universitätskonto haben, besuchen Sie http://www.iu-tokyo.ac.jp/edu/entra/ http://www.i.kyoto-u.ac.jp/admission/guide.html Bitte beziehen Sie sich auf.

Schritt 2 Installation - Grundeinstellung



  • Entscheiden Sie, ob Sie standardmäßig Canopys Python verwenden möchten (kann später geändert werden). kobito.1418787221.972218.png

Ja ist in den meisten Fällen in Ordnung, aber wenn Sie eine Python-Entwicklungsumgebung mit Vim oder Emacs erstellen möchten oder möchten, besuchen Sie http://stackoverflow.com/questions/19617936/importerror-no-module-named-site-vim- and-enthought-canopy Es gibt ein Problem, bei dem Sie sich über einen Fehler hier ärgern.

  • In meinem Fall ist Canopy Python nicht als Standard festgelegt, sondern es wird Ipython, das häufig in Canopy verwendet wird, und ein später beschriebener Alias für enpkg erstellt. Bitte lassen Sie mich wissen, ob es hier einen besseren Weg gibt. kobito.1418787531.691445.png

Schritt 3 Paketinstallation

  • Wenn Sie Canopy starten, wird ein Fenster wie dieses angezeigt. Melden Sie sich zunächst mit dem zuvor eröffneten Konto an und wählen Sie Paketmanager.

kobito.1418787608.128430.png


  • Es gibt viele Pakete, die so aktualisiert werden können

kobito.1418787657.428824.png


  • Sie können es auch finden, indem Sie nach OpenCV suchen. Wählen Sie Installieren, um zu installieren. Es ist einfach.

kobito.1418787708.844389.png


Ich möchte am Terminal mein Bestes geben

Wenn Sie eine solche GUI nicht verwenden möchten! Ich möchte mein Bestes auf dem Terminal geben, verwenden Sie enpkg. Ich bin ausschließlich eine Enpkg-Sekte.

  • enpkg ist da.

kobito.1418794148.808244.png


  • --whats-new ruft ein Paket auf, das aktualisiert werden kann.

kobito.1418787909.465810.png


Sie können nach Paketen mit + -s suchen.

kobito.1418788060.607035.png


  • Installieren.

kobito.1418788083.535679.png

Entwickelt mit iPython Notebook

Canopy selbst verfügt über einen Konsoleneditor, und die Entwicklung ist von sich aus möglich. Verwenden wir hier jedoch das iPython-Notizbuch, eine webbasierte Entwicklungsumgebung für iPython.

  • Führen Sie `` `ipython notebook``` auf dem Terminal aus
  • Sicherungsdateien usw. werden in dem Verzeichnis generiert, in dem ipython notebook gestartet wird.

kobito.1418790333.038322.png


  • Der folgende Bildschirm wird angezeigt. Wählen Sie rechts das neue Notizbuch aus. kobito.1418790420.377056.png

  • Mit iPython Notebook können Sie Skripte in Textfeldern schreiben und ausführen, die als "Zellen" bezeichnet werden.

kobito.1418790535.752484.png


  • Sie können auch Funktionen und Klassen schreiben.

kobito.1418790595.188506.png


  • Sie können auch einen Markdown schreiben, indem Sie im Pulldown-Menü auf der linken Seite des Menüs Markdown auswählen.

kobito.1418790793.932163.png kobito.1418790709.589093.pngkobito.1418790717.607891.png


  • Sie können auch Bash schreiben.

kobito.1418790912.356443.png


Sie können auch + html schreiben.

kobito.1418790971.489943.png

Versuchen wir es mit OpenCV

Lassen Sie uns abschließend kurz die Funktionen von openCV ausprobieren.

Bildschirm

kobito.1418791217.305235.png

  • `` `% pylab inline``` ist eine der Funktionen, die als magische Funktion bezeichnet wird. Durch Ausführen dieser Funktion kann das Bild inline angezeigt werden.

Anzeige der von der Kamera aufgenommenen Bilder

kobito.1418791517.292589.png

  • `time.time ()` gibt die verstrichenen Sekunden ab Mitternacht (0:00:00 Uhr) am 1. Januar 1970 als Float zurück.
  • `cv2.VideoCapture (0)` stellt eine Verbindung zur 0. angeschlossenen Kamera her. Wenn Sie hier eine Videodatei angeben, wird dieses Video geladen.
  • `cap.read ()` um das Bild aufzunehmen und imshow um es auszuspucken. In der obigen Inline-Umgebung wird das Video nicht gut abgespielt, daher verwenden wir hier die osx-Umgebung.
  • Mit `plt.draw ()` wird das Bild zum ersten Mal interaktiv aktualisiert (leicht zu vergessen)

Gesichtserkennung

Hier werden wir die berühmte Gesichtserkennung vom Typ Viola & Jones-Kaskade ausprobieren.

  • Nehmen Sie ein geschultes Modell zur Gesichtserkennung in die Hand. Lassen Sie uns Bash auf Notebook schreiben, weil es eine große Sache ist. kobito.1418792138.620981.png
  • kobito.1418792473.383984.png

Bonus: Bildverarbeitung mit Scikit-Bild

Zusätzlich zu openCV verfügt Python über ein Paket namens scicit image, dessen Methode in openCV nicht implementiert ist. Weitere Informationen finden Sie unter http://scikit-image.org/docs/dev/auto_examples/index.html

Bildübersegmentierung

kobito.1418793602.836684.png

  • `skimage.io.ImageCollection``` liest die Bildgruppe, die dem Argument entspricht, als Liste. Wenn Sie beispielsweise img = ImageCollection ('img * .png') `` in dem Verzeichnis ausführen, das img0.png, img1.png, ... img10.png enthält, ist das i-te Element das i-te. Eine Liste mit den Bildern von wird erstellt.
  • SLIC, das in `skimage.segmentation.slic``` implementiert ist, ist eine der Bildsegmentierungsmethoden, und es ist möglich, das Bild wie oben gezeigt in mehrere Superpixel zu unterteilen. Ich kann es schaffen `mark_boundaries``` ist eine Funktion zum Zeichnen.

Recommended Posts

Einfache Python + OpenCV-Programmierung mit Canopy
Binarisierung mit OpenCV / Python
3. 3. KI-Programmierung mit Python
Python-Programmierung mit Atom
Wettbewerbsfähige Programmierung mit Python
Programmieren mit Python Flask
Einfache TopView mit OpenCV
Programmieren mit Python und Tkinter
"Apple-Verarbeitung" mit OpenCV3 + Python3
[Analyse des gemeinsamen Auftretens] Einfache Analyse des gemeinsamen Auftretens mit Python! [Python]
Bildbearbeitung mit Python OpenCV
Kameraerfassung mit Python + OpenCV
[Python] Verwenden von OpenCV mit Python (Basic)
Einfache Ordnersynchronisation mit Python
Gesichtserkennung mit Python + OpenCV
Einfache Python-Kompilierung mit NUITKA-Utilities
Einfacher HTTP-Server mit Python
Netzwerkprogrammierung mit Python Scapy
Verwenden von OpenCV mit Python @Mac
Leuchtendes Leben mit Python und OpenCV
[Python] Einfache Parallelverarbeitung mit Joblib
Neuronales Netzwerk mit OpenCV 3 und Python 3
[Python] Verwenden von OpenCV mit Python (Bildtransformation)
[Python] Mit Pokemon erlernte objektorientierte Programmierung
[Python] Verwenden von OpenCV mit Python (Kantenerkennung)
Einfache Mailübertragung mit Eile Python3
Versuchen Sie die Gesichtserkennung mit Python + OpenCV
Bayesianische Optimierung, die mit Python sehr einfach ist
Schneiden Sie das Gesicht mit Python + OpenCV aus
Gesichtserkennung mit Kamera mit opencv3 + python2.7
Laden Sie das GIF-Bild mit Python + OpenCV
Visualisieren Sie Ihre Daten ganz einfach mit Python Seaborn.
Finden Sie Bildähnlichkeit mit Python + OpenCV
Verwenden Sie OpenCV mit Python 3 in Window
Zeichnen Sie eine Illustration mit Python + OpenCV
Einfache parallele Ausführung mit Python-Unterprozess
Verfolgen Sie Baseballbälle mit Python + OpenCV
Graphbasierte Segmentierung mit Python + OpenCV
[Python] Mit OpenCV können Sie problemlos Bilddateien mit Seriennummern lesen
Zeichnen Sie einen Pfeil (Vektor) mit opencv / python
Grundlegendes Studium von OpenCV mit Python
Gesichtserkennung mit Python + OpenCV (invariante Rotation)
Einfache Schlüsselwortextraktion mit TermExtract für Python
Wettbewerbsprogrammierung mit Python Lokale Umgebungseinstellungen
[Python] Super einfacher Test mit Assert-Anweisung
[Python] Einfache Überprüfung des Argumenttyps mit Datenklasse
Speichern Sie Videos Frame für Frame mit Python OpenCV
Einfache Einführung der Spracherkennung mit Python
Ich habe versucht, mit Python + opencv nicht realistisch zu rendern
Bildverarbeitung mit Python & OpenCV [Tonkurve]
Bildaufnahme von der Kamera mit Python + OpenCV
[Easy Python] Lesen von Excel-Dateien mit openpyxl
[python, openCV] base64 Gesichtserkennung in Bildern
Erstellen verschiedener Photoshop-Videos mit Python + OpenCV ③ Erstellen Sie verschiedene Photoshop-Videos
Einfache Web-App mit Python + Flask + Heroku
[Python] Bilder mit OpenCV lesen (für Anfänger)
Verarbeiten Sie Bilder in Python ganz einfach mit Pillow
[Easy Python] Lesen von Excel-Dateien mit Pandas
Einfache Einführung in die Python3-Serie und OpenCV3
Einfaches Web-Scraping mit Python und Ruby