精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

使用 Teachable Machine 構建圖像識別模型

開發 后端 機器學習
在本文中,我探索了 Teachable Machine,這是 Google 提供的一款基于網頁的工具,使用戶無需編程技能即可創建機器學習模型。

Teachable Machine 是由 Google 開發的一款基于網頁的工具,允許任何人在不需要深入了解編程或機器學習的情況下創建機器學習模型。它的設計易于使用且用戶友好,適合初學者、教育工作者,甚至是想要探索人工智能概念的孩子們。

Teachable Machine 支持的模型

Teachable Machine 支持以下機器學習模型:

  • 圖像分類 — 識別圖像中的物體
  • 音頻分類 — 識別聲音、語音或其他音頻輸入
  • 姿態分類 — 識別人體姿態或動作

要訓練模型,您需要為 Teachable Machine 提供自己的數據集,例如圖像或錄音。基于這些數據,Teachable Machine 會自動訓練模型。

模型訓練完成后,您可以直接在 Teachable Machine 的網頁界面中進行測試。此外,您還可以選擇下載訓練好的模型,并將其集成到自己的應用程序中以供編程使用。訓練好的模型可以用于各種類型的應用程序,包括:

  • 網頁應用程序(通過 TensorFlow.js)
  • 基于 Python 的桌面應用程序(通過 TensorFlow)
  • 移動應用程序(通過 TensorFlow Lite)

開始使用

要開始使用 Teachable Machine,請訪問 https://teachablemachine.withgoogle.com/。您將看到以下界面:

點擊Get Started按鈕,您將看到以下屏幕:

在本文中,我將使用 Teachable Machine 訓練一個模型來識別水果。具體來說,我的模型將幫助我們區分香蕉和草莓。選擇Image Project,您將看到以下界面:

選擇Standard image model項目,您將看到以下屏幕:

定義類別

在任何分類任務中,第一步是定義您想要識別的類別。在本例中,我們將專注于區分香蕉和草莓的圖像,創建兩個類別:**Banana** 和 **Strawberry**。要設置此內容,只需雙擊默認標簽“Class 1”和“Class 2”,并將它們重命名為您的類別:

請注意,您可以通過點擊屏幕底部的 **Add a class** 按鈕來創建更多類別:

為每個類別上傳圖像

定義類別后,下一步是為每個類別添加圖像。您可以直接使用網絡攝像頭拍攝圖像,或者為了方便起見,上傳現有的圖像。

點擊Upload按鈕:

您可以將幾張圖像拖放到下面的框中:

在我的示例中,我已經將一系列圖像拖放到兩個類別中:

訓練模型

為每個類別添加圖像后,就可以開始訓練模型了。點擊 **Train Model** 按鈕:

模型訓練完成后,您應該能夠看到類似以下內容:

測試模型

打開Input選項,您應該能夠通過直接將圖像拖放到下面的框中來測試模型:

在上面的示例中,模型以 100% 的置信度檢測到圖像是草莓。您還可以使用網絡攝像頭測試模型。例如,在下圖中,我使用手機顯示了一串香蕉的圖片,模型準確地預測為“Banana”:

導出模型

雖然在網頁上直接測試模型很方便,但將其集成到自己的應用程序中則更具吸引力。幸運的是,您可以將訓練好的模型導出為獨立文件,從而在應用程序中以編程方式使用它。要導出模型,請點擊Export Model按鈕:

模型可以導出為:

  • TensorFlow.js(用于網頁應用程序)
  • TensorFlow(用于基于 Python 的應用程序)
  • TensorFlow Lite(用于移動應用程序)

選擇您想要的模型類型,然后點擊 **Download my model** 按鈕。在本例中,我將下載 TensorFlow 模型。一個名為 `converted_keras.zip` 的文件將被下載。解壓縮該文件,您將看到其中包含兩個文件:

  • keras_model.h5 — 訓練好的模型
  • labels.txt — 包含類別列表的文件,例如 Banana 和 Strawberry

Teachable Machine 還提供了如何使用訓練好的模型進行編程的示例代碼。我們將在下一節中介紹這一點。

使用 Python 使用導出的模型

訓練好的模型導出并下載后,現在是時候看看如何在 Python 應用程序中使用它了。在嘗試之前,請注意以下幾點:

  • Teachable Machine 生成的示例代碼基于較舊版本的 TensorFlow。因此,您需要確保您的機器使用較舊版本的 TensorFlow。
  • 由于使用了較舊版本的 TensorFlow,您還需要將 Python 的版本限制為較早的版本。

嘗試示例代碼的最佳方法是創建一個虛擬環境。您可以通過運行以下命令來創建名為 `tf_old` 的虛擬環境,使用 Python 3.11 并安裝必要的 Anaconda 包:

$ conda create -n tf_old python=3.11 anaconda

虛擬環境創建完成后,激活它并啟動 Jupyter Notebook:

$ conda activate tf_old
$ jupyter notebook

Jupyter Notebook 啟動后,您可以創建一個新的筆記本并開始編寫代碼。確保 `keras_model.h5` 和 `labels.txt` 文件與您的 Jupyter Notebook 位于同一文件夾中。

首先,如前所述,您需要安裝較舊版本的 TensorFlow。在我的測試中,TensorFlow 2.13.0 版本與 Python 3.11 中的示例代碼兼容。為此,請使用以下命令安裝 TensorFlow 和 Pillow 包:

!pip install tensorflow==2.13.0 
!pip install pillow

現在,您可以使用以下代碼片段加載訓練好的模型并加載名為 `fruit1.jpg` 的測試圖像:

from keras.models import load_model  # TensorFlow 是 Keras 工作的基礎
from PIL import Image, ImageOps      # 安裝 pillow 而不是 PIL
import numpy as np


# 禁用科學計數法以提高可讀性
np.set_printoptions(suppress=True)


# 加載模型
model = load_model("keras_Model.h5", compile=False)


# 加載標簽
class_names = open("labels.txt", "r").readlines()


# 創建形狀正確的數組以輸入到 Keras 模型中
# 數組中可以放入的圖像數量由形狀元組中的第一個位置決定,本例中為 1
data = np.ndarray(shape=(1, 224, 224, 3), dtype=np.float32)


# 將此路徑替換為您的圖像路徑
image = Image.open("fruit1.jpg").convert("RGB")


# 將圖像調整為至少 224x224,然后從中心裁剪
size = (224, 224)
image = ImageOps.fit(image, size, Image.Resampling.LANCZOS)


# 將圖像轉換為 numpy 數組
image_array = np.asarray(image)


# 歸一化圖像
normalized_image_array = (image_array.astype(np.float32) / 127.5) - 1


# 將圖像加載到數組中
data[0] = normalized_image_array


# 模型預測
prediction = model.predict(data)
index = np.argmax(prediction)
class_name = class_names[index]
confidence_score = prediction[0][index]


# 打印預測結果和置信度分數
print("Class:", class_name[2:], end="")
print("Confidence Score:", confidence_score)

`fruit1.jpg` 的輸出如下:

1/1 [==============================] - 0s 485ms/step
Class: Strawberry
Confidence Score: 0.9998473

如果您遇到以下錯誤:

TypeError: Error when deserializing class 'DepthwiseConv2D' using config={'name': 'expanded_conv_depthwise', 'trainable': True, 'dtype': 'float32', 'kernel_size': [3, 3], 'strides': [1, 1], 'padding': 'same', 'data_format': 'channels_last', 'dilation_rate': [1, 1], 'groups': 1, 'activation': 'linear', 'use_bias': False, 'bias_initializer': {'class_name': 'Zeros', 'config': {}}, 'bias_regularizer': None, 'activity_regularizer': None, 'bias_constraint': None, 'depth_multiplier': 1, 'depthwise_initializer': {'class_name': 'VarianceScaling', 'config': {'scale': 1, 'mode': 'fan_avg', 'distribution': 'uniform', 'seed': None}}, 'depthwise_regularizer': None, 'depthwise_constraint': None}.
Exception encountered: Unrecognized keyword arguments passed to DepthwiseConv2D: {'groups': 1}

這很可能意味著您正在使用較新版本的 TensorFlow,該版本與示例代碼不兼容。

構建網頁前端

與其每次測試新圖像時都修改代碼,不如通過使用 Gradio 包裝代碼來簡化流程。Gradio 提供了一個直觀的基于網頁的界面,允許用戶上傳圖像并查看預測結果,而無需修改底層代碼。首先,安裝 Gradio 包:

!pip install gradio

以下代碼片段使用 Gradio 創建了一個網頁前端,允許用戶上傳圖像并實時從訓練好的模型中獲取預測結果。該界面使用戶能夠輕松地與模型交互,而無需手動修改或運行代碼:

import gradio as gr
from keras.models import load_model  # TensorFlow 是 Keras 工作的基礎
from PIL import Image, ImageOps      # 安裝 pillow 而不是 PIL
import numpy as np


# 加載模型
model = load_model("keras_Model.h5", compile=False)


# 加載標簽
class_names = open("labels.txt", "r").readlines()


# 定義預測函數
def classify_image(image):
    # 將圖像調整為 224x224 并歸一化
    size = (224, 224)
    image = ImageOps.fit(image, size, Image.Resampling.LANCZOS).convert("RGB")
    image_array = np.asarray(image)
    normalized_image_array = (image_array.astype(np.float32) / 127.5) - 1
    data = np.ndarray(shape=(1, 224, 224, 3), dtype=np.float32)
    data[0] = normalized_image_array


    # 使用模型進行預測
    prediction = model.predict(data)
    index = np.argmax(prediction)
    class_name = class_names[index].strip()  # 去除任何尾隨空格或換行符
    confidence_score = prediction[0][index]    
    return f"{class_name}, Confidence Score: {float(confidence_score)}"


# 創建 Gradio 界面
interface = gr.Interface(
    fn = classify_image,
    inputs = gr.Image(type="pil"),     # 接受圖像作為輸入
    outputs = [
        gr.Label(label="Prediction"),  # 類別名稱和置信度分數作為標簽輸出
    ],
    title = "Image Classifier",
    description = "上傳圖像,模型將將其分類為預定義的類別之一。"
)


# 啟動 Gradio 應用程序
interface.launch()

運行代碼后,您將看到以下界面:

將草莓圖像拖放到左側的框中,然后點擊 **Submit** 按鈕。您將在右側看到結果:

總結

在本文中,我探索了 Teachable Machine,這是 Google 提供的一款基于網頁的工具,使用戶無需編程技能即可創建機器學習模型。我介紹了該工具,并解釋了如何為區分香蕉和草莓圖像等任務定義類別。我演示了如何為這些類別添加圖像、測試模型并將其導出以集成到自定義應用程序中。此外,我還展示了如何使用 Gradio 創建一個簡單的網頁界面,允許使用導出的模型進行實時預測。

責任編輯:趙寧寧 來源: 小白玩轉Python
相關推薦

2022-10-20 09:33:35

2021-04-09 20:49:44

PythonOCR圖像

2024-06-18 08:16:49

2022-10-11 23:35:28

神經網絡VGGNetAlexNet

2023-11-24 09:26:29

Java圖像

2022-10-19 07:42:41

圖像識別神經網絡

2016-12-01 14:23:32

iosandroid

2023-11-30 09:55:27

鴻蒙鄰分類器

2018-04-24 10:45:00

Python人工智能圖像識別

2019-06-10 00:45:01

谷歌開源圖像識別

2020-09-14 14:10:04

開發技能代碼

2022-09-09 14:42:17

應用開發ETS

2017-09-08 13:30:32

深度學習圖像識別卷積神經網絡

2023-09-25 10:13:59

Java識別

2024-11-11 07:00:00

Python圖像識別

2015-12-03 16:01:18

Google人像識別API

2014-01-14 17:43:37

NEC圖像識別

2024-06-07 11:24:20

2017-11-06 16:50:38

人工智能圖像識別數據邏輯

2022-02-25 11:07:19

計算機圖像識別深度學習
點贊
收藏

51CTO技術棧公眾號

国内精品自线一区二区三区视频| 成人动漫视频在线观看| 99久久综合狠狠综合久久| 成人91免费视频| 成人免费播放器| 五月婷婷深深爱| 日韩黄色免费电影| 精品精品国产国产自在线| 一级片黄色免费| 男人av在线播放| 中文字幕不卡在线| 国产91亚洲精品一区二区三区| 国产成人无码精品久在线观看| 欧美亚洲精品在线| 日韩欧美高清dvd碟片| 免费黄色日本网站| 久草资源在线| 92国产精品观看| 成人激情电影一区二区| 日韩毛片在线播放| 日韩精品1区| 亚洲国产三级网| 成年人三级黄色片| 麻豆mv在线看| 亚洲欧美国产高清| 日本在线成人一区二区| 国产理论片在线观看| 99亚洲一区二区| 久久精品久久精品亚洲人| 欧美深性狂猛ⅹxxx深喉| 国产国产一区| 福利微拍一区二区| 五月天激情图片| freemovies性欧美| 91一区二区三区在线观看| 91香蕉嫩草影院入口| 国产午夜无码视频在线观看| 亚洲小说区图片区| 久久久国产视频| 娇妻被老王脔到高潮失禁视频| 超碰在线亚洲| 欧美一区二区不卡视频| 99视频在线视频| 欧美成人性网| 欧美午夜精品在线| 隔壁人妻偷人bd中字| 麻豆视频在线| 中文av一区特黄| 欧美精品国产精品久久久| 色偷偷在线观看| 国产精品2024| 91成人在线看| 亚洲av色香蕉一区二区三区| 狠狠色狠狠色综合系列| 国产免费成人av| 中文字幕免费视频观看| 久久精品官网| 国产成人av网| 无码人妻黑人中文字幕| 欧美亚洲在线| 日本高清不卡的在线| 可以在线观看av的网站| 国产欧美另类| 日韩av不卡在线| 人妻丰满熟妇av无码区| 亚洲欧美视频| 日韩av电影手机在线| 亚洲s码欧洲m码国产av| 久久激情久久| 国产精品视频99| 中文字幕+乱码+中文字幕明步| 日韩av二区在线播放| 国产精品电影一区| 中文字幕激情视频| 九九**精品视频免费播放| 国产精品永久免费观看| 国产精品久久久久久免费| 国产一区在线精品| av成人观看| 天堂中文在线看| 久久久精品国产免大香伊| 欧美12av| 欧美极品视频| 一区二区三区.www| 欧美日韩在线一| 国产韩日精品| 91精品在线一区二区| 性生活一级大片| 精品视频自拍| 亚洲最新在线视频| 欧美成人一二三区| 久久高清国产| 成人字幕网zmw| 欧美 日韩 国产 成人 在线| 国产亚洲精品资源在线26u| 亚洲免费视频一区| 欧美亚洲系列| 欧美亚洲动漫制服丝袜| 超碰人人cao| 亚洲图片久久| 精品中文字幕在线观看| 91午夜视频在线观看| 蜜桃av一区二区| 国产精品久久久久久久久久直播 | 精品视频二区| 中文字幕亚洲综合久久菠萝蜜| 国产在线xxxx| 久久久加勒比| 亚洲精品v天堂中文字幕 | 精品国产一区二区三区| 美日韩精品免费视频| 日韩精品一区二区不卡| 黑人巨大精品欧美一区| 久久国产主播精品| 色av手机在线| 在线免费观看日本一区| 美国黄色一级视频| 久久精品av| 2019中文字幕在线观看| aa视频在线免费观看| 国产午夜精品理论片a级大结局| 日本一二三区视频在线| 国产另类xxxxhd高清| 精品99一区二区| 国产免费一区二区三区四区| 蜜桃av一区| 国产亚洲欧美一区二区三区| 国产激情在线| 欧美性受xxxx黑人xyx| 一级做a爰片毛片| 午夜欧美视频| 91九色国产社区在线观看| 国产一区二区三区福利| 福利视频第一区| 黄色免费看视频| 欧美另类视频| 亚洲最大av在线| 麻豆传媒免费在线观看| 在线观看免费视频综合| 久久精品国产亚洲AV熟女| 亚洲片区在线| 黑人巨大精品欧美一区二区小视频| fc2ppv国产精品久久| 欧美区在线观看| 国产极品视频在线观看| 日本亚洲欧美天堂免费| 日产精品高清视频免费| 欧美大胆性生话| 亚洲精品在线看| 天堂中文字幕在线观看| 91在线播放网址| 性欧美大战久久久久久久| 97精品久久| 欧美精品久久久久a| 亚洲国产成人一区二区| 亚洲一区二区精品视频| 中文字幕人妻一区| 亚洲大片在线| 久久综合色一本| 亚洲淫成人影院| 日韩精品中文字幕在线播放| www日韩精品| 久久久亚洲高清| www.天天射.com| 色综合天天爱| 999热视频| 欧美xxxbbb| 亚洲成人激情在线| 日韩中文字幕在线观看视频| 久久精品一区蜜桃臀影院| 亚洲精品tv| 精品久久久久久| 免费看黄色片的网站| 欧美在线亚洲| 9a蜜桃久久久久久免费| 国产h片在线观看| 亚洲男人第一av网站| 欧美黄色一级大片| 国产精品久久久久久亚洲毛片| 手机免费av片| 国内精品久久久久久久97牛牛| 国产伦理一区二区三区| 国产一区二区三区视频| 18啪啪污污免费网站| 麻豆精品视频在线| 一区二区不卡在线观看| 视频欧美精品| 综合久久久久久| 亚洲小视频网站| 综合视频在线| 国产伦视频一区二区三区| 中文字幕在线视频久| 国产亚洲精品久久久久久牛牛| 中文字幕1区2区3区| 亚洲欧美福利一区二区| 中文字幕精品视频在线| 久久精选视频| 中文网丁香综合网| 盗摄牛牛av影视一区二区| 欧美性做爰毛片| 香港伦理在线| 欧美老女人性生活视频| 91嫩草亚洲精品| 97中文在线| 成人私拍视频| 久久亚洲精品视频| 香港一级纯黄大片| 欧美日韩高清一区二区不卡| 久久久久久久中文字幕| 久久久精品蜜桃| 精品人妻无码中文字幕18禁| 久久九九99| 无码人妻少妇伦在线电影| 欧美日韩在线播放视频| 国产精品成人一区二区三区| 精品裸体bbb| 亚洲**2019国产| 黄色网址在线免费| 亚洲欧美综合另类中字| 亚洲爆乳无码一区二区三区| 欧美色视频在线观看| 国产无遮挡又黄又爽在线观看| 国产日韩欧美亚洲| 日本五十肥熟交尾| 国产精品综合视频| 爱情岛论坛亚洲首页入口章节| 在线观看日韩av电影| 天天干天天色天天爽| 国产成人三级| 国外成人免费视频| 亚洲综合影院| 91手机视频在线观看| jizz久久久久久| 国产成人精品久久久| 国产美女情趣调教h一区二区| 日韩一二三在线视频播| 北岛玲一区二区三区| 国产视频精品自拍| 人成网站在线观看| 日韩欧美一区二区在线视频| 亚洲系列在线观看| 欧美嫩在线观看| 中文字幕免费在线看| 色女孩综合影院| 亚洲综合久久网| 欧美午夜久久久| 亚洲va在线观看| 欧美性xxxxhd| 中文字幕第四页| 精品国产精品自拍| 99精品视频99| 一本大道久久a久久综合| 波多野结衣国产| 欧美性精品220| 久久精品国产成人av| 精品久久香蕉国产线看观看gif| 日韩xxx高潮hd| 五月天国产精品| www.国产com| 欧美午夜xxx| 无码人妻精品一区二区| 欧美亚洲高清一区| 国产区精品在线| 日韩欧美高清在线| 日本高清视频在线| 亚洲另类图片色| 九九热视频在线观看| 一区二区三区 在线观看视| 91麻豆精品国产91久久久| 精品日韩电影| 欧美18免费视频| 久久99精品久久久久久秒播放器| 国产香蕉精品| 欧美一区1区三区3区公司| 欧美精品一区二区三区中文字幕| 日本一区二区三区免费观看| 欧美日韩中文一区二区| 亚洲亚洲精品三区日韩精品在线视频| 日韩国产一区二区三区| av动漫在线免费观看| 亚洲激情偷拍| 亚洲性生活网站| 韩国精品一区二区| 动漫美女无遮挡免费| 91视频国产资源| 婷婷丁香综合网| 亚洲精品国产一区二区精华液 | 高清不卡在线观看av| 日韩精品一区二区三区高清免费| 久久伊人中文字幕| 精品一区二区6| 亚洲最色的网站| 精品一区二三区| 日韩美女视频在线| 美女毛片在线看| 欧美精品在线播放| 日韩av影片| 91久久久久久久久久| 欧美在线导航| 公共露出暴露狂另类av| 99热免费精品| www.cao超碰| 26uuu精品一区二区三区四区在线| 欧美xxxx精品| 岛国av在线不卡| 国产精品久久久久久免费播放| 日韩成人在线网站| gogogogo高清视频在线| 日韩美女视频免费在线观看| 欧美.com| 亚洲高清不卡一区| 99成人在线| 亚洲成人av免费观看| 国产欧美一区二区精品性 | 欧美性videos高清精品| 精品国产伦一区二区三区| 亚洲精品一区在线观看香蕉 | 97人人爽人人喊人人模波多| 外国成人毛片| 欧美一区亚洲二区| 91久久在线| 无码国产精品一区二区高潮| 国产午夜精品一区二区三区视频| 国产成人在线免费观看视频| 日韩情涩欧美日韩视频| 亚洲麻豆精品| 国产成人精品久久久| 无码日韩精品一区二区免费| 国产欧美精品aaaaaa片| 精品一区二区三区欧美| 69视频在线观看免费| 欧美日韩国产中文字幕 | 久久99精品国产.久久久久久| 熟女俱乐部一区二区| 午夜精品免费在线观看| 精品免费久久久| 久久精品国产99国产精品澳门| 日韩一区二区三区在线免费观看| 免费久久99精品国产自| 亚洲精选91| www.四虎在线| 亚洲一区二区五区| 国产国语亲子伦亲子| 久久福利视频导航| 伊人久久大香| 成年人黄色在线观看| 蜜桃视频一区二区| 特级西西人体高清大胆| 在线影视一区二区三区| 久久这里精品| 国产精品久久久久久久久久久久久 | 午夜精品福利久久久| 亚洲经典一区二区| 欧美黄色片免费观看| 97久久亚洲| 欧美综合在线播放| 91日韩一区二区三区| 精品人妻一区二区色欲产成人| 亚洲精选在线观看| 欧美性xxx| 日韩精品欧美专区| 麻豆专区一区二区三区四区五区| 丰满的亚洲女人毛茸茸| 欧美亚洲动漫制服丝袜| 免费在线观看黄色网| 亚洲a∨日韩av高清在线观看| 雨宫琴音一区二区三区| 国产在线a视频| 天天综合网天天综合色| 欧洲成人av| 国产精品老女人精品视频| 99国产精品免费视频观看| 下面一进一出好爽视频| 亚洲电影一级黄| 男人的天堂在线| 国产日韩换脸av一区在线观看| 天天射成人网| 五月天丁香社区| 色哟哟日韩精品| 国产精品扒开做爽爽爽的视频| 国产aⅴ精品一区二区三区黄| 一区二区三区四区五区在线 | 国产精品国产三级国产普通话99| 国产特级aaaaaa大片| 韩剧1988免费观看全集| 国产精品免费大片| 亚洲三级在线观看视频| 亚洲一卡二卡三卡四卡无卡久久 | 最好看的2019年中文视频| 日本一区二区三区播放| 北条麻妃在线视频观看| 国产日韩欧美a| 精品人妻一区二区三区换脸明星| 91精品国产高清久久久久久久久| 国产亚洲电影| 能看毛片的网站| 91国内精品野花午夜精品 | 自拍偷拍一区| 亚洲一二三av| 欧美日韩中文在线|