Интерполяция значений реальных входных выборок
Панель инструментов системы DSP/Операции с сигналами

Блок интерполяции интерполирует дискретные вещественные входные данные с использованием линейной или FIR-интерполяции. Блок принимает вектор, матрицу или N-D массив. Блок выводит скаляр, вектор, матрицу или N-D массив интерполированных значений.
Необходимо указать точки интерполяции, время интерполяции значений в IPts-массиве интерполяции на одной основе. Запись 1 в IPts относится к первой выборке входных данных, запись 2.5 относится к выборке на полпути между второй и третьей входными выборками и так далее. В зависимости от размеров входных данных IPts может быть скаляром, строкой длиной P или вектором столбца, матрицей P-by-N или массивом N-D, где P - размер первого размера массива N-D. В большинстве случаев P может быть любым положительным целым числом. Дополнительные сведения о допустимых массивах интерполяции см. в таблицах точек Pts и Interpolation.
В большинстве случаев блок применяет IPts в первом измерении N-D входного массива или к каждому входному вектору. Можно задать блок, чтобы применить один и тот же массив интерполяции для всех входных данных, статических точек интерполяции, введенных в маску блока, или использовать другой массив интерполяции для каждого N-D массива, матрицы или векторного ввода, изменяющихся во времени точек интерполяции, полученных через Pts входной порт.
In - Входной сигналВходной сигнал, заданный как скаляр, вектор, матрица или N-D массив.
Этот порт не имеет имени до Source of interpolation points имеет значение Input port.
Типы данных: single | double
Pts - Точки интерполяцииТочки интерполяции, заданные как скаляр, вектор, матрица или массив N-D.
Дополнительные сведения о поведении блока при Source of interpolation points параметр имеет значение Input port, см. раздел Как блок применяет массивы интерполяции к входам.
Этот порт недоступен до Source of interpolation points имеет значение Input port.
Типы данных: single | double
Out - Выходной сигналВыходной сигнал, заданный как вектор, матрица или N-D массив.
Этот порт не имеет имени до Source of interpolation points имеет значение Input port.
Типы данных: single | double
Source of interpolation points - Метод ввода точек интерполяцииSpecify via dialog (по умолчанию) | Input portВыберите способ задания точек интерполяции:
Specify via dialog -- Interpolation points параметр становится доступным. Эта опция используется для статических точек интерполяции.
Input port -- Pts на блоке появляется порт. Блок использует вход в этот порт в качестве точек интерполяции. Эта опция используется для изменяющихся во времени точек интерполяции.
Дополнительные сведения см. в разделах Задание точек статической интерполяции и Определение точек интерполяции с изменяющимся временем.
Interpolation points - Точки интерполяции[1.1 4.8 2.67 1.6 3.2]' (по умолчанию) | скаляр | вектор | матрица | массив N-DМассив точек времени для интерполяции входного сигнала (IPts). Запись 1 в IPts относится к первой выборке ввода, запись 2.5 относится к выборке на полпути между второй и третьей выборкой ввода и так далее. См. раздел Как блок применяет массивы интерполяции к входам.
Настраиваемый: Да
Этот параметр становится доступным только в том случае, если Source of interpolation points имеет значение Specify via dialog. Дополнительные сведения см. в разделе Определение точек статической интерполяции.
Interpolation mode - Режим интерполяцииLinear (по умолчанию) | FIRЗадает блок для интерполяции Linear или FIR интерполяция. Дополнительные сведения см. в разделах Режим линейной интерполяции и Режим интерполяции КИХ.
Interpolation filter half-length - Половина длины интерполяционного фильтра FIR3 (по умолчанию) | положительное целое числоУкажите половину длины фильтра интерполяции FIR (P). Для выполнения интерполяции в FIR режим, блок использует ближайший 2 ×P низкоскоростные выборки. В большинстве случаев P низкоскоростные выборки должны появляться под и над каждой точкой интерполяции. Если интерполяция выполняется в точке низкоскоростной выборки, блок включает эту низкоскоростную выборку в требуемые 2 *P образцы и требуется только 2 *P-1 соседняя низкоскоростная выборка. Если точка интерполяции не имеет требуемого количества соседних низкоскоростных выборок, блок интерполирует эту точку с помощью линейной интерполяции.
Этот параметр становится доступным только в том случае, если Interpolation mode имеет значение FIR. Дополнительные сведения см. в разделе Режим интерполяции FIR.
Interpolation points per input sample - Точки интерполяции на образец3 (по умолчанию)Количество точек на входную выборку, коэффициент повышения дискретизации (L), при котором блок вычисляет уникальный фильтр интерполяции КИХ. Для выполнения FIR-интерполяции блок использует многофазную структуру, которая имеет L рукава фильтра длиной 2 *P.
Например, если L=4блок создает многофазный фильтр с четырьмя ветвями. Блок затем интерполирует в точках, соответствующих 1 + i/L, 2 + i/L, 3 + i/L..., где целые числа 1, 2 и 3 представляют низкоскоростные выборки, и i =0,1,2,3. Для интерполяции в точке, которая не соответствует непосредственно плечу многофазного фильтра, требуется дополнительное вычисление. Блок сначала округляет эту точку до ближайшего значения, которое соответствует плечу многофазного фильтра. Для интерполяции в точке 2.2 блок округляет 2.2 до 2 и вычисляет FIR-интерполяцию, используя первое плечо полифазной структуры фильтра. Аналогично, для интерполяции точки 2.65 блок округляет значение до 2,5 и использует третье плечо полифазной структуры фильтра.
Этот параметр становится доступным только в том случае, если Interpolation mode имеет значение FIR. Дополнительные сведения см. в разделе Режим интерполяции FIR.
Normalized input bandwidth - Нормализованная полоса пропускания на входе0.5 (по умолчанию) | скаляр в (0 1]Ширина полосы пропускания входа, деленная на Fs/2 (половина частоты входной выборки), заданная как скаляр в диапазоне (0 1].
Этот параметр становится доступным только в том случае, если Interpolation mode имеет значение FIR. Дополнительные сведения см. в разделе Режим интерполяции FIR.
Out of range interpolation points - Обработка ошибок для точек вне диапазонаClip (по умолчанию) | Clip and warn | ErrorДопустимые значения в IPts интерполяционного массива находятся в диапазоне от 1 до числа выборок в каждом канале входа. Например, заданный входной вектор длины-5 D, все записи IPts должны находиться в диапазоне от 1 до 5. IPts не может содержать записи, такие как 7 или -9, так как нет 7-й или -9-й записи в D.
Параметр Точки интерполяции вне диапазона задает способ обработки блоком точек интерполяции, которые выходят за пределы допустимого диапазона. Параметр имеет следующие настройки:
Clip - Блок заменяет любые значения вне диапазона в IPts ближайшим значением в допустимом диапазоне (от 1 до числа входных выборок), а затем переходит к вычислениям с использованием отсеченной версии IPts.
Clip and warn - В дополнение к Clipкаждый раз при отсечении блок выдает предупреждение в командной строке MATLAB ®.
Error - Когда блок обнаруживает значение вне диапазона в IPts, моделирование останавливается, и блок выдает ошибку в командной строке MATLAB.
В качестве примера отсечения предположим, что блок настроен на отсечение точек интерполяции вне диапазона и получает эти входные векторные и интерполяционные точки:
D = [11 22 33 44]'
IPts = [10 2.6 -3]'
Поскольку D имеет четыре выборки, допустимые точки интерполяции находятся в диапазоне от 1 до 4. Блок отсекает точку интерполяции от 10 до 4 и точку от -3 до 1, что приводит к отсеченному вектору интерполяции. IPtsClipped = [4 2.6 1]'.
Типы данных |
|
Прямой проход |
|
Многомерные сигналы |
|
Сигналы переменного размера |
|
Обнаружение пересечения нулей |
|
Чтобы предоставить блоку статический массив интерполяции, то есть массив интерполяции, применяемый к каждому вектору или N-D массиву входных данных), выполните следующие шаги:
Установите Source of interpolation points параметр для Specify via dialog.
Введите массив интерполяции в поле Interpolation points параметр. Сведения о интерполяционных массивах см. в разделе Как блок применяет интерполяционные массивы к входам.
Чтобы предоставить блоку изменяющиеся во времени интерполяционные массивы, где блок использует разные интерполяционные массивы для каждого входного вектора или N-D массива, выполните следующие шаги:
Установите Source of interpolation points параметр для Input port. Pts на блоке появляется порт.
Создайте сигнал интерполяционных массивов и подайте его в порт Pts. Блок использует вход в этот порт в качестве точек интерполяции. Сведения о интерполяционных массивах см. в разделе Как блок применяет интерполяционные массивы к входам.
Матрица интерполяции IPts представляет моменты времени, в которые следует интерполировать значения входного сигнала. Запись 1 в IPts относится к первой выборке ввода, запись 2.5 относится к выборке на полпути между второй и третьей выборкой ввода и так далее. В большинстве случаев, когда IPts является вектором, он может быть любой длины.
Допустимые значения в массиве интерполяции, IPts, варьируются от 1 до числа выборок в каждом канале входа. Сведения о том, как блок обрабатывает значения интерполяции вне диапазона, см. в разделе Out of range interpolation points.
В зависимости от размера входа и размера IPts блок обычно применяет IPts к входу одним из следующих способов:
Применяет массив IPts к первому измерению массива N-D, что приводит к выходу массива ND.
Применяет вектор IPts к каждому входному вектору (как если бы входной вектор был одним каналом), что приводит к выходу вектора с той же ориентацией, что и вход (строка или столбец).
Эти таблицы суммируют, как блок применяет IPts интерполяционного массива ко всем возможным типам входных данных, и показывают результирующие размеры выходных данных.
Первая таблица описывает поведение блока при Source of interpolation points является Specify via dialog.
Диалоговое окно «Задание точек интерполяции через»
| Входные размеры | Допустимые размеры элементов I массива интерполяции | Как блок применяет I Pts к входу | Выходные размеры (на основе рамок) |
|---|---|---|---|
Матрица M-by-N-by-K | P-by-1 столбец | Применяет IPts к первому измерению ввода | Массив P-by-N-by-K |
Матрица P-by-N-by-K | Применяет каждый столбец IPts (каждый элемент IPts) к соответствующему столбцу входной матрицы | Массив P-by-N-by-K | |
Матрица M-by-N | 1-by-N строка | Применяет каждый столбец IPts (каждый элемент IPts) к соответствующему столбцу входной матрицы | 1-by-N строка |
P-by-1 столбец | Применяет IPT к каждому входному столбцу | Матрица P-by-N | |
Матрица P-by-N | Применяет столбцы IPts к соответствующим столбцам входной матрицы | ||
M-by-1 столбец | P-by-1 столбец | Применение IPT к входному столбцу | P-by-1 столбец |
1-by-N строка не рекомендуется | 1-by-N строка | Неприменимо. Блок копирует входной вектор | 1-by-N строка, копия входного вектора |
P-by-1 столбец | Матрица P-by-N, где каждая строка является копией входного вектора | ||
Матрица P-by-N |
Следующая таблица описывает поведение блока, когда источником точек интерполяции является Input port.
Задание точек интерполяции через входной порт
| Входные размеры | Допустимые размеры I ст интерполяционного массива | Как блок применяет I Pts к входу | Выходные размеры (на основе рамок) |
|---|---|---|---|
Матрица M-by-N-by-K | Неориентированный вектор или вектор столбца длиной P | Применяет IPts к первому измерению ввода | Массив P-by-N-by-K |
Матрица P-by-N-by-K | Применяет каждый столбец IPts (каждый элемент IPts) к соответствующему столбцу входной матрицы | Массив P-by-N-by-K | |
Матрица M-by-N | 1-by-N строка | Применяет каждый столбец IPts (каждый элемент IPts) к соответствующему столбцу входной матрицы | 1-by-N строка |
P-by-1 столбец | Применяет IPT к каждому входному столбцу | Матрица P-by-N | |
Матрица P-by-N | Применяет столбцы IPts к соответствующим столбцам входной матрицы | ||
M-by-1 столбец | P-by-1 столбец | Применение IPT к входному столбцу | P-by-1 столбец |
1-by-N строка не рекомендуется | 1-by-N строка | Неприменимо. Блок копирует входной вектор | 1-by-N строка, копия входного вектора |
P-by-1 столбец | Матрица P-by-N, где каждая строка является копией входного вектора | ||
Матрица P-by-N |
Когда Interpolation mode имеет значение Linearблок интерполирует значения данных, предполагая, что данные изменяются линейно между выборками, взятыми в смежные моменты времени выборки.
Например, если входной сигнал D = [1 2 1,5 3 0,25] ', график слева показывает выборки в D, а график справа показывает линейно интерполированные значения между выборками в D.

Следующий рисунок иллюстрирует случай блока в режиме линейной интерполяции, который настроен на отсечение точек интерполяции вне диапазона. Вектор D передает входные данные, а вектор IPts - точки интерполяции:
D = [1 2 1.5 3 0.25]'
IPts = [-4 2.7 4.3 10]'
Блок отсекает недопустимые точки интерполяции и выводит линейно интерполированные значения в вектор. [1 1.65 2.175 0.25]'.

Когда Interpolation mode имеет значение FIRблок интерполирует значения данных с использованием фильтра интерполяции КИХ, заданного различными параметрами блока. Дополнительные сведения см. в разделе Режим интерполяции КИХ во вхождении блока «Переменная дробная задержка».
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.