ML Kit AutoML Vision Edge taşıma kılavuzu

AutoML ile eğitilmiş bir görüntü sınıflandırma modelini özel model API'lerine iletebilirsiniz. Modeli uygulamanıza dahil etmeye veya özel model olarak Firebase Konsolu'nda barındırmaya devam edebilirsiniz. AutoML görüntü etiketleme API'si, Özel Model Görüntü Etiketleme API'si tarafından tamamen değiştirildiği için ML Kit'ten kaldırıldı.

APINeler değişiyor?
AutoML Vision Edge görüntü etiketleme API'si Özel Model resim etiketleme API'si ile tamamen değiştirildi. Mevcut AutoML Vision Edge görüntü etiketleme API'si kaldırıldı.

Şu anda AutoML Vision Edge API'yi kullanan bir ML Kit kullanıcısıysanız lütfen Android ve iOS için taşıma talimatlarını uygulayın.

Sık Sorulan Sorular

Bu değişiklik neden yapıldı?

Makine Öğrenimi Kiti API'lerini basitleştirmeye ve Makine Öğrenimi Kiti'nin en iyi şekilde yararlanabilirsiniz. Bu değişiklikle birlikte, AutoML tarafından eğitilmiş bir modeli benzerdir. Ayrıca, AutoML tarafından eğitilmiş modelleri kullanmanızı sağlar. nesne Algılama ve İzleme'ye ek olarak şu anda desteklenmektedir. Ayrıca özel model API'si, hem meta verilerine yerleştirilmiş etiket haritasına sahip modelleri hem de ayrı manifest ve etiket dosyalarına sahip modelleri destekler.

Yeni SDK'ya geçişin avantajları nelerdir?

  • Yeni özellikler: Hem Görüntü Etiketleme hem de Nesne Algılama ve İzleme için AutoML tarafından eğitilmiş modelleri kullanma ve meta verilerine etiket haritası yerleştirilmiş modelleri kullanma olanağı.

Android için Taşıma Rehberi

1. Adım: Gradle içe aktarmalarını güncelleyin

Modülinizdeki ML Kit Android kitaplıkları için bağımlılıkları güncelleyin (uygulama düzeyinde) Gradle dosyası (genellikle app/build.gradle): tablo:

ÖzellikEski EserlerYeni yapı
Uzak model indirme olmadan AutoML ile görüntü etiketleme com.google.mlkit:image-labeling-automl:16.2.1 com.google.mlkit:image-labeling-custom:16.0.0-beta5
Uzak model indirilirken AutoML görüntü etiketleme com.google.mlkit:image-labeling-automl:16.2.1
com.google.mlkit:linkfirebase:16.0.1
com.google.mlkit:image-labeling-custom:16.0.0-beta5
com.google.mlkit:linkfirebase:17.0.0

2. Adım: Sınıf adlarını güncelleyin

Sınıfınız bu tabloda görünüyorsa belirtilen değişikliği yapın:

Eski sınıfYeni sınıf
com.google.mlkit.vision.label.automl.AutoMLImageLabelerLocalModel com.google.mlkit.common.model.LocalModel
com.google.mlkit.vision.label.automl.AutoMLImageLabelerRemoteModel com.google.mlkit.common.model.CustomRemoteModel
com.google.mlkit.vision.label.automl.AutoMLImageLabelerOptions com.google.mlkit.vision.label.custom.CustomImageLabelerOptions

3. Adım: Yöntem adlarını güncelleyin

Kodda çok az değişiklik var:

  • LocalModel artık bir model dosya yolu (modelde etiket eşlemesini içeren meta veriler varsa) veya model manifest dosyası yoluyla (manifest, model ve etiketler ayrı dosyalardaysa) başlatılabilir.
  • Özel modeli Firebase Konsolu aracılığıyla uzaktan barındırabilir ve FirebaseModelSource ile bir CustomRemoteModel başlatabilirsiniz.

Aşağıda, eski ve yeni Kotlin yöntemlerine ilişkin bazı örnekler verilmiştir:

Önceki

val localModel = AutoMLImageLabelerLocalModel.Builder()
    .setAssetFilePath("automl/manifest.json")
    // or .setAbsoluteFilePath(absolute file path to manifest file)
    .build()

val optionsWithLocalModel = AutoMLImageLabelerOptions.Builder(localModel)
    .setConfidenceThreshold(0.5f)
    .build()

val remoteModel = AutoMLImageLabelerRemoteModel.Builder("automl_remote_model")
    .build()

val optionsWithRemoteModel = AutoMLImageLabelerOptions.Builder(remoteModel)
    .build()

Yeni

val localModel = LocalModel.Builder()
    .setAssetManifestFilePath("automl/manifest.json")
    // or .setAbsoluteManifestFilePath(absolute file path to manifest file)
    .build()

val optionsWithLocalModel = CustomImageLabelerOptions.Builder(localModel)
    .setConfidenceThreshold(0.5f)
    .build()

val firebaseModelSource = FirebaseModelSource.Builder("automl_remote_model")
    .build()
val remoteModel = CustomRemoteModel.Builder(firebaseModelSource).build()
val optionsWithRemoteModel = CustomImageLabelerOptions.Builder(remoteModel)
    .build()

Eski ve yeni Java yöntemlerine dair bazı örnekleri aşağıda bulabilirsiniz:

Önceki

AutoMLImageLabelerLocalModel localModel =
    new AutoMLImageLabelerLocalModel.Builder()
        .setAssetFilePath("automl/manifest.json")
        // or .setAbsoluteFilePath(absolute file path to manifest file)
        .build();
AutoMLImageLabelerOptions optionsWithLocalModel =
    new AutoMLImageLabelerOptions.Builder(localModel)
        .setConfidenceThreshold(0.5f)
        .build();
AutoMLImageLabelerRemoteModel remoteModel =
    new AutoMLImageLabelerRemoteModel.Builder("automl_remote_model").build();
AutoMLImageLabelerOptions optionsWithRemoteModel =
    new AutoMLImageLabelerOptions.Builder(remoteModel)
        .build();

Yeni

LocalModel localModel =
    new LocalModel.Builder()
        .setAssetManifestFilePath("automl/manifest.json")
        // or .setAbsoluteManifestFilePath(absolute file path to manifest file)
        .build()
CustomImageLabelerOptions optionsWithLocalModel =
    new CustomImageLabelerOptions.Builder(localModel)
        .setConfidenceThreshold(0.5f)
        .build();
FirebaseModelSource firebaseModelSource =
    new FirebaseModelSource.Builder("automl_remote_model").build();
CustomRemoteModel remoteModel =
    new CustomRemoteModel.Builder(firebaseModelSource).build();
CustomImageLabelerOptions optionsWithRemoteModel =
    new CustomImageLabelerOptions.Builder(remoteModel).build();

iOS için Taşıma Rehberi

Ön koşullar

  • Xcode 13.2.1 veya daha yeni bir sürüm gerekir.

1. Adım: Cocoapods'u güncelleyin

Uygulamanızın Podfile dosyasında ML Kit iOS cocoapod'ları için bağımlılıkları güncelleyin:

ÖzellikEski kapsül adlarıYeni kapsül adları
Uzak model indirmeden AutoML görüntü etiketleme GoogleMLKit/ImageLabelingAutoML GoogleMLKit/ImageLabelingCustom
Uzak model indirme ile AutoML görüntü etiketleme GoogleMLKit/ImageLabelingAutoML
GoogleMLKit/LinkFirebase
GoogleMLKit/ImageLabelingCustom
GoogleMLKit/LinkFirebase

2. Adım: Sınıf adlarını güncelleyin

Sınıfınız bu tabloda görünüyorsa belirtilen değişikliği yapın:

Swift

Eski sınıfYeni sınıf
AutoMLImageLabelerLocalModel LocalModel
AutoMLImageLabelerRemoteModel CustomRemoteModel
AutoMLImageLabelerOptions CustomImageLabelerOptions

Objective-C

Eski sınıfYeni sınıf
MLKAutoMLImageLabelerLocalModel MLKLocalModel
MLKAutoMLImageLabelerRemoteModel MLKCustomRemoteModel
MLKAutoMLImageLabelerOptions MLKCustomImageLabelerOptions

Objective-C

3. Adım: Yöntem adlarını güncelleyin

Kodda çok az değişiklik var:

  • LocalModel artık bir model dosya yolu (modelde etiket eşlemesini içeren meta veriler varsa) veya model manifest dosyası yoluyla (manifest, model ve etiketler ayrı dosyalardaysa) başlatılabilir.
  • Firebase konsolu üzerinden özel bir modeli uzaktan barındırabilir ve CustomRemoteModel öğesini FirebaseModelSource ile başlatabilirsiniz.

Eski ve yeni Swift yöntemlerine dair bazı örnekleri aşağıda bulabilirsiniz:

Önceki

let localModel =
    AutoMLImageLabelerLocalModel(manifestPath: "automl/manifest.json")
let optionsWithLocalModel = AutoMLImageLabelerOptions(localModel: localModel)
let remoteModel = AutoMLImageLabelerRemoteModel(name: "automl_remote_model")
let optionsWithRemoteModel = AutoMLImageLabelerOptions(remoteModel: remoteModel)

Yeni

guard let localModel = LocalModel(manifestPath: "automl/manifest.json") else { return }
let optionsWithLocalModel = CustomImageLabelerOptions(localModel: localModel)
let firebaseModelSource = FirebaseModelSource(name: "automl_remote_model")
let remoteModel = CustomRemoteModel(remoteModelSource: firebaseModelSource)
let optionsWithRemoteModel = CustomImageLabelerOptions(remoteModel: remoteModel)

Aşağıda eski ve yeni Objective-C yöntemlerine ilişkin bazı örnekler verilmiştir:

Önceki

MLKAutoMLImageLabelerLocalModel *localModel =
    [[MLKAutoMLImageLabelerLocalModel alloc]
        initWithManifestPath:"automl/manifest.json"];
MLKAutoMLImageLabelerOptions *optionsWithLocalModel =
    [[MLKAutoMLImageLabelerOptions alloc] initWithLocalModel:localModel];
MLKAutoMLImageLabelerRemoteModel *remoteModel =
    [[MLKAutoMLImageLabelerRemoteModel alloc]
        initWithManifestPath:"automl/manifest.json"];
MLKAutoMLImageLabelerOptions *optionsWithRemoteModel =
    [[MLKAutoMLImageLabelerOptions alloc] initWithRemoteModel:remoteModel];

Yeni

MLKLocalModel *localModel =
    [[MLKLocalModel alloc] initWithManifestPath:"automl/manifest.json"];
MLKCustomImageLabelerOptions *optionsWithLocalModel =
    [[MLKCustomImageLabelerOptions alloc] initWithLocalModel:localModel];
MLKFirebaseModelSource *firebaseModelSource =
    [[MLKFirebaseModelSource alloc] initWithName:@"automl_remote_model"];
MLKCustomRemoteModel *remoteModel =
    [[MLKCustomRemoteModel alloc] initWithRemoteModelSource:firebaseModelSource];
MLKCustomImageLabelerOptions *optionsWithRemoteModel =
    [[MLKCustomImageLabelerOptions alloc] initWithRemoteModel:remoteModel];