Pull to refresh
  • by relevance
  • by date
  • by rating

Спектральный анализ сигналов

ProgrammingAlgorithmsMathematics
Sandbox
image

Не так давно товарищ Makeman описывал, как с помощью спектрального анализа можно разложить некоторый звуковой сигнал на слагающие его ноты. Давайте немного абстрагируемся от звука и положим, что у нас есть некоторый оцифрованный сигнал, спектральный состав которого мы хотим определить, и достаточно точно.

Под катом краткий обзор метода выделения гармоник из произвольного сигнала с помощью цифрового гетеродинирования, и немного особой, Фурье-магии.
Читать дальше →
Total votes 56: ↑52 and ↓4 +48
Views224.9K
Comments 22

Спектральный анализ сигналов нелинейных звеньев АСУ на Python

Python

Цель работы


В моей статье [1] рассмотрен метод гармонической линеаризации для исследования систем управления, содержащих нелинейные элементы.

Этот метод может быть использован в том случае, когда линейная часть системы является низкочастотным фильтром, т.е. отфильтровывает все возникающие на выходе нелинейного элемента гармонические составляющие, кроме первой гармоники [2]. Поэтому логическим продолжением моей первой статьи будет гармонический анализ рассмотренных нелинейных элементов. Кроме этого нужно рассмотреть аппаратную альтернативу методу гармонической линеаризации.
Читать дальше →
Total votes 20: ↑18 and ↓2 +16
Views12.6K
Comments 1

“Восстание МашинLearning” или совмещаем хобби по Data Science и анализу спектров лампочек

PythonData MiningMachine learning
Tutorial
В завершающей статье цикла, посвящённого обучению Data Science с нуля, я делился планами совместить мое старое и новое хобби и разместить результат на Хабре. Поскольку прошлые статьи нашли живой отклик у читателей, я решил не откладывать это надолго.

Итак, на протяжении уже нескольких лет я в свободное время копошусь в вопросах, связанных с освещением и больше всего мне интересны спектры разных источников света, как «пращуры» производных от них характеристик. Но не так давно у меня совершенно случайно появилось еще одно хобби — это машинное обучение и анализ данных, в этом вопросе я абсолютный новичок, и чтобы было веселей делюсь периодически с вами своим обретенным опытом и набитыми «шишками»

Данная статья написана в стиле от новичка-новичкам, поэтому опытные читатели вряд ли, почерпнут для себя, что-то новое и если есть желание решить задачу классификации источников света по спектрам, то им есть смысл сразу взять данные из GitHub

А для тех, у кого нет за плечами громадного опыта, я предложу продолжить наше совместное обучение и в этот раз попробовать взяться за составление задачки машинного обучения, что называется «под себя».

Мы пройдем с вами путь от попытки понять где можно применить даже небольшие знания по ML (которые можно получить из базовых книг и курсов), до решения непосредственно самой задачи классификации и мыслей о том «что теперь со всем этим делать?!»

Милости прошу всех под кат.


Читать дальше →
Total votes 10: ↑9 and ↓1 +8
Views8.9K
Comments 2

Интернет вещей по-русски. Спектральные параметры радио-сигнала

Wireless technologiesDevelopment of communication systemsDevelopment for IOTManufacture and development of electronicsIOT
image

Полгода назад один заказчик заинтересовал меня передачей данных по радио для интернета вещей в нашей отечественной версии — NB-FI. Очевидно, что идеологически это система низкоскоростной передачи данных (Ultra-Narrow Band, UNB) SigFox. В деталях есть отличия, которые несомненно можно назвать улучшениями. Например, в NB-FI введено помехоустойчивое кодирование, которое позволяет значительно повысить вероятность доставки сообщения. Более узкая полоса частот также положительно сказывается на сложности оборудования базовой станции. Все это подробно описано в черновике стандарта, который готовится к принятию в РФ в этом, 2019 году. Но в проекте стандарта есть один, как мне кажется существенный, пробел.
Читать дальше →
Total votes 16: ↑16 and ↓0 +16
Views12.7K
Comments 136

Вейвлет – анализ. Основы

PythonMathematicsDevelopment for WindowsPopular sciencePhysics
Tutorial

Введение


Английское слово wavelet (от французского «ondelette») дословно переводится как «короткая (маленькая) волна». В различных переводах зарубежных статей на русский язык встречаются еще термины: «всплеск», «всплесковая функция», «маловолновая функция», «волночка» и др.

Вейвлет-преобразование (ВП) широко используется для анализа сигналов. Помимо этого, оно находит большое применение в области сжатия данных. ВП одномерного сигнала – это его представление ввиде обобщенного ряда или интеграла Фурье по системе базисных функций.

$\psi _{ab}(t)=\frac{1}{\sqrt{a}}\psi \left ( \frac{t-b}{a} \right ) $, (1)

сконструированных из материнского (исходного) вейвлета $\psi(t)$, обладающего определенными свойствами за счет операций сдвига во времени ( b ) и изменения временного масштаба (a).

Множитель $1/\sqrt{a}$ обеспечивает независимость нормы функций (1) от масштабирующего числа (a). Для заданных значений параметров a и b функция $\psi_{ab}(t)$ и есть вейвлет, порождаемый материнским вейвлетом $\psi(t)$.

В качестве примера приведём вейвлет «мексиканская шляпа» во временной и частотной областях:

Листинг вейвлета для временной области
from numpy import*
import matplotlib.pyplot as plt
x= arange(-4,30,0.01)
def w(a,b,t):    
    f =(1/a**0.5)*exp(-0.5*((t-b)/a)**2)* (((t-b)/a)**2-1)
    return f
plt.title("Вейвлет «Мексиканская шляпа»:\n$1/\sqrt{a}*exp(-0,5*t^{2}/a^{2})*(t^{2}-1)$")
y=[w(1,12,t) for t in x]
plt.plot(x,y,label="$\psi(t)$ a=1,b=12") 
y=[w(2,12,t) for t in x]
plt.plot(x,y,label="$\psi_{ab}(t)$ a=2 b=12")   
y=[w(4,12,t) for t in x]
plt.plot(x,y,label="$\psi_{ab}(t)$ a=4 b=12")   
plt.legend(loc='best')
plt.grid(True)
plt.show()



Читать дальше →
Total votes 33: ↑30 and ↓3 +27
Views29.3K
Comments 15

Вейвлет — анализ.Часть 1

PythonMathematicsDevelopment for WindowsPopular sciencePhysics
Tutorial

Введение


Рассмотрим дискретное вейвлет – преобразования (DWT), реализованное в библиотеке PyWavelets PyWavelets 1.0.3. PyWavelets — это бесплатное программное обеспечение с открытым исходным кодом, выпущенное по лицензии MIT.

При обработке данных на компьютере может выполняться дискретизированная версия непрерывного вейвлет-преобразования, основы которого описаны в моей предыдущей статье. Однако, задание дискретных значений параметров (a,b) вейвлетов с произвольным шагом Δa и Δb требует большого числа вычислений.

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

Дискретное вейвлет – преобразование (DWT), реализованное в библиотеке PyWavelets, обеспечивает достаточно информации как для анализа сигнала, так и для его синтеза, являясь вместе с тем экономным по числу операций и по требуемой памяти.

Когда нужно использовать вейвлет-преобразование вместо преобразования Фурье


Преобразования Фурье будет работать очень хорошо, когда частотный спектр стационарный. При этом частоты, присутствующие в сигнале, не зависят от времени, и сигнал содержит частоты xHz, которые присутствует в любом месте сигнала. Чем нестационарнее сигнал, тем хуже будут результаты. Это проблема, так как большинство сигналов, которые мы видим в реальной жизни, нестационарны по своей природе.
Читать дальше →
Total votes 34: ↑31 and ↓3 +28
Views19K
Comments 19

Вейвлет – анализ. Часть 2

PythonMathematicsDevelopment for WindowsPopular sciencePhysics
Tutorial

Введение


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

Целью настоящей публикации является описание методики непрерывного вейвлет- преобразования временных рядов средствами библиотеки PyWavelets..

Немного истории

Инженер-геофизик Д. Морле в конце 70-х годов XX в. столкнулся с проблемой анализа сигналов от сейсмодатчиков, которые содержали высокочастотную компоненту (сейсмическая активность) в течение короткого промежутка времени и низкочастотные составляющие (спокойное состояние земной коры) – в течение длительного периода. Оконное преобразование Фурье позволяет анализировать либо высокочастотную составляющую, либо низкочастотную составляющую, но не обе составляющие сразу.

Поэтому, был предложен метод анализа, в котором ширина оконной функции для низких частот увеличивалась, а для высоких частот – уменьшалась. Новое оконное преобразование получалось в результате растяжения (сжатия) и смещения по времени одной порождающей (так называемой скейлинг-функции – scaling function, scalet) функции. Эта порождающая функция была названа вейвлетом Д. Морле.

Вейвлет Д. Морле
 from pylab import*
import scaleogram as scg
axes = scg.plot_wav('cmor1-1.5', figsize=(14,3))
show()



Читать дальше →
Total votes 17: ↑16 and ↓1 +15
Views10.9K
Comments 0

Увидеть почти невидимое, еще и в цвете: методика визуализации объектов через рассеиватель

ua-hosting.companyData visualizationReading roomPopular sciencePhysics


Одной из самых знаменитых способностей Супермена является суперзрение, которое позволяло ему рассматривать атомы, видеть в темноте и на огромное расстояние, а еще видеть сквозь предметы. Эту способность крайне редко демонстрируют на экранах, но она есть. В нашей же реальности видеть сквозь практически полностью непрозрачные объекты также можно, применив некоторые научные трюки. Однако, полученные снимки всегда были черно-белые, до недавнего времени. Сегодня мы познакомимся с исследованием, в котором ученые из университета Дьюка (США) смогли сделать цветной снимок объектов, спрятанных за непрозрачной стеной, применив однократное световое воздействие. Что это за супер-технология, как она работает и в каких областях может применяться? Об этом нам расскажет доклад исследовательской группы. Поехали.
Читать дальше →
Total votes 23: ↑21 and ↓2 +19
Views6.5K
Comments 4

Испытания Posit по-взрослому. Спектральный анализ

High performanceProgrammingAlgorithmsMathematics
Обсуждения достоинств и недостатков нового революционного формата с плавающей запятой Posit продолжаются. Следующим аргументом в дискуссии стало утверждение, что на самом деле задача Posit — это компактно хранить данные, а вовсе не использоваться в вычислениях; при этом сами вычисления делаются в арифметике Quire с бо́льшей точностью, которая также входит в стандарт Posit.

Ну, хранить так хранить. Что вообще значит — «хранить» числа после вычислений, выполненных с бо́льшей точностью, чем допускает формат хранения? Это значит — округлять, а округлять значит вносить погрешности. Погрешности можно оценивать разными способами — и чтобы не повторяться, сегодня мы используем спектральный анализ с помощью преобразования Фурье.
Читать дальше →
Total votes 29: ↑26 and ↓3 +23
Views4.8K
Comments 24

Спектральный анализ пламени костра. Что делает огонь желтым – наночастицы углерода или соли натрия?

Popular scienceNanotechnologiesPhysicsBrainChemistry
Sandbox

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

В многочисленных публикациях одно или другое из этих объяснений. На форумах обсуждается эта тема, но никто не ссылается на результаты экспериментов. То есть, до настоящего времени нет общепринятого варианта объяснения механизма видимого излучения, возникающего в процессе горения костра!

И все же - почему костер желтый? Я решил провести эксперименты и найти правильный ответ. Мне нужно было измерить спектр видимого излучения пламени костра и объяснить результаты. Если спектр будет сплошным – верна первая версия, если мы будем наблюдать двойную линию натрия – вторая.

Читать дальше
Total votes 192: ↑190 and ↓2 +188
Views27.4K
Comments 101

Самодельный спектрометр с высоким разрешением

Popular scienceNanotechnologiesPhysicsDIYChemistry
Tutorial

Хорошее разрешение достижимо

В интернете много публикаций о том, как используя DVD-R диск и смартфон можно собрать спектрометр, однако характеристики таких устройств не позволяют проводить точные измерения. Мне же удалось сделать прибор с разрешением 0,3 нм.

Читать дальше
Total votes 139: ↑139 and ↓0 +139
Views20.7K
Comments 73