Diesmal als Daten für tiefes Lernen Nicht nur die mit Keras standardmäßig gelieferten Datensätze wie MNIST und Cifar10 Lernen Sie mit Keras anhand von Bildern, die Sie online herunterladen.
Zur Identifizierung des Geschlechts verwendet die Zusammenfassung einen Datensatz namens lfs unter http://vis-www.cs.umass.edu/lfw/.
Weitere Forschungszwecke finden Sie unter https://data.vision.ee.ethz.ch/cvl/rrothe/imdb-wiki/ Zum Beispiel das imdb-Dataset.
Es kommt auch mit Metadaten und ist sehr einfach zu handhaben und ist perfekt für die Überprüfung.
Laden Sie zuerst das Bild und zeigen Sie es an.
#Importieren Sie CV2 und NumPy, um OpenCV zu verwenden. Importieren Sie auch Matplotlib für die Bildanzeige
import cv2
import matplotlib.pyplot as plt
import numpy as np
#Lesen mit OpenCV. Geben wir den Pfad als Argument an
img = cv2.imread('./6100_gender_recognition_data/female/Adriana_Lima_0001.jpg')
#Verarbeiten Sie die von OpenCV gelesenen Daten so, dass sie von matplotlib angezeigt werden können. b,g,Da es in r Reihenfolge ist, r,g,Umwandeln in b
b,g,r = cv2.split(img)
img = cv2.merge([r,g,b])
#Bild mit matplotlib ausgeben
plt.imshow(img)
plt.show()
Beim maschinellen Lernen verwenden wir Bilder selten so, wie sie sind.
Wenn Sie ein zu detailliertes Bild aufnehmen, ist die Lernzeit sehr lang. Außerdem sind im Allgemeinen nicht alle aus dem Internet usw. erhaltenen Bilder gleich groß.
Ändern Sie daher die Größe mithilfe der Funktion von CV2.
import cv2
import matplotlib.pyplot as plt
import numpy as np
img = cv2.imread('./6100_gender_recognition_data/female/Adriana_Lima_0001.jpg')
#Ich werde versuchen, es 50 x 50 Größe zu machen. Geben Sie das Bild und die Dimension im Argument an
my_img = cv2.resize(img, (50, 50))
#Ich verwende imwrite, um ein Bild zu speichern
cv2.imwrite('resize.jpg', my_img)
img = plt.imread('resize.jpg')
plt.imshow(img)
plt.show()
Die Farbe wird durch drei Elemente dargestellt: Rot, Grün und Blau.
Beim maschinellen Lernen wird dies aufgrund der Leistung des Computers häufig zur Vereinfachung kombiniert. Mit anderen Worten, es wird in Schwarzweiß ausgedrückt.
import cv2
import matplotlib.pyplot as plt
import numpy as np
img = cv2.imread('./6100_gender_recognition_data/female/Adriana_Lima_0001.jpg')
#Es kann in ein monochromes Bild konvertiert werden, indem das zweite Argument von cvtColor auf RGB2GRAY gesetzt wird.
my_img = cv2.cvtColor(img, cv2.COLOR_RGB2GRAY)
cv2.imwrite('cvtColor.jpg', my_img)
img = plt.imread('cvtColor.jpg')
plt.imshow(img)
#Matplotlib erkennt das erste Element als grün. Verwenden Sie daher Grau, um es in Schwarzweiß anzuzeigen.
plt.gray()
plt.show()
Überprüfung der grundlegenden Operationen von OpenCV
import cv2
import matplotlib.pyplot as plt
import numpy as np
img = cv2.imread('./6100_gender_recognition_data/female/Angelina_Jolie_0001.jpg')
my_img = cv2.resize(img, (50, 50))
my_img = cv2.cvtColor(my_img, cv2.COLOR_RGB2GRAY)
cv2.imwrite('final.jpg', my_img)
img = plt.imread('final.jpg')
plt.imshow(img)
plt.gray()
plt.show()
Recommended Posts