91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python怎么實現識別花卉種類

發布時間:2022-04-08 13:46:31 來源:億速云 閱讀:192 作者:iii 欄目:開發技術

今天小編給大家分享一下Python怎么實現識別花卉種類的相關知識點,內容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。

由于對很多花不是特別熟悉,所以我們需要借助軟件來識別究竟是什么花的種類。市面上的識花軟件有很多,比如花伴侶、形色、百度等等,我測試后發現百度的識別效果最為優秀。于是我就有了一個想法,能不能批量調用百度的接口,對花卉照片進行識別并分類呢?

Python怎么實現識別花卉種類

百度圖像識別

百度的圖像識別接口,可以精準識別超過十萬種物體和場景,包含10余項高精度的識圖能力并提供相應的API服務。

https://cloud.baidu.com/product/imagerecognition

Python怎么實現識別花卉種類

我們按照步驟創建新應用,并得到專屬自己的API Key和Secret Key,具體如下圖所示。

Python怎么實現識別花卉種類

圖像識別提供一個組合API接口,支持多種垂類識別服務的靈活組合調用,這里只需要調用植物識別就可以滿足需求。

如何Python調用百度圖像識別API接口?

第一步,調用鑒權接口獲取token。

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)

第二步,識別圖像種類

Python怎么實現識別花卉種類

在交互式環境中輸入如下命令:

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'])

輸出:

櫻花

調用百度圖像識別接口的返回參數如下圖所示,對我們來說,只需要其中的name(植物名稱)參數。

Python怎么實現識別花卉種類

讀取照片文件

我將拍攝的照片存放在D:\下載\花卉合集路徑下,所以需要使用os模塊進行讀取文件列表,方便進行后續的批量操作。

在交互式環境中輸入如下命令:

import os
path = "D:\下載\花卉合集"

filenames = os.listdir(path)
filenames

輸出:

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

os模塊中的listdir()?法,接收?個路徑參數path,返回的是該路徑下所有?件的?件名組成的列表。這樣,我們就獲取了該路徑下所有的花卉圖片文件名,如下圖所示。

Python怎么實現識別花卉種類

整理分類照片

接著,我們便可以使用for循環語句,依次對花卉照片進行圖像識別,并按照識別出的名稱進行分類整理到對應的文件夾中。

在交互式環境中輸入如下命令:

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)

其中get_fname()函數,是我們將前文中百度圖像識別代碼封裝為一個自定義函數,此處調用即可返回得到照片對應的花卉名稱flower_name

后續的代碼與之前分享過的自動分類整理文件幾乎一致,即if判斷是否已經存在對應花卉名稱的文件夾,若不存在則創建。最后,調用shutil模塊移動花卉照片至對應文件夾。

具體執行效果,如下方動圖所示。

Python怎么實現識別花卉種類

以上就是“Python怎么實現識別花卉種類”這篇文章的所有內容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

南开区| 白山市| 张家港市| 紫云| 萨迦县| 斗六市| 夹江县| 叶城县| 深水埗区| 吉首市| 晋宁县| 遵义县| 东山县| 台北市| 五台县| 武隆县| 永嘉县| 汕尾市| 青海省| 扎鲁特旗| 罗江县| 武威市| 武强县| 五河县| 都匀市| 革吉县| 贡嘎县| 屯昌县| 博客| 通州区| 牡丹江市| 七台河市| 广昌县| 宝兴县| 建德市| 黔南| 三门县| 宕昌县| 马山县| 高台县| 永安市|