Программное создание фотомозаики

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

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

Любые идеи?

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
4
0
3 105
4
Перейти к ответу Данный вопрос помечен как решенный

Ответы 4

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

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

Ответ принят как подходящий

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

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

Линк кажется мертвым, не уверены, есть ли у нас лучший?

Abe Petrillo 02.11.2018 18:24

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

Другие вопросы по теме