Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Фильтр неравномерности яркости

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (4): [1] 2 3 4 »   

> Описание: фильтр для выравнивания яркости изображения,
Алтенрион
Отправлено: 21 Декабря, 2012 - 02:08:41
Post Id



Частый гость


Покинул форум
Сообщений всего: 180
Дата рег-ции: Сент. 2012  
Откуда: Москва, Россия


Помог: 0 раз(а)




Необходима помощь в разработке, либо материалах, касательно обработки изображений.

Суть проблемы: необходимо разработать веб интерфейс для фильтра неравномерности яркости изображений.

Идея: с разработкой сайта проблем 0. Проблемы возникают с разработкой фильтра. На сайт загружается изображение, оно обрабатывается фильтром,и сохраняется. фильтр должен работать с яркостью изображения, выравнивать общую яркость его, Насколько я понимаю требуется возможность выбора яркости(повышение или понижение) при выравнивании.

Убедительная просьба откликнутся на данный пост людей сведущих и не отвечать "учи мат часть","фи, фигня", и прочее. вопрос срочный, и задание из серии must be done.
 
 Top
DlTA
Отправлено: 21 Декабря, 2012 - 03:16:57
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2952
Дата рег-ции: Окт. 2010  


Помог: 53 раз(а)




постараюсь на пальцах объяснить как автоматом регулируют яркость, хотя должный эффект достигается только в 80% изображений (примерно)

суть в том что строится гистограмма по яркости
далее из нее выбрасываются пустые места (или те которых очень мало) а яркость остальных участков распределяется равномерно по оставшимся частям
Прикреплено изображение
гистограмма1.gif

(Отредактировано автором: 21 Декабря, 2012 - 03:17:22)

 
 Top
DlTA
Отправлено: 21 Декабря, 2012 - 03:21:53
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2952
Дата рег-ции: Окт. 2010  


Помог: 53 раз(а)




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

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

чтоб проще было можно сразу перевести из RGB в LAB тут L это кажись и есть яркость.
остальное вроде просто гуглится
Прикреплено изображение
гистограмма2.gif
 
 Top
Алтенрион
Отправлено: 21 Декабря, 2012 - 15:20:22
Post Id



Частый гость


Покинул форум
Сообщений всего: 180
Дата рег-ции: Сент. 2012  
Откуда: Москва, Россия


Помог: 0 раз(а)




По идее изменение яркости можно регулировать математическими алгоритмами, я читал по поводу

CODE (htmlphp):
скопировать код в буфер обмена
  1.  IMG_FILTER_BRIGHTNESS: Changes the brightness of the image. Use arg1 to set the level of brightness.


по ссылке : [url] http://www.php.su/functions/?imagefilter[/url]

возможно применять? как можете пример привести?
 
 Top
NoPaper
Отправлено: 22 Декабря, 2012 - 10:56:06
Post Id



Посетитель


Покинул форум
Сообщений всего: 315
Дата рег-ции: Янв. 2012  
Откуда: Минск


Помог: 9 раз(а)




Вот статейка (http://ruseller.com/lessons.php?rub=37&id=439), там про фильтры яркости есть пару словечек
 
 Top
Алтенрион
Отправлено: 22 Декабря, 2012 - 13:11:44
Post Id



Частый гость


Покинул форум
Сообщений всего: 180
Дата рег-ции: Сент. 2012  
Откуда: Москва, Россия


Помог: 0 раз(а)




Благодарю за отклик, постараюсь побыстрее изучить.
 
 Top
Алтенрион
Отправлено: 22 Декабря, 2012 - 15:45:36
Post Id



Частый гость


Покинул форум
Сообщений всего: 180
Дата рег-ции: Сент. 2012  
Откуда: Москва, Россия


Помог: 0 раз(а)




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

Требуется применить соответствующую маску фильтра.

Цитата:
Выравнивание гистограммы (линеаризация, эквализация). В процессе выравнивания происходит изменение значений яркости пикселов таким образом, чтобы для каждого уровня яркости было одинаковое или близкое количество пикселов.


Как это реализуется в php ?
 
 Top
DlTA
Отправлено: 23 Декабря, 2012 - 11:14:25
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2952
Дата рег-ции: Окт. 2010  


Помог: 53 раз(а)




вы первые два ответа читали?
 
 Top
Алтенрион
Отправлено: 23 Декабря, 2012 - 11:40:02
Post Id



Частый гость


Покинул форум
Сообщений всего: 180
Дата рег-ции: Сент. 2012  
Откуда: Москва, Россия


Помог: 0 раз(а)




Да, но в сети нашел лишь фильтры яркостей, контрастов и прочее. Есть идея использовать эффект понижения контраста и регулирования яркости.
 
 Top
NoPaper
Отправлено: 23 Декабря, 2012 - 11:56:20
Post Id



Посетитель


Покинул форум
Сообщений всего: 315
Дата рег-ции: Янв. 2012  
Откуда: Минск


Помог: 9 раз(а)




Алтенрион, короче, нужно у некоторых пикселей изменить яркость, а остальные оставить нетронутыми, так?
 
 Top
Алтенрион
Отправлено: 23 Декабря, 2012 - 11:57:26
Post Id



Частый гость


Покинул форум
Сообщений всего: 180
Дата рег-ции: Сент. 2012  
Откуда: Москва, Россия


Помог: 0 раз(а)




Вот что примерно надо мне сделать в итоге.
(Добавление)
NoPaper пишет:
Алтенрион, короче, нужно у некоторых пикселей изменить яркость, а остальные оставить нетронутыми, так?


Насколько понимаю из формуллировок "программа выравнивания неравномерности яркости", следует убрать пики сверх ярких пикселей и затемненных,либо усреднить их, или имулировать подобный эффект.

В принципе ответ ДА.
Прикреплено изображение (Нажмите для увеличения)
Никитаевская прога.png

(Отредактировано автором: 23 Декабря, 2012 - 12:06:22)

 
 Top
NoPaper
Отправлено: 23 Декабря, 2012 - 12:13:57
Post Id



Посетитель


Покинул форум
Сообщений всего: 315
Дата рег-ции: Янв. 2012  
Откуда: Минск


Помог: 9 раз(а)




Тогда можно "поизвращаться" Улыбка
Создать массив с данными о каждом пикселе ($arr[$x][$y]=array(red, green, blue))
найти среднее значение каждого цвета
все, что ярче - усреднить

как-то так
 
 Top
DlTA
Отправлено: 23 Декабря, 2012 - 12:23:26
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2952
Дата рег-ции: Окт. 2010  


Помог: 53 раз(а)




мда ребята, лепите "самокат"
 
 Top
Алтенрион
Отправлено: 23 Декабря, 2012 - 12:33:33
Post Id



Частый гость


Покинул форум
Сообщений всего: 180
Дата рег-ции: Сент. 2012  
Откуда: Москва, Россия


Помог: 0 раз(а)




DlTA пишет:
мда ребята, лепите "самокат"


А если не самокат, то как порекомендуете на практике реализовать?...

У меня идея появилась совместить 2 фильтра, яркости(обычный) и контраста(обычный). Таким образом при понижении контраста получается как раз уменьшение разницы яркости между самыми яркими и самыми темными, ну и при желание полное высветление и затемнение фильтром яркости.

Но это на самом деле, как я понимаю тоже тот еще самокат, но просто как с гистограммами работать в php я не в курсе... Растерялся
 
 Top
NoPaper
Отправлено: 23 Декабря, 2012 - 12:48:33
Post Id



Посетитель


Покинул форум
Сообщений всего: 315
Дата рег-ции: Янв. 2012  
Откуда: Минск


Помог: 9 раз(а)




Описанным мною выше способом получилось добиться такого результата.
Правда ресурсов и времени много нужно.
(Добавление)
DlTA, мы это дело любим =)
Прикреплено изображение
1.png

(Отредактировано автором: 23 Декабря, 2012 - 12:49:28)

 
 Top
Страниц (4): [1] 2 3 4 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Графика в PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB