[PYTHON] Ich habe versucht, ein Objekt mit M2Det zu erkennen!

Dinge die zu tun sind

Überblick

  1. Vorbereitung der Ausführungsumgebung (ausgeführt von Google Colaboratory)
  2. Laden Sie das Modell von Google Drive herunter
  3. Kopieren Sie die Bilddatei
  4. Führen Sie das Modell aus
  5. Ergebnisse anzeigen

Ausführungsumgebung

1. Vorbereitung der Ausführungsumgebung (ausgeführt von Google Colaboratory)

--Öffnen Sie Google Colaboratory und wechseln Sie auf der Registerkarte "Laufzeit" von "Laufzeittyp ändern" zu "GPU". スクリーンショット 2019-12-15 18.54.06.png

―― Danach machen Sie Folgendes

Vorbereitung der Ausführungsumgebung


!pip install torch torchvision
!pip install opencv-python tqdm addict
!git clone https://github.com/qijiezhao/M2Det.git
%cd M2Det/
!sh make.sh

2. Laden Sie das Modell von Google Drive herunter

-Das Linkziel des trainierten Modells ist in der README-Datei von GitHub (https://drive.google.com/file/d/1NM1UDdZnwHwiNDxhcP-nndaWj24m-) beschrieben 90L / view), also werde ich es auf den Code von diesem Google Drive-Link herunterladen

python


import requests

def download_file_from_google_drive(id, destination):
    URL = "https://docs.google.com/uc?export=download"

    session = requests.Session()

    response = session.get(URL, params = { 'id' : id }, stream = True)
    token = get_confirm_token(response)

    if token:
        params = { 'id' : id, 'confirm' : token }
        response = session.get(URL, params = params, stream = True)

    save_response_content(response, destination)    

def get_confirm_token(response):
    for key, value in response.cookies.items():
        if key.startswith('download_warning'):
            return value

    return None

def save_response_content(response, destination):
    CHUNK_SIZE = 32768

    with open(destination, "wb") as f:
        for chunk in response.iter_content(CHUNK_SIZE):
            if chunk: # filter out keep-alive new chunks
                f.write(chunk)

file_id = '1NM1UDdZnwHwiNDxhcP-nndaWj24m-90L'
destination = './m2det512_vgg.pth'
download_file_from_google_drive(file_id, destination)

3. Kopieren Sie die Bilddatei

--Mount Google Drive

Google Drive-Mount


from google.colab import drive
drive.mount('/content/drive')

Kopie der Bilddatei


!cp /content/drive/My\ Drive/ML/work/*.jpg ./imgs

4. Führen Sie das Modell aus

Modellausführung


!python demo.py -c=configs/m2det512_vgg.py -m=m2det512_vgg.pth

5. Ergebnisse anzeigen

python


import cv2
import matplotlib.pyplot as plt

plt.figure(figsize=(5, 5), dpi=200)
img = cv2.imread('imgs/herd_of_horses_m2det.jpg')
show_img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
plt.imshow(show_img)

ダウンロード1.png

ダウンロード2.png

ダウンロード3.png

ダウンロード4.png

Quellcode

https://github.com/hiraku00/m2det_test

Referenz

Recommended Posts

Ich habe versucht, ein Objekt mit M2Det zu erkennen!
Ich habe versucht, mit OpenCV Bewegungen schnell zu erkennen
Ich habe versucht, künstliches Perzeptron mit Python zu implementieren
Ich habe versucht, eine OCR-App mit PySimpleGUI zu erstellen
Ich habe versucht, die alternative Klasse mit Tensorflow zu finden
Ich habe versucht, einen Artikel mit SQL Alchemy auf Wiki.js zu erstellen
Ich möchte Objekte mit OpenCV erkennen
Ich habe versucht, eine SMS mit Twilio zu senden
Ich habe versucht, Autoencoder mit TensorFlow zu implementieren
Ich habe versucht, AutoEncoder mit TensorFlow zu visualisieren
Ich habe versucht, CVAE mit PyTorch zu implementieren
Ich habe versucht, TSP mit QAOA zu lösen
Ich habe versucht, Gesichtsmarkierungen mit Python und Dlib leicht zu erkennen
Ich habe versucht, mit Python + OpenCV eine Bildähnlichkeitsfunktion zu erstellen
Ich habe versucht, nächstes Jahr mit AI vorherzusagen
Ich habe versucht, das Lesen von Dataset mit PyTorch zu implementieren
Ich habe versucht, lightGBM, xg Boost mit Boruta zu verwenden
Ich habe versucht, mit TF Learn die logische Operation zu lernen
Ich habe versucht, GAN (mnist) mit Keras zu bewegen
Ich habe versucht, durch Schaben ein Bild zu bekommen
Ich möchte OREMO mit setParam sein!
Ich habe versucht, CloudWatch-Daten mit Python abzurufen
Ich habe versucht, LLVM IR mit Python auszugeben
Ich habe versucht, Googles allgemeine Objekterkennung NN, Inception-v3, mit Tensorboard zu visualisieren
Ich habe versucht zu debuggen.
Ich habe versucht, die Herstellung von Sushi mit Python zu automatisieren
Ich habe versucht, das Überleben der Titanic mit PyCaret vorherzusagen
Ich habe versucht, Linux mit Discord Bot zu betreiben
Ich habe versucht, eine E-Mail mit SendGrid + Python zu senden
Ich habe versucht, DP mit Fibonacci-Sequenz zu studieren
Ich habe versucht, Jupyter mit allen Amazon-Lichtern zu starten
Ich habe versucht, Tundele mit Naive Bays zu beurteilen
Ich habe versucht, mit Raspberry Pi 4 eine Umgebung von Ubuntu 20.04 LTS + ROS2 zu erstellen
Ich habe versucht, die Strichzeichnung mit Deep Learning aus dem Bild zu extrahieren
Versuchen Sie, ein Objekt mit RaspberryPi zu erkennen ~ Teil 1: Vergleich der Erkennungsgeschwindigkeit ~
Ich habe versucht, eine Umgebung zu erstellen, um regelmäßig mit Selenium mit AWS Fargate zu überprüfen
Ich habe versucht, die Sündenfunktion mit Chainer zu trainieren
Ich möchte ein Bild mit Lollipop in WebP konvertieren
Ich habe versucht, maschinelles Lernen (Objekterkennung) mit TouchDesigner zu verschieben
Ich möchte mit Jubatus (1) eine nicht autorisierte Anmeldung bei Facebook erkennen.
Ich habe versucht, Funktionen mit SIFT von OpenCV zu extrahieren
Ich habe versucht, Faster R-CNN mit Pytorch auszuführen
Ich habe versucht, mit VOICEROID2 2 automatisch zu lesen und zu speichern
Ich habe versucht, Iris aus dem Kamerabild zu erkennen
Ich habe versucht, DCGAN mit PyTorch zu implementieren und zu lernen
Ich habe versucht, Mine Sweeper auf dem Terminal mit Python zu implementieren
Ich habe versucht, mit Blenders Python script_Part 01 zu beginnen
Ich habe versucht, Soma Cube mit Python zu lösen
Ich habe versucht, eine ganzzahlige Matrix mit Numpy zu standardisieren
Ich habe versucht, mit VOICEROID2 automatisch zu lesen und zu speichern
Ich habe versucht, mit Blenders Python script_Part 02 zu beginnen
Ich habe versucht, ObjectId (Primärschlüssel) mit Pymongo zu generieren
Ich habe versucht, eine ML-Pipeline mit Cloud Composer zu erstellen
Ich habe versucht, mit AWS Lambda einen AMI zu erhalten
Ich habe versucht, mit OpenCV Ann Man zu werden