- PVSM.RU - https://www.pvsm.ru -

Как сделать лицо из еды

Приложение Megabite [1] от Аарона Рэнделла использует фотографию еды, анализирует каждую отдельную составляющую вашего блюда, затем меняет всё местами, чтобы получить забавную мордочку на тарелке. Под катом — видео и описание алгоритма.

image

Подготовка изображения

Пользователь снимает еду с помощью приложения, размер фото меняется до 1000х1000 пикселей, а затем обрезается по контуру тарелки.

image

Обнаружение контуров

На следующем шаге приложение ищет отдельные предметы, определяя их контуры. Приложение применяет ооператор обнаружения границ изображения Кэнни [2] (2), и получает три изображения для последующей работы (3, 4, 5). Затем в ход идёт функция OpenCV findContours для обнаружения контуров каждой детали. Контуры на изображении ниже отмечены красным цветом. Затем алгоритм отфильтровывает «дочерние» контуры — например, желток в яичнице.

image

Выделение контуров из изображения

Каждый полученный контур приложение переворачивает, чтобы вписать в минимальный ограничивающий прямоугольник — минимальную площадь, которая будет содержать в себе изображение в максимальном масштабе. Процесс повторяется для всех шести деталей в примере.

image

image

Размещение деталей на шаблоне

В приложении есть шаблоны, которые используются для расположения отдельных деталей. Ниже — три примера, с количеством полигонов от трёх до шести.

image

Затем приложение выбирает шаблон по количеству деталей. В этом примере — шесть деталей, поэтому мордочка получится с ушами и носом. Затем полигоны и части изображения сортируются по размеру и подбираются по парам.

image

На следующем этапе детали размещаются на шаблоне таким образом, чтобы еда занимала максимально возможную площадь каждого из полигонов.

image

Результат

Такое лицо в итоге получилось из жареных яиц с беконом и тостом. Автор пишет [3], что приложение пока работает только с подобными этой фотографиями и пока имеет множество ограничений.

image

Автор: ivansychev

Источник [4]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/ios/111247

Ссылки в тексте:

[1] Megabite: https://github.com/AaronRandall/Megabite

[2] оператор обнаружения границ изображения Кэнни: https://ru.wikipedia.org/wiki/%D0%9E%D0%BF%D0%B5%D1%80%D0%B0%D1%82%D0%BE%D1%80_%D0%9A%D1%8D%D0%BD%D0%BD%D0%B8

[3] Автор пишет: http://aaronrandall.com/blog/megabite/

[4] Источник: https://geektimes.ru/post/270356/