Как сделать одинаковое разрешение фото перед captioning
Нужно ли делать все фото одинакового разрешения перед captioning: подготовка исходников, aspect-ratio buckets и отдельный resize для LoRA.
Короткий ответ. Перед captioning необязательно насильно делать все фотографии квадратными или одинаковыми по пикселям. Важно обеспечить читаемость деталей и согласованную подготовку: исправить поворот, убрать битые файлы, выбрать целевой размер обучения и выяснить, поддерживает ли trainer aspect-ratio buckets. Captioner можно запускать по качественным исходникам, а resize для обучения выполнять отдельно. [Kohya: конфигурация датасета]
Разделите captioning и обучение
Captioner описывает видимое содержание фото. Trainer затем читает изображение и его .txt-подпись, приводит кадр к выбранному разрешению и формирует обучающие батчи. Это два разных этапа. Если заранее плохо обрезать портрет ради одинакового размера, captioner увидит уже обрезанную голову или руки и создаст подпись к испорченному изображению. Поэтому сначала отберите кадры, затем решайте, как их готовить под конкретный trainer. [AI Toolkit: пример конфигурации]
Длинная сторона, пропорции и общий размер — разные параметры. Два изображения могут иметь одинаковое число пикселей по ширине, но разный кадр и качество. Не приводите их к одной форме простым растяжением: лицо и тело исказятся.
Когда подходят buckets
Aspect-ratio buckets группируют изображения по близким пропорциям и уменьшают необходимость грубой квадратной обрезки. В sd-scripts это отдельная настройка enable_bucket; в AI Toolkit пример конфигурации указывает несколько разрешений и автоматическое приведение изображений к ним. Поведение зависит от trainer, поэтому изучите именно его документацию и тестовый просмотр датасета. [Kohya sd-scripts]
Если buckets выключены, trainer может обрезать изображения до одного формата. Тогда решение об обрезке лучше принять вручную: сохраните лицо, нужную позу и значимые элементы одежды. Для полного роста и крупного портрета могут понадобиться разные пропорции.
Для контроля сделайте контактный лист миниатюр после обработки и быстро просмотрите весь набор. Такой обзор помогает заметить отрезанные ноги, разные поля вокруг лица, неожиданно перевёрнутые кадры и несколько снимков с неверным цветовым профилем. Один хороший тестовый кадр не доказывает, что пакетная обработка прошла одинаково для всех файлов.
Практический порядок обработки
- Удалите дубликаты, размытые, повреждённые и слишком маленькие кадры.
- Исправьте ориентацию и проверьте цвет: автоматический поворот иногда хранится только в EXIF.
- Определите целевую базовую модель и рекомендованное разрешение trainer.
- Проверьте настройку buckets или аналогичный механизм сохранения пропорций.
- Создайте копию датасета для эксперимента; исходники оставьте нетронутыми.
- Запустите captioning на нескольких разных кадрах и убедитесь, что подписи описывают реальные детали.
| Ситуация | Что делать |
|---|---|
| Много вертикальных и горизонтальных кадров | Рассмотреть buckets вместо жёсткого квадрата |
| Мелкое лицо на большом фоне | Проверить кроп и полезную детализацию |
| Очень маленькие фото | Не рассчитывать, что увеличение добавит реальные детали |
| Caption не совпадает с фото | Исправить подпись вручную |
Какие ошибки портят подписи
Если все изображения были растянуты до одного размера, captioner может описывать деформированное лицо и непропорциональные предметы. Если кроп отрезал одежду, а подпись по старой фотографии её упоминает, обучающая пара становится противоречивой. Если файлы переименованы без соответствующего переименования .txt, trainer может не найти подпись. В конфигурациях sd-scripts и AI Toolkit подпись обычно связывается с изображением по имени файла. [AI Toolkit: имена файлов]
Короткие ответы
Нужно ли делать все фото 1024×1024?
Не обязательно. Нужны требования вашей базовой модели и trainer; поддержка buckets позволяет работать с разными пропорциями.
Когда лучше делать captioning: до или после resize?
После отбора и исправления ориентации. Если resize заметно меняет кадр, проверяйте подписи уже по той версии изображения, которая пойдёт в обучение.