Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как найти пики гистограмы 
:(
    Опции темы
MoebiusCat
Дата 20.1.2011, 08:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Речь идёт о гистограме чёрно-белой картинки, содержащей "фон" (например, светлый) и "изображение" (например, тёмное), то есть о двухпиковой гистограме. Нужно глядя на гистограму определить, является ли она двухпиковой и как можно точнее определить пики - я имею в виду не только вершины, а пики целиком.
Это выглядит очень просто, я и сама могу с ходу назвать таких алгоритмов штук пять. Но проблема в том, что они все нестабильны - нет ни одного, который работал бы во всех случаях .
Посмотрите, например, на приложенную гистограму:
user posted image
"Глазами" я прекрасно вижу два пика - максимум гистограмы с окрестностью (один пик) и максимум того, что останется от графика, если отбросить предыдущий пик, тоже с окрестностью. Но я не могу дать рассуждению, с помощью которого я это вижу, точное "алгоритмическое" описание.  smile 
PM MAIL   Вверх
Akina
Дата 20.1.2011, 09:21 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20580
Регистрация: 8.4.2004
Где: Зеленоград

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



Ну автоматическое определение пиков полимодальных гистограмм вообще вещь неустойчивая...
Если все гистограммы имеют именно такой характер - я бы искал наиболее точную аппроксимацию гистограммы трёхчастным квадратичным сплайном - два положительных крайних и отрицательный средний. В качестве начального приближения есссно брать пики и седло. 


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
Pavia
Дата 20.1.2011, 11:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



1. Обычно достаточно сделать так, поиск локальных максимумов. Дальше сортировка и отсечению по порогу.
2. Иногда перед этим еще делают сглаживание.

Поиск локальных минимум. позволит отделить пики.

Можно еще воспользоваться алгоритмом сдвига среднего (mean shift) он тоже позволяет найти пики не только их максимумы, но и хребты тоже отследить.
PM MAIL   Вверх
MoebiusCat
Дата 20.1.2011, 12:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата

Если все гистограммы имеют именно такой характер 

Не совсем поняла что имеется в виду - что все они двухпиковые или что они все имеют подобную форму?

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

Цитата

я бы искал наиболее точную аппроксимацию гистограммы трёхчастным квадратичным сплайном - два положительных крайних и отрицательный средний. В качестве начального приближения есссно брать пики и седло


Цитата

1. Обычно достаточно сделать так, поиск локальных максимумов. Дальше сортировка и отсечению по порогу.
2. Иногда перед этим еще делают сглаживание.

Поиск локальных минимум. позволит отделить пики.

Можно еще воспользоваться алгоритмом сдвига среднего (mean shift) он тоже позволяет найти пики не только их максимумы, но и хребты тоже отследить.


Попробую...

Это сообщение отредактировал(а) MoebiusCat - 20.1.2011, 12:23
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Алгоритмы"

maxim1000

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


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

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


 




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


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

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