Программно создать фотомозаику - PullRequest
4 голосов
/ 19 декабря 2008

Цель: Создать Фотомозаика программно с использованием .NET и C #.

Основная причина, по которой я хотел бы сделать это программно, заключается в том, чтобы иметь возможность самостоятельно записывать, какое изображение и куда оно идет, чтобы я мог создать анимированный эффект из изображений, соединяющихся вместе, чтобы создать фотомозаику. Было бы замечательно просто найти что-то уже существующее, что я мог бы использовать для достижения почти прямо из коробки.

Есть идеи?

Ответы [ 4 ]

6 голосов
/ 19 декабря 2008

фотомозаику-генератор

Доступен исходный код

1 голос
/ 19 декабря 2008

Я думаю, вы можете позаимствовать идеи из квантования цвета. Для каждой фотографии рассчитайте ее средний цвет. Поскольку он маленький, он будет выглядеть при взгляде с расстояния. Затем разделите ваше целевое изображение на прямоугольники размером с фотографию и вычислите их средние цвета. Или, для лучших результатов, уменьшите его так, чтобы каждая фотография соответствовала одному пикселю на целевом изображении. Затем для каждого пикселя целевого изображения выберите фотографию, значение цвета которой наиболее близко к цвету пикселей. (Ближайший - как в ближайшем кубе 3D RGB). Вы также можете применить некоторое дизеринг, чтобы он выглядел лучше (алгоритм Флойда-Стейнберга - один из лучших алгоритмов).

0 голосов
/ 20 декабря 2008

Вы можете найти метапиксель, он имеет код для выполнения анализа фотоизображений, но также может записать выходной файл, в котором точно указано, какое исходное изображение использовалось в каждом месте. Это должно делать то, что вам нужно. Не уверен насчет поддержки Windows, хотя.

0 голосов
/ 19 декабря 2008

Не совсем ответ на ваш вопрос, но вы должны знать, что с Photomosaic связан как патент, так и товарный знак. Вы можете найти информацию в статье Википедии , на которую вы уже ссылались.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...