Перейти к содержимому
Compvision.ru

Recommended Posts

Какие фильтры можно применять к 1D сигналам?

Только blur()(еще boxFilter, хотя это тоже самое), GaussianBlur()?

Для свертки есть только filter2D(но соответсвенно он только для изображений)?

Изменено пользователем mrgloom

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Как-то применял еще морфологию, для постобработки гистограмм.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Какие фильтры можно применять к 1D сигналам?

Только blur()(еще boxFilter, хотя это тоже самое), GaussianBlur()?

Для свертки есть только filter2D(но соответсвенно он только для изображений)?

Да практически любые. Не вижу никаких принципиальных проблем с 1D сигналами. Лучше спроси, какие нельзя? Этот вопрос будет посложней.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Я не про теоретически применимые, а про то как это сделать в OpenCV

Не нашел ф-ии для одномерной конволюции.

т.е. вопрос скорее надо поставить так не "Какие фильтры можно применять к 1D сигналам?"

а какие функции для фильтрации в Opencv можно применять к 1D сигналам.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Я правильно понимаю, что 1D сигнал - это та же cv::Mat с rows == 1? Если да, то какая функция отказывается с ней работать?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Да,  это матрица состоящая только из одной строки.

хм я думал, те ф-ии которые не поддерживаются подачи кернела вручную будут выдавать ошибку

т.е. допустим фильтруется 1 колонка и размер кернела и задается вручную Size(1,3)

GaussianBlur(m.col(0), m.col(0), Size(1,3), 1.0);
blur(m.col(0), m.col(0), Size(1,3));

 

например для medianBlur задается только размер кернела

    Mat t= gray.row(0);
    Mat dst;
    cout<<t<< endl;
    medianBlur(t,dst,3); // if 1 then dst same as t
    cout<<t-dst<< endl;

в итоге ф-ия отрабатывает без ошибок и что то делает, но делает ли она то что надо по сорцам я понять не смог т.к. там очень много веток и всё низкоуровневое.

https://github.com/Itseez/opencv/blob/56e637d5f44e71499178fa12fa2f6abf21558c02/modules/imgproc/src/smooth.cpp

кстати в какой то из веток там используется Median Filtering in Constant Time

http://nomis80.org/ctmf.html

 

 

 

п.с. похоже вставка ссылок не работает.

 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Вроде все хорошо: Ссылка

http://www.compvision.ru

Изменено пользователем Smorodov

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте учётную запись или войдите для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать учётную запись

Зарегистрируйтесь для создания учётной записи. Это просто!

Зарегистрировать учётную запись

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас


  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу

×