محتوای یک تصویر را با استفاده از نقاشی بیرونی با Imagen گسترش دهید


این صفحه نحوه استفاده از نقاشی بیرونی با استفاده از Imagen را برای گسترش محتوای تصویر فراتر از مرزهای اصلی آن با استفاده از Firebase AI Logic SDK توضیح می‌دهد.

Outpainting نوعی ویرایش مبتنی بر ماسک است. ماسک یک پوشش دیجیتالی است که ناحیه خاصی را که می خواهید ویرایش کنید، تعریف می کند.

چگونه کار می‌کند : شما یک تصویر اصلی و یک تصویر ماسک‌دار مربوطه را ارائه می‌دهید - که به‌طور خودکار ایجاد شده یا توسط شما ارائه شده است - که ماسکی از ناحیه جدید و گسترده را مشخص می‌کند. همچنین می‌توانید به‌صورت اختیاری یک پیام متنی برای توصیف آنچه می‌خواهید در ناحیه گسترش‌یافته ارائه دهید، یا مدل می‌تواند به طور هوشمند تصمیم بگیرد که چه چیزی منطقاً صحنه موجود را ادامه می‌دهد. مدل محتوای جدید را تولید می کند و ناحیه ماسک شده را پر می کند.

برای مثال، می‌توانید نسبت تصویر را تغییر دهید یا زمینه پس‌زمینه بیشتری اضافه کنید.

پرش به کد

قبل از شروع

فقط در صورت استفاده از Vertex AI Gemini API به عنوان ارائه‌دهنده API در دسترس است.

اگر قبلاً این کار را نکرده‌اید، راهنمای شروع را تکمیل کنید، که نحوه راه‌اندازی پروژه Firebase را توضیح می‌دهد، برنامه خود را به Firebase متصل کنید، SDK را اضافه کنید، سرویس Backend را برای ارائه‌دهنده API انتخابی خود مقداردهی اولیه کنید و یک نمونه ImagenModel ایجاد کنید.

مدل هایی که از این قابلیت پشتیبانی می کنند

Imagen ویرایش تصویر را از طریق مدل capability خود ارائه می دهد:

  • imagen-3.0-capability-001

توجه داشته باشید که برای مدل های Imagen ، موقعیت global پشتیبانی نمی شود.

محتوای یک تصویر را گسترش دهید

قبل از امتحان این نمونه، بخش قبل از شروع این راهنما را تکمیل کنید تا پروژه و برنامه خود را راه اندازی کنید.

نمونه زیر نشان می دهد که چگونه می توان یک تصویر را فراتر از مرزهای اصلی آن گسترش داد - با استفاده از یک ماسک تعریف شده در تصویری که ارائه می کنید. شما تصویر اصلی، یک پیام متنی و تصویر ماسک شده را ارائه می دهید. در مورد تصویر اصلی و ماسک شده به نکات زیر توجه کنید:

  • تصویر پوشانده شده باید ابعاد پیکسلی اندازه هدف تصویر نهایی را داشته باشد.

  • تصویر اصلی باید دارای بالشتک اضافی باشد تا با ابعاد پیکسل تصویر پوشانده شده مطابقت داشته باشد.

اگر می خواهید مدل به طور هوشمندانه تصمیم بگیرد که چه چیزی به طور منطقی صحنه موجود را ادامه می دهد، ارائه یک پیام متنی اختیاری است. اگر محتوای خاصی را در ناحیه گسترش یافته می خواهید، باید آن را در یک درخواست متنی مشخص کنید.

سویفت

ویرایش تصویر با مدل های Imagen برای Swift پشتیبانی نمی شود. اواخر امسال دوباره بررسی کنید!

Kotlin

برای بزرگ کردن یک تصویر، از editImage() استفاده کنید و پیکربندی ویرایش را برای استفاده از ImagenEditMode.OUTPAINT تنظیم کنید.
توجه داشته باشید که می توانید به صورت اختیاری از outpaintImage() به جای editImage() استفاده کنید و نیازی به تعیین حالت ویرایش ندارید.

شروع سریع را برای کد نمونه برای نقاشی بیرونی بررسی کنید.

Java

برای بزرگ کردن یک تصویر، از editImage() استفاده کنید و پیکربندی ویرایش را برای استفاده از ImagenEditMode.OUTPAINT تنظیم کنید.
توجه داشته باشید که می توانید به صورت اختیاری از outpaintImage() به جای editImage() استفاده کنید و نیازی به تعیین حالت ویرایش ندارید.

شروع سریع را برای کد نمونه برای نقاشی بیرونی بررسی کنید.

Web

ویرایش تصویر با مدل های Imagen برای برنامه های وب پشتیبانی نمی شود. اواخر امسال دوباره بررسی کنید!

Dart

برای بزرگ کردن یک تصویر، از editImage() استفاده کنید و پیکربندی ویرایش را برای استفاده از ImagenEditMode.OUTPAINT تنظیم کنید.

شروع سریع را برای کد نمونه برای نقاشی بیرونی بررسی کنید.

وحدت

ویرایش تصویر با مدل های Imagen برای Unity پشتیبانی نمی شود. اواخر امسال دوباره بررسی کنید!

بهترین شیوه ها و محدودیت ها

توصیه می کنیم هنگام ویرایش تصویر، ماسک را گشاد کنید. این می تواند به صاف کردن مرزهای یک ویرایش کمک کند و آن را قانع کننده تر به نظر برساند. به طور کلی، مقدار اتساع 1٪ یا 2٪ توصیه می شود ( 0.01 یا 0.02 ).


درباره تجربه خود با Firebase AI Logic بازخورد بدهید