Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.12.2012, 22:22   #1
saniusha
 
Регистрация: 05.12.2012
Сообщений: 7
По умолчанию мальчишки!

помогите пожалуйста кто разбирается в с++! нужно написать программу(или алгоритм придумать я не знаю)чтоб она сравнивала два графика в процентном соотношении! есть у кого какие идеи?
saniusha вне форума Ответить с цитированием
Старый 05.12.2012, 22:25   #2
saniusha
 
Регистрация: 05.12.2012
Сообщений: 7
По умолчанию

там как - даны несколько графиков и надо чтобы было показано на сколько процентов один график похож на остальные
saniusha вне форума Ответить с цитированием
Старый 05.12.2012, 22:26   #3
Abstraction
Старожил
 
Аватар для Abstraction
 
Регистрация: 25.10.2011
Сообщений: 3,178
По умолчанию

Есть идея, что нужен пример. Потому что так формулировка неоднозначная. Что значит - "похож"?
Abstraction вне форума Ответить с цитированием
Старый 05.12.2012, 22:31   #4
saniusha
 
Регистрация: 05.12.2012
Сообщений: 7
По умолчанию

есть база с этими графиками(предположим 10 шт) и вводим новый график и надо чтобы она обработала и выдала- там 3 графика похожи на 90 проц(или очень похожи как вариант сравнения) 4 на 40 проц а остольные совсем не похожи что то типо того
saniusha вне форума Ответить с цитированием
Старый 05.12.2012, 22:31   #5
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

...лучше так, пусть ТС приведет критерии похожести.
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 05.12.2012, 22:34   #6
saniusha
 
Регистрация: 05.12.2012
Сообщений: 7
По умолчанию

я думаю что разбить поле где рисуется график на определенные сегменты (типо пикселей) и када обработка будит происходить -скока пиксей одного графика наложилось на остальные (точнее наоборот)
saniusha вне форума Ответить с цитированием
Старый 05.12.2012, 22:35   #7
saniusha
 
Регистрация: 05.12.2012
Сообщений: 7
По умолчанию

тока я не знаю как!я тока делфи да поскаль на 3 знаю а препод зверюга сказал из воздуха радить такой проэкт!
saniusha вне форума Ответить с цитированием
Старый 05.12.2012, 22:43   #8
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

Нет, ТС, так не пойдет. Сначала критери похожести. Приведу пример, чтобы вы поняли почему нам непонятно чего нужно вам:


Имеем три графика, какие из них более похожи друг на друга? По сути, эти три графика - одно и то же, только 1-й есть уменьшенный в четыре раза и смещенный вверх, 3-й относительно второго по разбросу амплитуд в единицу времени по модулю равен ему, но смещен вниз. Относительно чего определять? А если 1-й график идеально повторяет формы второго, но в меньшем масштабе, а третий график в том же масштабе, но повторяет неидеально - что тогда более похоже?

Cмысл ясен? Так что, критерии похожести. То что графики нужно нормализовать предварительно перед сравнением, это само собой разумеется.
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation

Последний раз редактировалось raxp; 05.12.2012 в 22:46.
raxp вне форума Ответить с цитированием
Старый 05.12.2012, 23:06   #9
saniusha
 
Регистрация: 05.12.2012
Сообщений: 7
По умолчанию

все графики начинаются в начале координат(0.0) и всегда положительные относительно х и у !моштаб у всех задан и одинаков!ну вы поняли!проблема с самой процедурой сравнения а критерии похожести можно сделать любые хоть по процентам хоть похож не похож
saniusha вне форума Ответить с цитированием
Старый 05.12.2012, 23:28   #10
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

Цитата:
все графики начинаются в начале координат(0.0) и всегда положительные относительно х и у !
допустим, а ежели мои графики все положительные, все от нуля, но по прежнему смещены (c подставкой). И что изменилось?

Цитата:
моштаб у всех задан и одинаков!ну вы поняли!
т.е. максимальная амплитуда любого графика уже отнормирована ? Нарисуйте, как это вы представляете, чтобы не было недопонимания.

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

Пример: в точке X = 2 сделали срез амплитуд всех графиков и записали
Y(1) = 3
Y(2) = 3.5
Y(3) = 3.34
...
Y(N) = 3.341

Что более похоже друг на друга? Очевидно, Y(3) и Y(N) в точке X = 2. Записали, сохранили и так проходим по всем X, записали пары индексы (номера графиков, данных), сохранили. Теперь перебираем двумерный массив и ищем какие из пар индексов чаще встречаются. Вот вам один из критериев. Написал за вас, реализовуйте.

Второй критерий: построить спектр и сравнивать спектры.

Третий критерий: построить автокорреляционные функции ...есть мнение, что сие самое верное.
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation

Последний раз редактировалось raxp; 05.12.2012 в 23:36. Причина: тему-то переименуйте уже
raxp вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц