Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.226.169.94] |
|
Сообщ.
#1
,
|
|
|
Приветствую!
Собственно интересует возможный алгоритм для программного сабжа. Подробнее Есть произвольный рисунок. Задача найти прямоугольные области в данном рисунке, которые можно использовать для создания бесшовных текстур (фонов десктопа GUI, фонов участка или страницы сайта...) Замечания |
Сообщ.
#2
,
|
|
|
Цитата JoeUser @ Задача найти прямоугольные области в данном рисунке, которые можно использовать для создания бесшовных текстур А таких участков на произвольной фотографии не будет ни одного. Вот я делал тему: Автоматический затайливатель картинки. |
Сообщ.
#3
,
|
|
|
Цитата Mikle @ А таких участков на произвольной фотографии не будет ни одного Неправда! Часто может не быть, но так же и может быть. Да, и речь идет не обязательно о фотографии, но и произвольном изображении. |
Сообщ.
#4
,
|
|
|
Тогда сначала нужно дать определение бесшовности. Например, даже полное совпадение цветов всех пикселей слева и справа не означает, что картинка бесшовна по горизонтали.
|
Сообщ.
#5
,
|
|
|
Цитата Mikle @ Тогда сначала нужно дать определение бесшовности. Задача непростая, но я попробую... Для начала "бесшовность" разделим на два вида: 1.Видимая бесшовность Такой выбор изображения для заливки, который создает иллюзию равномерно распределенных участков, без видимых соединений, переливов яркости и цветов на местах соединения участков. Mikle, это вариант, который как-то делает твоя прога. 2.Строгая бесшовность Пусть выбранное изображение для заливки имеет ширину W и высоту H. Если есть такое смещение Δw ɛ [0,W] и Δh ɛ [0,H], при котором полученное изображение шириной W и высотой H на заливке в точности соответствует выбранному изображению заливки, то у нас строгая бесшовность заливки. Такая заливка чаще всего встречается в текстурах и узорах. |
Сообщ.
#6
,
|
|
|
Второй вариант бесспорен, его можно перефразировать проще: если мы найдём на исходном изображении готовый фрагмент 2*2 тайла, то тайл из него можно считать бесшовным. Но об этом я и писал, что "таких участков на произвольной фотографии не будет ни одного", даже на фотографии кирпичной стены при рассеянном свете строго под углом 90 градусов. Да, если это не фотография, а рисунок, вероятность нахождения будет ненулевая.
А первый вариант содержит неопределённое понятие "без видимых соединений". Но само понятие "бесшовность" - это и есть "без видимых соединений", получили рекурсивное определение понятие через самого себя. Я считаю, что постановка задачи "найти прямоугольные области" бесперспективна из-за слова "найти". Нет, их придётся создать, и вовсе не обязательно так, как в моей программе. |
Сообщ.
#7
,
|
|
|
Цитата Mikle @ Я считаю, что постановка задачи "найти прямоугольные области" бесперспективна из-за слова "найти". Нет, их придётся создать, и вовсе не обязательно так, как в моей программе. Дело в том, что многие рисунки (коллажи, оформления, бла бла бла ...) и так искусственно созданы. Допустим понравился участок, хочется такой фон. Вырезаем его по максимуму, где нет лишнего - и в нем ищем. По сути, как вариант - найти чем заливали. А можно найти и еще меньший фрагмент, который даст идентичную заливку. Добавлено Цитата Mikle @ Но само понятие "бесшовность" - это и есть "без видимых соединений" Видимое и строгое - это разные вещи. |