Resim oluşturma kılavuzu

MediaPipe Resim Oluşturucu görevi, metin istemine dayalı resimler oluşturmanızı sağlar. Bu görev, difüzyon teknikleri kullanarak görüntüler oluşturmak için metin-görüntü modelinden yararlanır.

Görev, giriş olarak bir metin istemini ve modelin genişletip oluşturma için referans olarak kullanabileceği isteğe bağlı bir koşul görüntüsünü kabul eder. Koşullu metinden görsel oluşturma hakkında daha fazla bilgi için Koşullandırılmış metinden resme dönüştürme için cihaz üzerinde difüzyon eklentileri bölümüne bakın.

Görüntü Oluşturucu, eğitim veya yeniden eğitim sırasında modele sağlanan belirli kavramlara dayalı görüntüler de oluşturabilir. Daha fazla bilgi için LoRA ile özelleştirme bölümüne bakın.

Başlayın

Hedef platformunuz için bu uygulama rehberlerinden birini izleyerek bu görevi kullanmaya başlayın. Platforma özgü bu kılavuzlar, varsayılan modeli kullanan kod örnekleri ve önerilen yapılandırma seçenekleriyle birlikte bu görevin temel bir şekilde uygulanmasında size yol gösterir:

Görev ayrıntıları

Bu bölümde, bu görevin özellikleri, girişleri, çıkışları ve yapılandırma seçenekleri açıklanmaktadır.

Özellikler

Resim Oluşturucu'yu kullanarak aşağıdakileri uygulayabilirsiniz:

  1. Metin-görsel oluşturma: Metin istemi içeren resimler oluşturun.
  2. Koşul görüntüleriyle görüntü oluşturma: Metin istemi ve referans resim içeren resimler oluşturun. Görüntü Oluşturucu, koşul görüntülerini ControlNet'e benzer şekilde kullanır.
  3. LoRA ağırlıklarıyla görüntü oluşturma - Özelleştirilmiş model ağırlıklarını kullanarak bir metin istemiyle belirli kişilerin, nesnelerin ve stillerin resimlerini oluşturun.
Görev girişleri Görev çıkışları
Resim Oluşturucu aşağıdaki girişleri kabul eder:
  • Metin istemi
  • Tohum
  • Üretken yineleme sayısı
  • İsteğe bağlı: durum resmi
Resim Oluşturucu aşağıdaki sonuçları verir:
  • Girişlere göre oluşturulmuş resim.
  • İsteğe bağlı: Oluşturulan resmin yinelenen anlık görüntüleri.

Yapılandırma seçenekleri

Bu görev aşağıdaki yapılandırma seçeneklerine sahiptir:

Seçenek Adı Açıklama Değer Aralığı
imageGeneratorModelDirectory Model ağırlıklarını depolayan resim oluşturma aracı model dizini. PATH
loraWeightsFilePath LoRA ağırlıkları dosyasının yolunu ayarlar. İsteğe bağlıdır ve yalnızca model LoRA ile özelleştirildiyse geçerlidir. PATH
errorListener İsteğe bağlı bir hata işleyici ayarlar. N/A

Görev, eklenti modellerini de destekler. Bu özellik sayesinde kullanıcılar, koşul görüntülerine görev girişine ekleyebilirler. Bunu da temel modeli geliştirip oluşturma işlemi için referans olarak kullanabilir. Bu durum görüntüleri; modelin görüntü oluşturmak için ek bağlam ve bilgi olarak kullandığı yüz önemli noktaları, kenar dış çizgileri ve derinlik tahminleri olabilir.

Temel modeline bir eklenti modeli eklerken eklenti seçeneklerini de yapılandırın. Face belirgin işareti eklentisi faceConditionOptions, Canny Edge eklentisi edgeConditionOptions ve Depth eklentisi depthConditionOptions kullanır.

Canny Edge seçenekleri

edgeConditionOptions sayfasında aşağıdaki seçenekleri yapılandırın.

Seçenek Adı Açıklama Değer Aralığı Varsayılan Değer
threshold1 Histerez işlemi için ilk eşik. Float 100
threshold2 Histerez işlemi için ikinci eşik. Float 200
apertureSize Sobel operatörü için diyafram boyutu. Normal aralık 3-7 arasındadır. Integer 3
l2Gradient Görüntü gradyanı büyüklüğünü hesaplamak için varsayılan L1 normu yerine L2 normunun kullanılıp kullanılmadığı. BOOLEAN False
EdgePluginModelBaseOptions Eklenti modelinin yolunu belirleyen BaseOptions nesnesi. BaseOptions nesne N/A

Bu yapılandırma seçeneklerinin nasıl çalıştığıyla ilgili daha fazla bilgi için Canny uç algılayıcı konusuna bakın.

Yüz işareti seçenekleri

faceConditionOptions sayfasında aşağıdaki seçenekleri yapılandırın.

Seçenek Adı Açıklama Değer Aralığı Varsayılan Değer
minFaceDetectionConfidence Yüz algılamanın başarılı olarak kabul edilmesi için gereken minimum güven puanı. Float [0.0,1.0] 0.5
minFacePresenceConfidence Yüz belirgin işareti algılamada yüz varlığı için minimum güven puanı. Float [0.0,1.0] 0.5
faceModelBaseOptions Koşul görüntüsünü oluşturan modelin yolunu ayarlayan BaseOptions nesnesi. BaseOptions nesne N/A
FacePluginModelBaseOptions Eklenti modelinin yolunu belirleyen BaseOptions nesnesi. BaseOptions nesne N/A

Bu yapılandırma seçeneklerinin nasıl çalıştığı hakkında daha fazla bilgi için Yüz İşaretçisi görevi bölümüne bakın.

Derinlik seçenekleri

depthConditionOptions sayfasında aşağıdaki seçenekleri yapılandırın.

Seçenek Adı Açıklama Değer Aralığı Varsayılan Değer
depthModelBaseOptions Koşul görüntüsünü oluşturan modelin yolunu ayarlayan BaseOptions nesnesi. BaseOptions nesne N/A
depthPluginModelBaseOptions Eklenti modelinin yolunu belirleyen BaseOptions nesnesi. BaseOptions nesne N/A

Modeller

Resim Oluşturma aracı, yeni görüntüler oluşturmak için difüzyon teknikleri kullanan metin-görsel yapay zeka modeli olan bir temel modeli gerektirir. Bu bölümde listelenen temel modeller, ileri teknoloji akıllı telefonlarda çalışmak için optimize edilmiş hafif modellerdir.

Eklenti modelleri isteğe bağlıdır ve temel modelleri tamamlar. Bu sayede kullanıcılar, daha spesifik görüntü oluşturma için bir metin istemiyle birlikte ek koşul resmi sağlayabilir. LoRA ağırlıklarını kullanarak temel modellerini özelleştirmek, temel modeline nesne, kişi veya stil gibi belirli bir kavramı öğreterek oluşturulan resimlere yerleştirmeyi sağlayan bir seçenektir.

Temel modelleri

Temel modelleri, metin isteminden görüntü oluşturan gizli metin-görsel difüzyon modelleridir. Resim Oluşturucu, temel modelinin aşağıdaki modele göre runwayml/stable-diffusion-v1-5 EMA-only model biçimiyle eşleşmesini gerektirir:

Aşağıdaki temel modelleri de Resim Oluşturucu ile uyumludur:

Bir temel modeli indirdikten sonra image_generator_converter aracını kullanarak modeli Image Üretici için uygun cihaz üzerinde biçime dönüştürün.

Gerekli bağımlılıkları yükleyin:

$ pip install torch typing_extensions numpy Pillow requests pytorch_lightning absl-py

convert.py komut dosyasını çalıştırın:

$ python3 convert.py --ckpt_path <ckpt_path> --output_path <output_path>

Eklenti modelleri

Bu bölümdeki eklenti modelleri Google tarafından geliştirilmiştir ve bir temel modeliyle birlikte kullanılmalıdır. Eklenti modelleri, Resim Oluşturucu'nun giriş olarak bir metin istemiyle birlikte bir koşul resmini kabul etmesini sağlar. Böylece, oluşturulan resimlerin yapısını kontrol edebilirsiniz. Eklenti modelleri, özellikle cihaz üzerinde dağılım için yeni bir mimariyle ControlNet'e benzer özellikler sunar.

Eklenti modelleri, temel seçeneklerde belirtilmelidir ve ek model dosyaları indirmenizi gerektirebilir. Her eklentinin, durum resmi için benzersiz gereksinimleri vardır. Bu resim Oluşturucu tarafından oluşturulabilir.

Canny Edge eklentisi

Canny Edge eklentisi, oluşturulan resmin amaçlanan kenarlarını ana hatlarıyla belirten bir durum resmini kabul eder. Temel modeli, durum görüntüsünde belirtilen kenarları kullanır ve metin istemine göre yeni bir görüntü oluşturur. Resim Oluşturucu, koşul görüntüleri oluşturmaya yönelik yerleşik özellikler içerir ve yalnızca eklenti modelinin indirilmesini gerektirir.

Canny Edge eklentisini indirin

Canny Edge eklentisi aşağıdaki yapılandırma seçeneklerini içerir:

Seçenek Adı Açıklama Değer Aralığı Varsayılan Değer
threshold1 Histerez işlemi için ilk eşik. Float 100
threshold2 Histerez işlemi için ikinci eşik. Float 200
apertureSize Sobel operatörü için diyafram boyutu. Normal aralık 3-7 arasındadır. Integer 3
l2Gradient Görüntü gradyanı büyüklüğünü hesaplamak için varsayılan L1 normu yerine L2 normunun kullanılıp kullanılmadığı. BOOLEAN False
EdgePluginModelBaseOptions Eklenti modelinin yolunu belirleyen BaseOptions nesnesi. BaseOptions nesne N/A

Bu yapılandırma seçeneklerinin nasıl çalıştığıyla ilgili daha fazla bilgi için Canny uç algılayıcı konusuna bakın.

Yüz işareti eklentisi

Yüz İşareti eklentisi, MediaPipe Face Landmarker çıkışını koşul resmi olarak kabul eder. Yüz İşaretçisi, tek bir yüzün ayrıntılı bir örgüsü sayesinde yüz özelliklerinin varlığını ve konumunu eşler. Temel modeli, durum görüntüsünde belirtilen yüz eşlemesini kullanır ve ağın üzerinde yeni bir yüz oluşturur.

Face belirgin işaret eklentisini indirin

Yüz işareti eklentisi, durum görüntüsünü oluşturmak için Yüz İşaretçisi modeli paketini de gerektirir. Bu model paketi, Yüz İşaretçisi görevi tarafından kullanılan pakettir.

Yüz belirgin işareti model paketini indirin

Yüz İşareti eklentisi aşağıdaki yapılandırma seçeneklerini içerir:

Seçenek Adı Açıklama Değer Aralığı Varsayılan Değer
minFaceDetectionConfidence Yüz algılamanın başarılı olarak kabul edilmesi için gereken minimum güven puanı. Float [0.0,1.0] 0.5
minFacePresenceConfidence Yüz belirgin işareti algılamada yüz varlığı için minimum güven puanı. Float [0.0,1.0] 0.5
faceModelBaseOptions Koşul görüntüsünü oluşturan modelin yolunu ayarlayan BaseOptions nesnesi. BaseOptions nesne N/A
FacePluginModelBaseOptions Eklenti modelinin yolunu belirleyen BaseOptions nesnesi. BaseOptions nesne N/A

Bu yapılandırma seçeneklerinin nasıl çalıştığı hakkında daha fazla bilgi için Yüz İşaretçisi görevi bölümüne bakın.

Derinlik eklentisi

Derinlik eklentisi, bir nesnenin monoküler derinliğini belirten koşul görüntülerini kabul eder. Temel modeli, oluşturulacak nesnenin boyutunu ve derinliğini anlamak için koşul görüntüsünü kullanır ve metin istemine dayanarak yeni bir görüntü oluşturur.

Depth eklentisini indir

Derinlik eklentisi, koşul resmini oluşturmak için bir Derinlik tahmin modeli de gerektirir.

Derinlik tahmin modelini indir

Depth eklentisi aşağıdaki yapılandırma seçeneklerini içerir:

Seçenek Adı Açıklama Değer Aralığı Varsayılan Değer
depthModelBaseOptions Koşul görüntüsünü oluşturan modelin yolunu ayarlayan BaseOptions nesnesi. BaseOptions nesne N/A
depthPluginModelBaseOptions Eklenti modelinin yolunu belirleyen BaseOptions nesnesi. BaseOptions nesne N/A

LoRA ile özelleştirme

Bir modelin LoRA ile özelleştirilmesi, Image Maker'ın eğitim sırasında benzersiz jetonlar tarafından tanımlanan belirli kavramlara dayalı görüntüler oluşturmasını sağlayabilir. Eğitimden sonraki yeni LoRA ağırlıklarıyla model, jeton metin isteminde belirtildiğinde yeni kavramın resimlerini oluşturabilir.

LoRA ağırlıkları oluşturmak için belirli bir nesne, kişi veya stilin görüntüleriyle ilgili temel model eğitimi gerekir. Bu sayede model, yeni kavramı tanıyabilir ve görüntüler oluştururken bu modeli uygulayabilir. Belirli kişi ve yüzlerin resimlerini oluşturmak için LoRa ağırlıkları oluşturuyorsanız bu çözümü yalnızca size izin veren kişilerin yüzünde veya yüzlerinde kullanın.

Aşağıda, "monadikos çaydanlık" jetonu kullanılarak DreamBooth veri kümesindeki çaydanlık görüntüleriyle eğitilmiş özelleştirilmiş bir modelden elde edilen çıktı bulunmaktadır:

İstem: aynanın yanındaki monadikos çaydanlığı

Özelleştirilmiş model, istemdeki jetonu aldı ve LoRA ağırlıklarından göstermeyi öğrendiği bir çaydanlığı yerleştirdi ve bunu, istekte belirtildiği gibi bir aynanın yanına yerleştirir.

Vertex AI ile LoRA

Daha fazla bilgi için temel modeline LoRA ağırlıkları uygulayarak model özelleştirmek için Vertex AI'da Model Bahçesi kullanan özelleştirme kılavuzuna bakın.