影像分割器

[原始碼]

ImageSegmenter 類別

keras_hub.models.ImageSegmenter(*args, compile=True, **kwargs)

所有影像分割任務的基礎類別。

ImageSegmenter 任務封裝了 keras_hub.models.Taskkeras_hub.models.Preprocessor,以建立可用於影像分割的模型。

所有 ImageSegmenter 任務都包含 from_preset() 建構子,可用於載入預訓練的配置和權重。


[原始碼]

from_preset 方法

ImageSegmenter.from_preset(preset, load_weights=True, **kwargs)

從模型預設實例化 keras_hub.models.Task

預設是一個包含配置、權重和其他檔案資產的目錄,用於儲存和載入預訓練模型。 preset 可以作為以下其中之一傳遞

  1. 內建預設識別符,例如 'bert_base_en'
  2. Kaggle Models 句柄,例如 'kaggle://user/bert/keras/bert_base_en'
  3. Hugging Face 句柄,例如 'hf://user/bert_base_en'
  4. 本地預設目錄的路徑,例如 './bert_base_en'

對於任何 Task 子類別,您可以執行 cls.presets.keys() 來列出該類別上所有可用的內建預設。

此建構子可以透過兩種方式呼叫。 從任務特定的基礎類別(如 keras_hub.models.CausalLM.from_preset())呼叫,或從模型類別(如 keras_hub.models.BertTextClassifier.from_preset())呼叫。 如果從基礎類別呼叫,則傳回物件的子類別將從預設目錄中的配置中推斷出來。

引數

  • preset:字串。 內建預設識別符、Kaggle Models 句柄、Hugging Face 句柄或本地目錄的路徑。
  • load_weights:布林值。 如果為 True,則儲存的權重將載入到模型架構中。 如果為 False,則所有權重將隨機初始化。

範例

# Load a Gemma generative task.
causal_lm = keras_hub.models.CausalLM.from_preset(
    "gemma_2b_en",
)

# Load a Bert classification task.
model = keras_hub.models.TextClassifier.from_preset(
    "bert_base_en",
    num_classes=2,
)
預設 參數 描述
basnet_duts 108.89M 具有 34 層 ResNet 主幹的 BASNet 模型,在 288x288 解析度的 DUTS 影像資料集上進行預訓練。 模型訓練由 Hamid Ali 執行 (https://github.com/hamidriasat/BASNet)。
deeplab_v3_plus_resnet50_pascalvoc 39.19M DeepLabV3+ 模型,以 ResNet50 作為影像編碼器,並在 Semantic Boundaries Dataset (SBD) 擴增的 Pascal VOC 資料集上進行訓練,其類別準確度為 90.01,平均 IoU 為 0.63。
sam_base_sa1b 93.74M 在 SA1B 資料集上訓練的基礎 SAM 模型。
sam_huge_sa1b 312.34M 在 SA1B 資料集上訓練的巨大 SAM 模型。
sam_large_sa1b 641.09M 在 SA1B 資料集上訓練的大型 SAM 模型。
segformer_b0_ade20k_512 3.72M SegFormer 模型,具有 MiTB0 主幹,在 512x512 解析度的 ADE20k 上進行微調。
segformer_b0_cityscapes_1024 3.72M SegFormer 模型,具有 MiTB0 主幹,在 1024x1024 解析度的 Cityscapes 上進行微調。
segformer_b1_ade20k_512 13.68M SegFormer 模型,具有 MiTB1 主幹,在 512x512 解析度的 ADE20k 上進行微調。
segformer_b1_cityscapes_1024 13.68M SegFormer 模型,具有 MiTB1 主幹,在 1024x1024 解析度的 Cityscapes 上進行微調。
segformer_b2_ade20k_512 24.73M SegFormer 模型,具有 MiTB2 主幹,在 512x512 解析度的 ADE20k 上進行微調。
segformer_b2_cityscapes_1024 24.73M SegFormer 模型,具有 MiTB2 主幹,在 1024x1024 解析度的 Cityscapes 上進行微調。
segformer_b3_ade20k_512 44.60M SegFormer 模型,具有 MiTB3 主幹,在 512x512 解析度的 ADE20k 上進行微調。
segformer_b3_cityscapes_1024 44.60M SegFormer 模型,具有 MiTB3 主幹,在 1024x1024 解析度的 Cityscapes 上進行微調。
segformer_b4_ade20k_512 61.37M SegFormer 模型,具有 MiTB4 主幹,在 512x512 解析度的 ADE20k 上進行微調。
segformer_b4_cityscapes_1024 61.37M SegFormer 模型,具有 MiTB4 主幹,在 1024x1024 解析度的 Cityscapes 上進行微調。
segformer_b5_ade20k_640 81.97M SegFormer 模型,具有 MiTB5 主幹,在 640x640 解析度的 ADE20k 上進行微調。
segformer_b5_cityscapes_1024 81.97M SegFormer 模型,具有 MiTB5 主幹,在 1024x1024 解析度的 Cityscapes 上進行微調。

[原始碼]

compile 方法

ImageSegmenter.compile(optimizer="auto", loss="auto", metrics="auto", **kwargs)

配置 ImageSegmenter 任務以進行訓練。

ImageSegmenter 任務擴展了 keras.Model.compile 的預設編譯簽章,並包含 optimizerlossmetrics 的預設值。 若要覆寫這些預設值,請在編譯期間將任何值傳遞給這些引數。

引數

  • optimizer"auto"、最佳化器名稱或 keras.Optimizer 實例。 預設為 "auto",它會針對給定的模型和任務使用預設最佳化器。 請參閱 keras.Model.compilekeras.optimizers 以取得有關可能的 optimizer 值的更多資訊。
  • loss"auto"、損失名稱或 keras.losses.Loss 實例。 預設為 "auto",其中 keras.losses.SparseCategoricalCrossentropy 損失將應用於分類任務。 請參閱 keras.Model.compilekeras.losses 以取得有關可能的 loss 值的更多資訊。
  • metrics"auto" 或要在訓練和測試期間由模型評估的指標列表。 預設為 "auto",其中 keras.metrics.SparseCategoricalAccuracy 將應用於追蹤模型在訓練期間的準確度。 請參閱 keras.Model.compilekeras.metrics 以取得有關可能的 metrics 值的更多資訊。
  • **kwargs:請參閱 keras.Model.compile 以取得 compile 方法支援的完整引數列表。

[原始碼]

save_to_preset 方法

ImageSegmenter.save_to_preset(preset_dir)

將任務儲存到預設目錄。

引數

  • preset_dir:本地模型預設目錄的路徑。

preprocessor 屬性

keras_hub.models.ImageSegmenter.preprocessor

用於預處理輸入的 keras_hub.models.Preprocessor 層。


backbone 屬性

keras_hub.models.ImageSegmenter.backbone

具有核心架構的 keras_hub.models.Backbone 模型。