Вершины и впадины
Ну вот. Отладил код. Теперь находит все вершины и впадины чётко и точно.
Вершина - это та точка, к которой поднимается сигнал и от которой опускается сигнал. Впадина - наоборот всё.
Если же нам нужно определить небольшую выпуклость (как на рисунке немного справа - две штуки), которые не считаются вершинами, потому что направление изменения сигнала идёт всё время в одну сторону (вверх или вниз), то тут уже нужно поработать дополнительно, а именно - сдвигать нулевой уровень. Как это делать? А очень просто. Просто величина приращения по одной координате будет больше, чем по другой. И в этой точке будет происходить изменение этого порядка вплоть до смены. Вот это и можно засечь и определить.
01.
Вершина - это та точка, к которой поднимается сигнал и от которой опускается сигнал. Впадина - наоборот всё.
Если же нам нужно определить небольшую выпуклость (как на рисунке немного справа - две штуки), которые не считаются вершинами, потому что направление изменения сигнала идёт всё время в одну сторону (вверх или вниз), то тут уже нужно поработать дополнительно, а именно - сдвигать нулевой уровень. Как это делать? А очень просто. Просто величина приращения по одной координате будет больше, чем по другой. И в этой точке будет происходить изменение этого порядка вплоть до смены. Вот это и можно засечь и определить.
01.
Comments (20):
Только теперь они курят очень дорогой табак.
Право есть у всех. А у них есть возможности по реализации права.
Это как гаммы играть на фортепьяне. Само по себе ценности никакой не несёт; показывать "как артистично я умею играть гаммы" на публике даже как-то и неудобно (впрочем, некоторые осмеливаются - да ещё и перед публикой, умеющей играть на фортепьяно - даже не задумываясь, как смешно при этом выглядят); зато это необходимо для наработки рефлексов и приобретения "крупноуровневых блоков", из которых потом, не задумываясь над мелкими деталями (как не задумывается взрослый человек над тем, как вести руку для написания отдельных букв, при написании письма на бумаге), будет легко строить серьёзные произведения.
2. Но на самом деле, всё достаточно разнообразно. Дело в том, что таких блоков очень много, и многие из них приходится нарабатывать самому. А большинство блоков основывается на других... Не разбираясь в графах, вряд ли поймёшь конечные автоматы; не понимая конечных автоматов, вряд ли напишешь хороший компилятор/интерпретатор/транслятор собственного языка; не привыкнув писать DSL-и, будешь пытаться клепать большие и сложные задачи из мелких блоков того языка, который знаешь (что для крупных задач явно затруднительно, будь то хоть Java, хоть C++). Вот и приходится всю жизнь новым блокам учиться...
Да, кстати, для написания твоей мифической "распознавалки речи" я бы рекомендовал для начала написать DSL для её решения ;)
Хотя да, ты прав, на распознавалку это действительно не тянет. Правильная распознавалка (использующая позаимствованные из человеческого мозга алгоритмы) будет как минимум преобразовывать потоки звуков в слова (при выборе вариантов проверяя наличие подобных вариантов в словаре целевого языка каким-нибудь Байесом). Совсем хорошая - потоки звуков в предложения (проверяя структуру предложения и отбрасывая низковероятные варианты, при которых предложение построено заведомо неправильно). Впрочем, пока даже совсем хорошая распознавалка не научится преобразовывать потоки звуков в тексты (подобно человеку, анализируя контекст и выясняя, что он наиболее вероятно хотел сказать в новом предложении, зная, на какую тему он уже до этого говорил), сравнимого с человеческим распознавания от неё ждать не получится.
мой преобразователь будет подходить для ЛЮБОГО языка. только настроить нужно будет.
Я бы мог хотя бы рассмотреть возможность этого (не обязательно согласиться - нет) в том случае, если бы у меня было хотя бы сколь-нибудь обоснованное предположение, что в данном вопросе ты более квалифицирован.
> мой преобразователь будет подходить для ЛЮБОГО языка. только настроить нужно будет.
Чрезвычайно оптимистично.
Настройка, случайно, по энергоёмкости не будет сравнима с созданием нового человека из атомов ;) ?
если бы ты не знал, что получишь зарплату за работу, стал бы ты её делать? :)
Ложь. Миром движет лень.
> если бы ты не знал, что получишь зарплату за работу, стал бы ты её делать? :)
Смотря за какую работу.