Инпейнтинг (inpainting) — это метод редактирования изображения, при котором модель заново генерирует только выбранный или замаскированный участок, сохраняя остальную картинку. Проще говоря, вы даёте исходное изображение, маску (mask) и часто текстовый запрос (prompt), а система восстанавливает или заменяет нужную область по окружающему контексту.
Английский термин: inpainting. Также встречается: дорисовка, заполнение, восстановление участка; в интерфейсах функцию могут называть Fill, Edit или Replace.
Если вам нужен быстрый рабочий ориентир: inpainting обычно применяют там, где важно поправить один фрагмент и не трогать весь кадр. По логике работы это локальная правка, а не увеличение изображения, как в Upscaling (апскейл), и не генерация с нуля.
Что такое inpainting
Это режим локальной генерации по маске: модель «смотрит» на отмеченную область, использует контекст вокруг неё и заново синтезирует только нужный фрагмент. В браузерных и API-интерфейсах такой сценарий часто скрыт за кнопками Fill или Edit.
Простыми словами
Можно представить inpainting как аккуратную реставрацию фотографии: вы закрываете повреждённый кусок и просите систему дорисовать именно его так, чтобы он не выбивался из сцены. Она смотрит не только на пустое место, но и на то, что вокруг него, поэтому результат стоит оценивать по всему фрагменту, а не только по маске.
Как это работает
В типичном workflow есть три входа: исходная картинка, маска и подсказка, что именно должно получиться. Модель использует соседние пиксели и текстовое описание, чтобы восстановить только отмеченную область.
Исходное изображение + маска + prompt/context
│
▼
Анализ окружающего контекста
│
▼
Перегенерация только маски
│
▼
Сохранение незатронутой части кадра
- Вы загружаете исходное изображение.
- Отмечаете область, которую нужно дорисовать или заменить.
- Добавляете prompt, если сервис его поддерживает.
- Модель генерирует только нужный фрагмент и оставляет остальную картинку без изменений.
В open-source документации по Stable Diffusion / Diffusers часто используется конвенция, где белые пиксели маски дорисовываются, а чёрные сохраняются. Но это не универсальное правило для всех интерфейсов, поэтому маску всегда проверяйте в конкретном инструменте.
Где применяется
- Ретушь изображений. Удаление дефектов, лишних деталей или случайных объектов без полной пересборки сцены.
- Генеративные интерфейсы для дизайнеров. В Adobe Firefly Generative Fill вы открываете модуль изображения, выбираете Fill, кистью отмечаете область, вводите prompt и нажимаете Fill.
- Чат-редактирование. В ChatGPT Images можно выделить часть изображения или описать правку словами; OpenAI отдельно пишет, что отредактированное изображение может расширяться за пределы выделения, а результат сохраняется в Images library.
- Программные пайплайны. В OpenAI GPT Image 2 доступен endpoint
/v1/images/edits, а в Stability AI и Diffusers есть масочные inpainting-workflow для приложений и локальных экспериментов.
Практический пример
Сценарий: вы готовите карточку товара и хотите убрать мелкий дефект на фоне, не меняя сам предмет.
- Откройте Image module/Edit image в Firefly.
- Выберите Fill.
- Кистью закрасьте только дефектную область.
- Введите prompt с описанием желаемой замены.
- Нажмите Fill и проверьте, что дорисовка затронула только отмеченный участок.
Практический вывод: если задача точечная, inpainting обычно экономит время по сравнению с полной перегенерацией изображения, но точность зависит от качества маски и от того, как конкретный сервис трактует выделение.
Чем отличается от…
| Термин | Что делает | Главное отличие |
|---|---|---|
| Inpainting | Дорисовывает только выбранную область | Меняет локальный фрагмент, а не весь кадр |
| Upscaling (апскейл) | Увеличивает размер/разрешение изображения | Не обязан заново придумывать содержимое сцены |
| Text-to-image (генерация с нуля) | Создаёт изображение по тексту без исходника | Не требует маски и существующей картинки |
Ограничения и заблуждения
- Заблуждение: inpainting всегда остаётся внутри выделения. На практике не всегда. OpenAI прямо пишет, что отредактированное изображение может расширяться за пределы выбранной области.
- Заблуждение: маска везде одинакова. Нет. В Diffusers для Stable Diffusion white pixels inpainted, black pixels preserved, но в других сервисах конвенция может отличаться.
- Ограничение: качество сильно зависит от контекста вокруг области. Если окружение сложное, модель может ошибаться с текстурой, краями и мелкими деталями.
- Ограничение: доступность и лимиты зависят от платформы и региона. Adobe Firefly недоступен в России, Беларуси и Китае; Adobe также перечисляет дополнительные территории, где сервисы использовать нельзя. OpenAI предупреждает, что доступ из неподдерживаемых стран и территорий может привести к блокировке или приостановке аккаунта.
- Ограничение: расход credits/лимиты не универсальны. Adobe отдельно отмечает, что потребление credits зависит от модели, а в OpenAI Free-плане лимиты на генерацию изображений ограничены, тогда как платные планы дают расширенные лимиты.
- Практическая оговорка: если вам важна проверяемость происхождения, смотрите на Content Credentials у Adobe Firefly и на C2PA/SynthID у OpenAI; инструменты проверки работают только с поддерживаемыми сигналами.
Редакционная оговорка: названия кнопок, лимиты, списки стран и поведение интерфейсов меняются; перед внедрением в продакшен проверяйте текущую документацию сервиса.
Структурированные данные для страницы: DefinedTerm, FAQPage и BreadcrumbList; в этом HTML-фрагменте они не развёрнуты в script-теги.
Связанные термины и инструменты
- Self-attention — смежный термин, полезный для понимания работы модели с контекстом.
- Transfer learning (перенос обучения) — смежный термин, если вы разбираете, как адаптируют модели под новые задачи.
- Alignment (согласование ИИ) — полезен, если вам важны управляемость и предсказуемость результата.
Из прикладных инструментов чаще всего смотрят Adobe Firefly Generative Fill, ChatGPT Images, OpenAI GPT Image 2 API, Stability AI Inpainting и Hugging Face Diffusers.
Вопросы и ответы
Чем inpainting отличается от обычной генерации изображения?
Inpainting работает от уже существующей картинки и меняет только отмеченный участок. Генерация с нуля создаёт весь кадр заново по тексту.
Почему результат иногда выходит за пределы выделения?
Потому что некоторые инструменты не жёстко ограничивают правку рамками кисти. OpenAI прямо отмечает, что edited image may extend beyond the selected area.
Можно ли использовать inpainting без API?
Да. Например, Adobe Firefly и ChatGPT Images предлагают браузерные сценарии редактирования, а Diffusers подходит для локальных экспериментов.
Как проверить происхождение дорисованного изображения?
В Adobe Firefly смотрите на Content Credentials, а в экосистеме OpenAI — на C2PA metadata и SynthID watermarks. Их наличие проверяется отдельными инструментами, но только для поддерживаемых сигналов.
Работает ли inpainting в России?
Сам термин — да, но конкретные сервисы могут быть недоступны: Firefly не доступен в России, Беларуси и Китае, а OpenAI предупреждает об ограничениях для unsupported countries and territories.
Источники
- Inpainting via API or Brand Studio | Stability AI
- Use generative fill | Firefly
- Content Credentials overview | Firefly
- Adobe Firefly FAQ | Firefly
- ChatGPT Images help article | OpenAI Help Center
- C2PA and SynthID in OpenAI-generated images | OpenAI Help Center
- Verify OpenAI-generated images | OpenAI
- GPT Image 2 | OpenAI API docs
- ChatGPT Pricing | OpenAI
- ChatGPT and API services in unsupported countries and territories | OpenAI Help Center
- Diffusers inpaint guide | Hugging Face Diffusers repository
- Context Encoders: Feature Learning by Inpainting
- Image Inpainting for Irregular Holes Using Partial Convolutions
- Resolution-robust Large Mask Inpainting with Fourier Convolutions