[Цифровая обработка сигналов] Применение корреляционных функций (использование Matlab для расчета корреляционных функций)
[Цифровая обработка сигналов] Применение корреляционных функций (использование Matlab для расчета корреляционных функций)

Каталог статей

1. Сценарии применения связанных функций


Найдите «автокорреляционную функцию» следующего сигнала:

x(n) = \sin(2\pi fn) + N(n)

в

N(n)

– гауссовский белый шум;

Гауссов белый шум соответствует характеристикам нормального распределения, и его среднее значение равно

0

, дисперсия

1

, его спектральная плотность мощности белая, а мощность одинакова на всех частотах;

В предыдущем блоге [Цифровая обработка сигналов] Приложения, связанные с функциями ( Сценарии применения связанных функций | Принцип обнаружения сигналов в шуме ) середина , Используя метод вывода формулы, найдите корреляционную функцию , В этом блоге используется matlab Найдите корреляционную функцию ;

Начнем использовать Matlab для расчета

x(n) = \sin(2\pi fn) + N(n)

сопутствующие функции;

1. Генерация гауссовского белого шума.

Сгенерируйте последовательность гауссовского белого шума со средним значением 0 и дисперсией 1;

код Язык:javascript
копировать
randn(1,200); 

Последовательность гауссова белого шума, сгенерированная приведенным выше кодом, представляет собой вектор-строку из 200 элементов.

в случае randn(2, 200) код , То, что генерируется, представляет собой

2 \times 200

матрица;

2. Отношение сигнал/шум SNR.

SNR — это отношение сигнал/шум,

P_s

мощность сигнала,

P_N

- мощность шума, и ее соотношение:

SNR = 10 \log_{10}\cfrac{P_s}{P_N}

существовать matlab середина , Установите соотношение сигнал/шум на

7

;

код Язык:javascript
копировать
% настраивать соотношение сигнал/шум 
SNR = 7;

3. Найдите амплитуду сигнала на основе отношения сигнал/шум SNR.

Сигнал

A \sin \omega n

, его мощность

P_s = \cfrac{A^2}{2}

, мощность шума

P_N=1

, Принесите что-то к месту сигнал/шумчиновниксередина :

SNR = 10 \log_{10}\cfrac{P_s}{P_N} = 10 \log_{10}\cfrac{\cfrac{A^2}{2}}{1} = 10 \log_{10}\cfrac{A^2}{2}

Рассчитайте амплитуду на основе отношения сигнал/шум

A

:

\cfrac{SNR}{10} = log_{10}\cfrac{A^2}{2}
\cfrac{A^2}{2} = 10^{\cfrac{SNR}{10}}
A^2 = 2 \times 10^{\cfrac{SNR}{10}}
A = \sqrt{2 \times 10^{\cfrac{SNR}{10}}}

написано как matlab коддля :

код Язык:javascript
копировать
% в соответствии ссоотношение сигнал/шум вычислить Сигнал Амплитуда
SignalAmplitude = sqrt( 2 * 10^(SNR/10) );

4. Генерация сигнала с одной несущей и финального сигнала.

в соответствии с

A \sin \omega n

чиновник ,производить 200 индивидуальный Сигнал, в

A

Уже найдено ранее;

код Язык:javascript
копировать
% в соответствии сAsinωnпроизводить 200 индивидуальный Сигнал
x1 = A * sin( pi * 0.165 * (0:199) ); 

а потом Сигнали Суперпозиция гауссовского белого шума :

код Язык:javascript
копировать
% Сигнал+ Гауссов белый шум
x = x1 + xn; 

5. Найдите автокорреляционную функцию и степень

Чтобы найти функцию автокорреляции, используйте функцию xcorr;

код Язык:javascript
копировать
% просить x из Автокорреляционная функция , Длинадля2N-1
y = xcorr(x, x); 

просить Сигналвласть :

код Язык:javascript
копировать
% власть : Автокорреляционная функция Амплитуда проситьсредний
% Автокорреляционная функция Да 200 индивидуальныйвласть Нова
y = y / 200; 

6. Полный код Matlab

matlab Полный код :

код Язык:javascript
копировать
% Очистить предыдущую переменную или память
clear; 

% генерировать Гауссов белый шум последовательность , иметь в виду 0 , дисперсия 1
% генерироватьиз Гауссов белый шум последовательность это иметь 200 вектор-строка элементов
xn = randn(1,200); 

% настраивать соотношение сигнал/шум 
SNR = 7;

% в соответствии ссоотношение сигнал/шум вычислить Сигнал Амплитуда
A = sqrt( 2 * 10^(SNR/10) );

% в соответствии сAsinωnпроизводить 200 индивидуальный Сигнал
x1 = A * sin( pi * 0.165 * (0:199) ); 

% Сигнал+ Гауссов белый шум
x = x1 + xn; 

% просить x из Автокорреляционная функция , Длинадля2N-1
y = xcorr(x, x); 

% власть : Автокорреляционная функция Амплитуда проситьсредний
% Автокорреляционная функция Да 200 индивидуальныйвласть Нова
y = y / 200; 

%Создать занавес
figure;
%рисовать "выходпоследовательность" изображение , Точки представлены верхними треугольниками.
plot(y);

% открытая сетка
grid on;

Результат выполнения:

boy illustration
Углубленный анализ переполнения памяти CUDA: OutOfMemoryError: CUDA не хватает памяти. Попыталась выделить 3,21 Ги Б (GPU 0; всего 8,00 Ги Б).
boy illustration
[Решено] ошибка установки conda. Среда решения: не удалось выполнить первоначальное зависание. Повторная попытка с помощью файла (графическое руководство).
boy illustration
Прочитайте нейросетевую модель Трансформера в одной статье
boy illustration
.ART Теплые зимние предложения уже открыты
boy illustration
Сравнительная таблица описания кодов ошибок Amap
boy illustration
Уведомление о последних правилах Points Mall в декабре 2022 года.
boy illustration
Даже новички могут быстро приступить к работе с легким сервером приложений.
boy illustration
Взгляд на RSAC 2024|Защита конфиденциальности в эпоху больших моделей
boy illustration
Вы используете ИИ каждый день и до сих пор не знаете, как ИИ дает обратную связь? Одна статья для понимания реализации в коде Python общих функций потерь генеративных моделей + анализ принципов расчета.
boy illustration
Используйте (внутренний) почтовый ящик для образовательных учреждений, чтобы использовать Microsoft Family Bucket (1T дискового пространства на одном диске и версию Office 365 для образовательных учреждений)
boy illustration
Руководство по началу работы с оперативным проектом (7) Практическое сочетание оперативного письма — оперативного письма на основе интеллектуальной системы вопросов и ответов службы поддержки клиентов
boy illustration
[docker] Версия сервера «Чтение 3» — создайте свою собственную программу чтения веб-текста
boy illustration
Обзор Cloud-init и этапы создания в рамках PVE
boy illustration
Корпоративные пользователи используют пакет регистрационных ресурсов для регистрации ICP для веб-сайта и активации оплаты WeChat H5 (с кодом платежного узла версии API V3)
boy illustration
Подробное объяснение таких показателей производительности с высоким уровнем параллелизма, как QPS, TPS, RT и пропускная способность.
boy illustration
Удачи в конкурсе Python Essay Challenge, станьте первым, кто испытает новую функцию сообщества [Запускать блоки кода онлайн] и выиграйте множество изысканных подарков!
boy illustration
[Техническая посадка травы] Кровавая рвота и отделка позволяют вам необычным образом ощипывать гусиные перья! Не распространяйте информацию! ! !
boy illustration
[Официальное ограниченное по времени мероприятие] Сейчас ноябрь, напишите и получите приз
boy illustration
Прочтите это в одной статье: Учебник для няни по созданию сервера Huanshou Parlu на базе CVM-сервера.
boy illustration
Cloud Native | Что такое CRD (настраиваемые определения ресурсов) в K8s?
boy illustration
Как использовать Cloudflare CDN для настройки узла (CF самостоятельно выбирает IP) Гонконг, Китай/Азия узел/сводка и рекомендации внутреннего высокоскоростного IP-сегмента
boy illustration
Дополнительные правила вознаграждения амбассадоров акции в марте 2023 г.
boy illustration
Можно ли открыть частный сервер Phantom Beast Palu одним щелчком мыши? Супер простой урок для начинающих! (Прилагается метод обновления сервера)
boy illustration
[Играйте с Phantom Beast Palu] Обновите игровой сервер Phantom Beast Pallu одним щелчком мыши
boy illustration
Maotouhu делится: последний доступный внутри страны адрес склада исходного образа Docker 2024 года (обновлено 1 декабря)
boy illustration
Кодирование Base64 в MultipartFile
boy illustration
5 точек расширения SpringBoot, супер практично!
boy illustration
Глубокое понимание сопоставления индексов Elasticsearch.
boy illustration
15 рекомендуемых платформ разработки с нулевым кодом корпоративного уровня. Всегда найдется та, которая вам понравится.
boy illustration
Аннотация EasyExcel позволяет экспортировать с сохранением двух десятичных знаков.