Heim  >  Artikel  >  Backend-Entwicklung  >  Das macht Spaß! Verwenden Sie Python, um Blumenarten zu identifizieren und sie automatisch zu organisieren und zu klassifizieren!

Das macht Spaß! Verwenden Sie Python, um Blumenarten zu identifizieren und sie automatisch zu organisieren und zu klassifizieren!

WBOY
WBOYnach vorne
2023-04-12 13:49:091698Durchsuche

Das macht Spaß! Verwenden Sie Python, um Blumenarten zu identifizieren und sie automatisch zu organisieren und zu klassifizieren!

„Fengxiaoliang's Popular Science Daily“ veröffentlicht häufig einige Videos, in denen beliebte Online-Organismen identifiziert werden, was nicht nur biologisches Wissen bekannt macht, sondern auch die Neugier des Publikums befriedigt. Heute identifizieren wir auch beliebte Pflanzen im Internet! Vor kurzem blühten im Frühling viele Blumen. Ich nutzte das Qingming-Fest, um ins Freie zu gehen und viele Blumenfotos zu machen.

Das macht Spaß! Verwenden Sie Python, um Blumenarten zu identifizieren und sie automatisch zu organisieren und zu klassifizieren!

Da wir mit vielen Blumen nicht besonders vertraut sind, müssen wir eine Software verwenden, um zu identifizieren, um welche Art von Blume es sich handelt. Es gibt viele Blumenerkennungssoftware auf dem Markt, wie Huamate, Xingse, Baidu usw. Nach dem Test habe ich festgestellt, dass Baidu den besten Erkennungseffekt hat. Also hatte ich eine Idee. Kann ich die Benutzeroberfläche von Baidu stapelweise aufrufen, um Blumenfotos zu identifizieren und zu klassifizieren? (Den vollständigen Code finden Sie am Ende des Artikels)

Das macht Spaß! Verwenden Sie Python, um Blumenarten zu identifizieren und sie automatisch zu organisieren und zu klassifizieren!

Baidu-Bilderkennung

Die Bilderkennungsschnittstelle von Baidu kann genau identifizieren Mehr als 100.000 Bildtypen Objekte und Szenen umfassen mehr als 10 hochpräzise Bilderkennungsfunktionen und stellen entsprechende API-Dienste bereit.

​https://www.php.cn/link/17d187eaf6157b4e219552d6a187290a​

Das macht Spaß! Verwenden Sie Python, um Blumenarten zu identifizieren und sie automatisch zu organisieren und zu klassifizieren!#🎜. 🎜## 🎜🎜#Wir befolgen die Schritte, um eine neue Anwendung zu erstellen und unseren eigenen API-Schlüssel und Geheimschlüssel zu erhalten, wie in der Abbildung unten gezeigt.

Das macht Spaß! Verwenden Sie Python, um Blumenarten zu identifizieren und sie automatisch zu organisieren und zu klassifizieren!Die Bilderkennung bietet eine Kombinations-API-Schnittstelle, die flexible Kombinationsaufrufe mehrerer vertikaler Identifikationsdienste unterstützt. Hier kann nur die Anforderung erfüllt werden, die Anlagenidentifikation aufzurufen .

Wie rufe ich die Baidu-Bilderkennungs-API-Schnittstelle in Python auf?

Der erste Schritt besteht darin, die Authentifizierungsschnittstelle aufzurufen, um das Token zu erhalten.

API_Key = '**********'
Secret_Key = '**********'
def get_access_token(API_Key,Secret_Key):
host = '**********'
response = requests.get(host)
return response.json()['access_token']
access_token = get_access_token(API_Key,Secret_Key)

Der zweite Schritt besteht darin, den Bildtyp zu identifizieren #

import requests
import base64
request_url = '**********'
# 二进制方式打开图片文件
f = open(r'D:下载QQ截图20220407203203.png', 'rb')
img = base64.b64encode(f.read())
params = {"image":img}
request_url = request_url + "?access_token=" + access_token
headers = {'content-type': 'application/x-www-form-urlencoded'}
response = requests.post(request_url, data=params, headers=headers)
if response:
print (response.json()['result'][0]['name'])

Ausgabe:

Kirschblüte

Das macht Spaß! Verwenden Sie Python, um Blumenarten zu identifizieren und sie automatisch zu organisieren und zu klassifizieren!Der Rückgabeparameter des Aufrufs der Baidu-Bilderkennungsschnittstelle ist in der folgenden Abbildung dargestellt. Für uns ist nur der Name (Anlage Name) ist ein benötigter Parameter.

Fotodateien lesen

Ich speichere die aufgenommenen Fotos unter D: Blumensammlungspfad herunterladen, daher muss ich sie verwenden Das Betriebssystemmodul liest die Dateiliste, um nachfolgende Stapelvorgänge zu erleichtern.

Geben Sie den folgenden Befehl in der interaktiven Umgebung ein:

import os
path = "D:下载花卉合集"
filenames = os.listdir(path)
filenames
Das macht Spaß! Verwenden Sie Python, um Blumenarten zu identifizieren und sie automatisch zu organisieren und zu klassifizieren!Ausgabe

:

['QQ截图20220405223301.png',
 'QQ截图20220405223320.png',
 ......
 '微信图片_20220405225020.jpg',
 '微信图片_20220405225023.jpg']

listdir im Betriebssystemmodul ()-Methode, empfängt einen Pfadparameter path und gibt eine Liste der Dateinamen aller Dateien unter dem Pfad zurück. Auf diese Weise haben wir die Dateinamen aller Blumenbilder unter diesem Pfad erhalten, wie in der folgenden Abbildung dargestellt.

Fotos organisieren und klassifizieren

Dann können wir die for-Schleifenanweisung verwenden, um eine Bilderkennung für die Blumenfotos in durchzuführen Reihenfolge, und klassifizieren und organisieren Sie sie entsprechend den erkannten Namen in entsprechenden Ordnern.

Geben Sie den folgenden Befehl in der interaktiven Umgebung ein:

for i in filenames:
flower_name = get_fname(i)
file_path = os.path.join(path,i)
folder_path = os.path.join(path,flower_name)
if not os.path.exists(folder_path):
os.mkdir(folder_path)
shutil.move(file_path,folder_path)
Das macht Spaß! Verwenden Sie Python, um Blumenarten zu identifizieren und sie automatisch zu organisieren und zu klassifizieren!Mit der Funktion get_fname() kapseln wir hier den Baidu-Bilderkennungscode im vorherigen Artikel in eine benutzerdefinierte Funktion Der Aufruf gibt den Blumennamen zurück, der dem Foto entspricht.

Der folgende Code ist fast derselbe wie die zuvor freigegebene automatische Klassifizierungsdatei. Das heißt, er bestimmt, ob der dem Blumennamen entsprechende Ordner bereits vorhanden ist, und erstellt ihn, wenn er nicht vorhanden ist. Rufen Sie abschließend das Shutil-Modul auf, um die Blumenfotos in den entsprechenden Ordner zu verschieben.

Der spezifische Ausführungseffekt wird in der Animation unten gezeigt.

Das obige ist der detaillierte Inhalt vonDas macht Spaß! Verwenden Sie Python, um Blumenarten zu identifizieren und sie automatisch zu organisieren und zu klassifizieren!. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:51cto.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen