Imagen ile dış boyama özelliğini kullanarak resim içeriğini genişletme


Bu sayfada, Imagen kullanarak outpainting'in nasıl kullanılacağı açıklanmaktadır. Firebase AI Logic SDK'ları kullanılarak bir resmin içeriği orijinal sınırlarının ötesine genişletilir.

Dışa boyama, bir tür maske tabanlı düzenlemedir. Maske, düzenlemek istediğiniz belirli alanı tanımlayan dijital bir kaplamadır.

İşleyiş şekli: Orijinal bir resim ve yeni, genişletilmiş alanın maskesini tanımlayan, otomatik olarak oluşturulmuş veya sizin tarafınızdan sağlanmış, karşılık gelen bir maskeli resim gönderirsiniz. İsteğe bağlı olarak, genişletilmiş alanda istediğiniz öğeyi açıklayan bir metin istemi de girebilirsiniz. Alternatif olarak, model mevcut sahneyi mantıksal olarak devam ettirecek öğeye akıllıca karar verebilir. Model, yeni içeriği oluşturur ve maskelenmiş alanı doldurur.

Örneğin, bir resmin en-boy oranını değiştirebilir veya daha fazla arka plan bağlamı ekleyebilirsiniz.

Koda atla

Başlamadan önce

Yalnızca Vertex AI Gemini API API sağlayıcısı olarak kullanılırken kullanılabilir.

Henüz yapmadıysanız başlangıç kılavuzunu tamamlayın. Bu kılavuzda Firebase projenizi ayarlama, uygulamanızı Firebase'e bağlama, SDK'yı ekleme, seçtiğiniz API sağlayıcısı için arka uç hizmetini başlatma ve ImagenModel örneği oluşturma hakkında bilgiler yer alır.

Bu özelliği destekleyen modeller

Imagen, capability modeli aracılığıyla görüntü düzenleme hizmeti sunar:

  • imagen-3.0-capability-001

Imagen modellerinde global konumunun desteklenmediğini unutmayın.

Resmin içeriğini genişletme

Bu örneği denemeden önce projenizi ve uygulamanızı ayarlamak için bu kılavuzun Başlamadan önce bölümünü tamamlayın.

Aşağıdaki örnekte, sağladığınız bir resimde tanımlanan maskeyi kullanarak bir resmi orijinal sınırlarının ötesine nasıl genişletebileceğiniz gösterilmektedir. Orijinal resmi, metin istemini ve maskelenmiş resmi sağlarsınız. Orijinal ve maskelenmiş resimle ilgili olarak aşağıdakileri unutmayın:

  • Maskelenen resim, son dış boyama resminin hedeflenen boyutunun piksel boyutlarına sahip olmalıdır.

  • Orijinal resim, maskelenmiş resmin piksel boyutlarıyla eşleşmesi için ek dolgu içermelidir.

Modelin mevcut sahnenin mantıksal olarak nasıl devam edeceğine akıllıca karar vermesini istiyorsanız metin istemi sağlamak isteğe bağlıdır. Genişletilmiş alanda belirli bir içerik istiyorsanız bunu metin isteminde belirtmeniz gerekir.

Swift

Imagen modelleriyle görüntü düzenleme, Swift'te desteklenmez. Bu yılın ilerleyen zamanlarında tekrar kontrol edin.

Kotlin

Bir görüntüyü genişletmek için editImage() simgesini kullanın ve düzenleme yapılandırmasını ImagenEditMode.OUTPAINT simgesini kullanacak şekilde ayarlayın.
editImage() yerine isteğe bağlı olarak outpaintImage() kullanabileceğinizi ve düzenleme modunu belirtmenize gerek olmadığını unutmayın.

Outpainting için örnek kodla ilgili hızlı başlangıç kılavuzuna göz atın.

Java

Bir görüntüyü genişletmek için editImage() simgesini kullanın ve düzenleme yapılandırmasını ImagenEditMode.OUTPAINT simgesini kullanacak şekilde ayarlayın.
editImage() yerine isteğe bağlı olarak outpaintImage() kullanabileceğinizi ve düzenleme modunu belirtmenize gerek olmadığını unutmayın.

Outpainting için örnek kodla ilgili hızlı başlangıç kılavuzuna göz atın.

Web

Imagen modelleriyle resim düzenleme, web uygulamalarında desteklenmez. Bu yılın ilerleyen zamanlarında tekrar kontrol edin.

Dart

Bir görüntüyü genişletmek için editImage() simgesini kullanın ve düzenleme yapılandırmasını ImagenEditMode.OUTPAINT simgesini kullanacak şekilde ayarlayın.

Outpainting için örnek kodla ilgili hızlı başlangıç kılavuzuna göz atın.

Unity

Imagen modelleriyle resim düzenleme, Unity'de desteklenmez. Bu yılın ilerleyen zamanlarında tekrar kontrol edin.

En iyi uygulamalar ve sınırlamalar

Resim düzenlerken maskeyi genişletmenizi öneririz. Bu özellik, düzenlemenin kenarlarını yumuşatmaya ve daha inandırıcı görünmesini sağlamaya yardımcı olabilir. Genellikle% 1 veya% 2 oranında bir genişleme değeri önerilir (0.01 veya 0.02).


Firebase AI Logic ile ilgili deneyiminiz hakkında geri bildirim verme