extractsigroi

Извлечение необходимых областей на основе маски сигнала

Описание

пример

sigroi = extractsigroi(msk,x) извлекает необходимые области вектора входного сигнала x на основе источника и свойств в msk.

пример

sigroi = extractsigroi(msk,x,Name,Value) задает дополнительные опции, используя аргументы пары "имя-значение". Можно выбрать сцепление извлеченных областей и выбрать число регионов для извлечения по категориям.

[sigroi,limits] = extractsigroi(___) возвращает массив с расположениями извлеченных конечных точек области.

[sigroi,limits,numroi,cats] = extractsigroi(___) также возвращается numroiвектор, содержащий число регионов, найденных для каждой из категорий, перечисленных в cats.

Примеры

свернуть все

Рассмотрим таблицу видимых областей (ROI) с тремя маркированными областями A и две области, маркированные B. Используйте таблицу, чтобы создать signalMask объект.

roiTbl = table([2 5; 7 10; 12 13; 15 25; 28 30],["A","B","A","B","A"]');

m = signalMask(roiTbl);

Сгенерируйте массив с простыми числами меньше 150. Используйте signalMask объект для извлечения простых чисел, заданных в таблице ROI. Отобразите первый набор A простые и первый набор B простые числа.

prm = primes(150);

rgs = extractsigroi(m,prm);

AB = [rgs{1}{1} rgs{2}{1}]
AB = 4×2

     3    17
     5    19
     7    23
    11    29

Повторите операцию, но теперь объедините необходимые области для каждой категории. Отобразите первые шесть A простые и последние шесть B простые числа.

rgs = extractsigroi(m,prm,'ConcatenateRegions',true);

AB = [rgs{1}(1:6) rgs{2}(end-5:end)]
AB = 6×2

     3    71
     5    73
     7    79
    11    83
    37    89
    41    97

Повторите операцию, но теперь игнорируйте области с двумя выборками или менее. Отобразите первые шесть A простые и последние шесть B простые числа.

m.MinLength = 3;

rgs = extractsigroi(m,prm,'ConcatenateRegions',true);

AB = [rgs{1}(1:6) rgs{2}(end-5:end)]
AB = 6×2

     3    71
     5    73
     7    79
    11    83
   107    89
   109    97

Входные параметры

свернуть все

Маска сигнала, заданная как signalMask объект.

Пример: signalMask(table([2 4;6 7],["male" "female"]')) задает маску сигнала с тремя образцами male область и двухвыборочный female область.

Пример: signalMask(categorical(["" "male" "male" "male" "" "female" "female" ""]',["male" "female"])) задает маску сигнала с тремя образцами male область и двухвыборочный female область.

Пример: signalMask([0 1 1 1 0 0 0 0;0 0 0 0 0 1 1 0]','Categories',["male" "female"]) задает маску сигнала с тремя образцами male область и двухвыборочный female область.

Входной сигнал, заданный как вектор.

Пример: chirp(0:1/1e3:1,25,1,50) задает щебет, дискретизированный с частотой дискретизации 1 кГц.

Типы данных: single | double
Поддержка комплексного числа: Да

Аргументы в виде пар имя-значение

Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

Пример: 'ConcatenateRegions',true,'SelectedRegions',[2 4] указывает, что функция извлекает вторую и четвертую области каждой категории и объединяет их.

Опция для конкатенации извлеченных областей сигнала, заданная как разделенная разделенными запятой парами, состоящая из 'ConcatenateRegions' и логическое значение.

  • Если для этого аргумента задано значение false, затем каждая камера sigroi - массив ячеек, соответствующий отдельной области сигнала.

  • Если для этого аргумента задано значение true, затем каждая камера sigroi является вектором конкатенированных выделенных сигнальных областей для каждой категории, содержащейся в msk.

Типы данных: logical

Области, выбранные для извлечения, заданные как разделенная разделенными запятой парами, состоящая из 'SelectedRegions' и вектор из целых чисел.

  • Если для этого аргумента задано значение 1, затем extractsigroi извлекает только первую область каждой категории и возвращает ее в sigroi.

  • Если для этого аргумента задано значение [i j k ...], затем extractsigroi извлекает ith, jth, kth, и последующие области каждой категории и возвращает их в sigroi.

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

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Выходные аргументы

свернуть все

Сигнал необходимых областей, возвращается как массив ячеек. Каждая камера sigroi содержит массив ячеек с сигнальными областями, извлеченными для каждой категории в msk.

  • Если 'ConcatenateRegions' установлено в false, затем каждая камера sigroi - массив ячеек, соответствующий отдельной области сигнала.

  • Если 'ConcatenateRegions' установлено в true, затем каждая камера sigroi является вектором конкатенированных выделенных сигнальных областей для каждой категории, содержащейся в msk.

Извлеченные пределы области, возвращенные как массив ячеек из двухколоночных матриц. Если msk задает SampleRateпределы области выражены в секундах. Если msk не задает частоту дискретизации, пределы области являются целыми числами, соответствующими индексам дискретизации сигналов.

Число регионов, найденных для каждой из категорий в cats, возвращается как вектор целых чисел.

Список категорий, возвращенный как вектор строк.

Введенный в R2020b