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:
- Android - Kod örneği - Kılavuz
- LoRA ile özelleştirme - Kod örneği - Colab
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:
- Metin-görsel oluşturma: Metin istemi içeren resimler oluşturun.
- 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.
- 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:
|
Resim Oluşturucu aşağıdaki sonuçları verir:
|
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.
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.
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.