Поиск:

Ответ в темуСоздание новой темы Создание опроса
> алгоритм определения четкости изображения, поиск самого четкого изображения 
:(
    Опции темы
SHONY_S
Дата 7.11.2007, 12:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 14
Регистрация: 6.8.2007

Репутация: нет
Всего: нет



Впервые столкнулся с такого рода задачей.
Есть 2 рисунка (к примеру), один из них четкий, другой размытый. 
Как программно определить который какой?
Рисунки могут быть разными, тоесть изображение на них может быть разное.
Может кто-то подскажет простенький алгоритм ... smile 
PM MAIL   Вверх
skyboy
Дата 7.11.2007, 13:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: нет
Всего: 260



хм. алгоритм - нет. пожалуй, есть идея.
можно считать абсолютной резкостью, когда две соседние точки имеют абсолютно разный цвет(000000 и FFFFFF) и абсолютная размытость - когда две соседние точки имеют цвет одинаковый(если под размытостью понимать влияние одних точек на цвет соседних).
Надо придумать алгоритм подсчета "коэффициента размытости" для всей картинки и алгоритм расчета степени одинаковости для двух точек.
PM MAIL   Вверх
SHONY_S
Дата 7.11.2007, 13:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 14
Регистрация: 6.8.2007

Репутация: нет
Всего: нет



Цитата(skyboy @  7.11.2007,  13:17 Найти цитируемый пост)
"коэффициента размытости" для всей картинки и алгоритм расчета степени одинаковости для двух точек

хорошая идея, надо попробывать ...
PM MAIL   Вверх
maxim1000
Дата 7.11.2007, 15:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 3334
Регистрация: 11.1.2003
Где: Киев

Репутация: 33
Всего: 110



можно ещё спектр посмотреть
размытие приводит к ослаблению высоких частот


--------------------
qqq
PM WWW   Вверх
SHONY_S
Дата 7.11.2007, 16:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 14
Регистрация: 6.8.2007

Репутация: нет
Всего: нет



А как 
Цитата(maxim1000 @  7.11.2007,  15:37 Найти цитируемый пост)
спектр посмотреть
?
Можно описание алгоритма (или ссылку где найти), please!

PM MAIL   Вверх
maxim1000
Дата 7.11.2007, 18:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 3334
Регистрация: 11.1.2003
Где: Киев

Репутация: 33
Всего: 110



хм... ну про спектр вообще очень много написано
ну... например, можно тут посмотреть http://en.wikipedia.org/wiki/Discrete_cosine_transform
не утверждаю, что самое лучшее для понимания - просто первое, что в голову пришло
впрочем, там, наверняка есть ссылки для более глубокого изучения...

Это сообщение отредактировал(а) maxim1000 - 7.11.2007, 18:00


--------------------
qqq
PM WWW   Вверх
IAV
Дата 7.11.2007, 23:55 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 91
Регистрация: 4.7.2005

Репутация: нет
Всего: 3



Возможно попробовать вычислить градиент изображения... На размытом градиент в каждой точке толжен быть не слишком большой, в то время как на четком (границы контуров) - довольно значительный. Этот метод испоьзуют для выделения границ на изображениях, возможно стоит попробовать плясать дальше от него =)
PM MAIL   Вверх
skyboy
Дата 8.11.2007, 00:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: нет
Всего: 260



Цитата(IAV @  7.11.2007,  22:55 Найти цитируемый пост)
градиент изображения

о! вот он - критерий различия цветов двух соселних точек!
PM MAIL   Вверх
esperant0
Дата 8.11.2007, 07:21 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 714
Регистрация: 20.5.2005

Репутация: 4
Всего: 14



для того чтобы ответить на ваш вопрос надо определить что такое четкое изображение. И это Ваша задача.


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


--------------------
 
 Student->Teacher Assistant ->Research assistant->Microsoft Software Development Engineer 

Пользователь получил наказание за то, что проигнорировал замечание которое было написано модератором  а затем стерто и которое он - пользователь не мог видеть. 
PM MAIL   Вверх
IAV
Дата 8.11.2007, 18:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 91
Регистрация: 4.7.2005

Репутация: нет
Всего: 3



esperant0
Цитата(esperant0 @  8.11.2007,  07:21 Найти цитируемый пост)
Например фотография белого листа идеально резка
 - наверно предполагается что до такого извращения не дойдет =)

Цитата(skyboy @  8.11.2007,  00:08 Найти цитируемый пост)
Цитата(IAV @  7.11.2007,  22:55 )
градиент изображения


о! вот он - критерий различия цветов двух соселних точек!
 - я что-то не то сказал? 0_о

PM MAIL   Вверх
skyboy
Дата 10.11.2007, 09:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: нет
Всего: 260



Цитата(esperant0 @  8.11.2007,  06:21 Найти цитируемый пост)
фотография белого листа идеально резка

а по-моему - абсолютно размыта smile тут уж как кто представит.

PM MAIL   Вверх
esperant0
Дата 10.11.2007, 10:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 714
Регистрация: 20.5.2005

Репутация: 4
Всего: 14



Цитата(skyboy @ 10.11.2007,  09:28)
Цитата(esperant0 @  8.11.2007,  06:21 Найти цитируемый пост)
фотография белого листа идеально резка

а по-моему - абсолютно размыта smile тут уж как кто представит.

Т.е вы сфотографировали белый лист и получили его нечеткое изображение? Как вам это удалось? 


--------------------
 
 Student->Teacher Assistant ->Research assistant->Microsoft Software Development Engineer 

Пользователь получил наказание за то, что проигнорировал замечание которое было написано модератором  а затем стерто и которое он - пользователь не мог видеть. 
PM MAIL   Вверх
SHONY_S
Дата 27.11.2007, 11:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 14
Регистрация: 6.8.2007

Репутация: нет
Всего: нет



Большое спасибо Вам всем!
Хоть не все советы мне были предельно ясны но, вроде, мне удалось найти работающий вариант алгоритма определения четкости изображения...
Сделал вот что:
Считал в двумерный масив коды цветов рисунка (получилась матрица NxM),
начал отнимать столбцы этой матрицы и записывать результаты в другую матрицу, но размерностью N x M-1.
И т.д. пока конечная матрица не стала Nx1.
Получился столбец. 
Вот по нем я и определяю степень (коехициент) размытости, тоисть среднее арифметическое вектори или сумма всех его елементов.
Чем число больше, тем картинка четче. Соответственно, чем число ближе к нулю, тем картинка более размыта.

Основные недостатки метода:
* чем больше картинка, тем медленнее все работает;
* если брать только кусок изображения, то можно попасть на область однородного цвета (как писалось выше, белая картинак);
PM MAIL   Вверх
esperant0
Дата 27.11.2007, 12:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 714
Регистрация: 20.5.2005

Репутация: 4
Всего: 14



Цитата(SHONY_S @ 27.11.2007,  11:09)
 
* чем больше картинка, тем медленнее все работает;

используй вероятностную версию.

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


--------------------
 
 Student->Teacher Assistant ->Research assistant->Microsoft Software Development Engineer 

Пользователь получил наказание за то, что проигнорировал замечание которое было написано модератором  а затем стерто и которое он - пользователь не мог видеть. 
PM MAIL   Вверх
SHONY_S
Дата 29.11.2007, 12:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 14
Регистрация: 6.8.2007

Репутация: нет
Всего: нет



А можно по подробнее о вероятносной версии....
PM MAIL   Вверх
esperant0
Дата 29.11.2007, 13:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 714
Регистрация: 20.5.2005

Репутация: 4
Всего: 14



Цитата(SHONY_S @ 29.11.2007,  12:53)
А можно по подробнее о вероятносной версии....

дам пример.


Пусть у тебя есть картинка 256 степени серого


Ты хочешь знать картинка вся черная (255)  или в ней больше 10 процентов белых пикселей.


Предположим тебя устраивает если алгоритм ошибется с вероятностью 0.000001



Тогда алгоритм такой

-----------------
1) Случайно берем 1000 пикселей ( заметь не зависит от размера картинки)
2) Если среднее этих пикселей содержит не более 5 процентов белых говорим что картинка черная, иначе говорим что в картинке хотябы 10 % белых


google  property testing for image processing


--------------------
 
 Student->Teacher Assistant ->Research assistant->Microsoft Software Development Engineer 

Пользователь получил наказание за то, что проигнорировал замечание которое было написано модератором  а затем стерто и которое он - пользователь не мог видеть. 
PM MAIL   Вверх
Страницы: (2) [Все] 1 2 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Алгоритмы"

maxim1000

Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Алгоритмы | Следующая тема »


 




[ Время генерации скрипта: 0.0930 ]   [ Использовано запросов: 20 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.