Пакетная обработка изображений (ресайз и весовое позиционирование)?
Уважаемые коллеги,
занимаюсь со своей командой разработкой интернет-витрины для оружейного магазина (масса предметов кардинально отличающихся своими размерами и соотношениями сторон), фоточки делаем свои, правильные.
Наш дизайнер поставил задачу сделать все фотки одинаковыми по ширине, с отступами в % по вертикали и горизонтали и со вписыванием снимаемого предмета, в максимальном размере, в отведенные рамки (т.е. если это ружье, то оно вытянуто и мы вписываем максимально допустимым размером по ширине; если же это пузырек масла, то по высоте), с весовым центрированием по вертикали и горизонтали.
Всего около 3000 фото, обрабатывать руками - все равно будет отличаться позиционирование. Стоить будет как чугунный мост. А, значит, этот вариант не рассматривается.
Подскажите пожалуйста, как вы решаете такие вопросы!
Могу отдать на аутсорс если цена будет в пределах 10-15 тыс.
Пальцем в небо.
Раз фотки "правильные", то фон однородный и белый.
1. переводим в чёрно-белое, чтобы объект стал чёрным, а фон белым
2. определяем минимальное расстояние до чёрного с каждой из сторон
3. обрезаем исходное изображение со всех сторон на вычисленное расстояние (после этого известен размер изображения и что у него больше - ширина или высота)
4. равномерно увеличиваем во все стороны на недостающее количество пикселей
Я не знаю, что такое весовое центрирование, возможно мой алгоритм и не подходит.
Желательно готовое решение какое-то. Скрипты если писать, то всё понятно, другое дело что на это не заложены были ресурсы, но ищется способ сделать хорошо.