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 :: Фильтр неравномерности яркости [3]
Покинул форум
Сообщений всего: 180
Дата рег-ции: Сент. 2012 Откуда: Москва, Россия
Помог: 0 раз(а)
Слегка по тестировал ваш код, и нашел его весьма занятным. Однако есть следующие мысли:
Если усреднять значения яркости, то это не только понижение яркости. Также темные пиксели надо приблизить к среднему... или просто высветлить по какому либо критерию.
Если изображение темное, то по вашей схеме оно станет только темнее. Если, к примеру взять темно серый квадрат ( почти Малевича) с бледно серым (почти белым) пятном примерно в четверть квадрата, и применить фильтр, то по идее квадрат должен стать светлее а пятно темнее.
И еще, не могли бы уточнить какое ограничение на объем изображения, чем именно обусловлено, и можно ли увеличить?
на картинки большего размера чем указанные вами ругается на превышение допустимого размера.
Алтенрион
Отправлено: 24 Декабря, 2012 - 03:08:12
Частый гость
Покинул форум
Сообщений всего: 180
Дата рег-ции: Сент. 2012 Откуда: Москва, Россия
Помог: 0 раз(а)
Вот пример квадратика: Прикреплено изображение
NoPaper
Отправлено: 24 Декабря, 2012 - 12:40:33
Посетитель
Покинул форум
Сообщений всего: 315
Дата рег-ции: Янв. 2012 Откуда: Минск
Помог: 9 раз(а)
Алтенрион пишет:
Слегка по тестировал ваш код, и нашел его весьма занятным. Однако есть следующие мысли:
Если усреднять значения яркости, то это не только понижение яркости. Также темные пиксели надо приблизить к среднему... или просто высветлить по какому либо критерию.
Если изображение темное, то по вашей схеме оно станет только темнее. Если, к примеру взять темно серый квадрат ( почти Малевича) с бледно серым (почти белым) пятном примерно в четверть квадрата, и применить фильтр, то по идее квадрат должен стать светлее а пятно темнее.
И еще, не могли бы уточнить какое ограничение на объем изображения, чем именно обусловлено, и можно ли увеличить?
на картинки большего размера чем указанные вами ругается на превышение допустимого размера.
Хм, я не ставил ограничение на размер картинки. Преобразование картинки в массив сам по себе процесс ресурсоемкий, может памяти серверу мало выделено?
Насчет темных изображений, там должно быть именно усреднение, а не затемнение, что собственно и получается: Прикреплено изображение
Покинул форум
Сообщений всего: 180
Дата рег-ции: Сент. 2012 Откуда: Москва, Россия
Помог: 0 раз(а)
NoPaper пишет:
Насчет темных изображений, там должно быть именно усреднение, а не затемнение, что собственно и получается:
проверял на локальной машине. Загрузил на хостинг - действительно увидел осветление темного квадрата.
Но при загрузке изображения в районе 400кб появляется такое : (Добавление)
как именно можно рассчитать сколько памяти займет массив данных обработки, подскажите пожалуйста? Прикреплено изображение (Нажмите для увеличения)
Покинул форум
Сообщений всего: 315
Дата рег-ции: Янв. 2012 Откуда: Минск
Помог: 9 раз(а)
У меня на локалке картинка png размером 4кб съедает 50мб памяти
DlTA
Отправлено: 25 Декабря, 2012 - 01:19:26
Постоянный участник
Покинул форум
Сообщений всего: 2952
Дата рег-ции: Окт. 2010
Помог: 53 раз(а)
вопрос для размышления:
нафига создавать массив точек, что мешает пробегаться по точкам изображения каждый раз запрашивая конкретный пиксел и обрабатывая его?
это поможет снизить потребление памяти
NoPaper
Отправлено: 25 Декабря, 2012 - 10:46:59
Посетитель
Покинул форум
Сообщений всего: 315
Дата рег-ции: Янв. 2012 Откуда: Минск
Помог: 9 раз(а)
DlTA пишет:
вопрос для размышления:
нафига создавать массив точек, что мешает пробегаться по точкам изображения каждый раз запрашивая конкретный пиксел и обрабатывая его?
это поможет снизить потребление памяти
спасибо, потребление памяти снизилось до 15 мб (Добавление) Алтенрион, вот измененный скрипт, должен меньше памяти кушать
_https://docs.google.com/open?id=0BxG_9AZqsNLZSThCdGkya0loa2s
Алтенрион
Отправлено: 25 Декабря, 2012 - 16:48:51
Частый гость
Покинул форум
Сообщений всего: 180
Дата рег-ции: Сент. 2012 Откуда: Москва, Россия
это снимает ограничения выделяемой памяти, и таким образом работает и с большими изображениями.
Проведя многократные тестирования, выяснил что кол-во памяти не зависит от качества (веса) картинки, а зависит от размеров по пикселям. тоесть 5х5, 1200х1200...
В любом случае спасибо, попробую испытать новую версию.
Алтенрион
Отправлено: 26 Декабря, 2012 - 10:59:40
Частый гость
Покинул форум
Сообщений всего: 180
Дата рег-ции: Сент. 2012 Откуда: Москва, Россия
Помог: 0 раз(а)
На локальной машине отмена ограничения памяти сработало корректно, а вот на хостинге не срабатывает. Писать админу чтобы он помог или есть альтернативный путь?
Просто при работе с объемными изображениями требуется много памяти, а работать с объемными кадрами придется...
NoPaper
Отправлено: 26 Декабря, 2012 - 11:14:58
Посетитель
Покинул форум
Сообщений всего: 315
Дата рег-ции: Янв. 2012 Откуда: Минск
Помог: 9 раз(а)
Попробовал кое-что переделать в алгоритме, результат - картинка 200х200 съедает 800кб памяти =)
Осталось некоторые баги убрать
DlTA
Отправлено: 26 Декабря, 2012 - 11:15:01
Постоянный участник
Покинул форум
Сообщений всего: 2952
Дата рег-ции: Окт. 2010
Помог: 53 раз(а)
Алтенрион пишет:
а вот на хостинге не срабатывает
очень сомневаюсь что админ непонятно за какие заслуги поставит в приоритет, а тем более в безлимит по памяти. учитесь кодить расчитывая на ограничения а не с надеждой на "режим бога"
NoPaper
Отправлено: 26 Декабря, 2012 - 12:03:54
Посетитель
Покинул форум
Сообщений всего: 315
Дата рег-ции: Янв. 2012 Откуда: Минск
Помог: 9 раз(а)
Алтенрион, доделал скрипт, по твоей картинке с кругом и квадратом рез-ты такие:
718.148 KB
0.737 sec
Можешь скачать его по предыдущей ссылке
Алтенрион
Отправлено: 26 Декабря, 2012 - 12:10:00
Частый гость
Покинул форум
Сообщений всего: 180
Дата рег-ции: Сент. 2012 Откуда: Москва, Россия
Помог: 0 раз(а)
Вопросы: Как в новом алгоритме (версии 2.0 ^_^) указывается коэффициент. В первой версии было понятно, и есть желание сделать ползунок (веб форму type="range") чтобы обработка кадра происходила по кнопке, согласно указанному коэффициенту.
С версией 1.0 я почти связал это, с 2.0 не понимаю как передавать коэффициент от ползунка.
Версию 3.0 сейчас буду тестить.
П.С.:Спасибо за активную помощь (Добавление)
Первичные тесты показали что объем памяти сократился примерно в 15-16 раз.
Покинул форум
Сообщений всего: 315
Дата рег-ции: Янв. 2012 Откуда: Минск
Помог: 9 раз(а)
Там нет коэффициента, все пиксели усредняются.
Добавить эту фичу - не проблема (Добавление)
Сейчас нет доступа к своему компьютеру и гуглу, напишу здесь.
В скрипте строки:
Покинул форум
Сообщений всего: 180
Дата рег-ции: Сент. 2012 Откуда: Москва, Россия
Помог: 0 раз(а)
Все было протестировано, был сделан интерфейс, ведется работа над отладкой взаимодействия всех кнопок.
Есть 4 ключевых звена в цепи работы данного комплекса:
1) Загрузка изображения на сайт, и отображение его на странице.
2) Передача изображения (загруженного) и коэффициента ползунка php скрипту фильтра.
3) Кнопка сохранения в базу данных загруженного и полученного кадров.
4) Скачивание готового изображения с сайта на компьютер.
Возникли некоторые трудности с пониманием, как загрузить именно на сайт выбранное такой формой изображение, и загрузить именно его а не только его директорию...
Пункт 2: С ползунком работаю непосредственно сейчас. Нашел инфу что наиболее рационально передавать значение от ползунка, php обработчику, посредством java script. Решил использовать jQuery ... В общем доделаю отпишу мысли.
Пункт 3: Интересует как можно реализовать такую форму (кнопку) чтобы она подцепляла изображения для отправки в бд.... с SQL синтаксисом я вроде дружу... Суть тут в том что в базу надо именно изображения пихать а не их пути на сервере или в файлах сайта... так уж необходимо...(хотя с многих сторон это не рационально)
Пункт 4: Кнопка Download. С ней еще не ковырялся. Пока решаю первые 3 пункта. Скачивание полученного (обработанного ) изображения, это самый финальный штрих.
Прошу поделиться мыслями.
Чуток попозже выложу нынешний прототип интерфейса. Работать буду над ним и в Новогоднюю ночь... и дальше. Благодарен заранее.
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.