2-D DCT

Вычислите 2D дискретное косинусное преобразование (DCT)

  • Библиотека:
  • Computer Vision Toolbox / Преобразовывает

  • 2-D DCT block

Описание

2D блок DCT вычисляет двумерное дискретное косинусное преобразование изображения. Предположим, что f (x, y) является входным изображением размерности M-by-N, уравнение для 2D DCT

F(m,n)=2MNC(m)C(n)x=0M1y=0N1f(x,y)cos(2x+1)mπ2Mcos(2y+1)nπ2N

где C(m)=C(n)=1/2 для m,n=0 и C(m),C(n)=1 в противном случае.

Количество строк и столбцов входного изображения должно быть степенью 2. Можно также использовать этот блок, чтобы вычислить 1D DCT вектора.

Порты

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

развернуть все

Входные данные в виде числовой матрицы или вектора. Размер входных данных должен быть степенью 2.

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

Вывод

развернуть все

Выходные данные, содержащие коэффициенты DCT, возвращенные как матрица или вектор. Размер и тип данных выхода - то же самое как тот из входа.

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

Параметры

развернуть все

Main Tab

Используйте этот параметр, чтобы задать, как блок вычисляет синус и термины косинуса в алгоритме DCT.

  • Если вы выбираете Trigonometric fcn, блок вычисляет синус и значения косинуса во время симуляции.

  • Если вы выбираете Table lookup, блок вычисляет и хранит тригонометрические значения, прежде чем симуляция запустится. В этом случае блок требует дополнительной памяти. Table lookup значение по умолчанию.

Data Types Tab

Фиксированная точка операционные параметры

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

Примечание

Табличные значения синуса не выполняют этот параметр; они всегда вокруг к Nearest.

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

Для получения дополнительной информации на насыщайте и переносите, смотрите, что Переполнение Обрабатывает для операций фиксированной точки.

Примечание

Табличные значения синуса не выполняют этот параметр; вместо этого, они всегда насыщаются.

Типы данных с фиксированной точкой

Используйте этот параметр, чтобы задать размер слова значений таблицы синуса. Дробная длина табличных значений синуса всегда равняется размеру слова минус один.

Табличные значения синуса не выполняют параметры Saturate on integer overflow и Rounding mode; вместо этого, они всегда насыщаются и округляются к Nearest.

Используйте этот параметр, чтобы задать тип выходных данных продукта. Смотрите Типы данных с фиксированной точкой и Типы данных Умножения для рисунков, изображающих использование типа выходных данных продукта в этом блоке.

Используйте этот параметр, чтобы задать тип данных аккумулятора. Смотрите Типы данных с фиксированной точкой для рисунков, изображающих использование типа данных аккумулятора в этом блоке.

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

  • Inherit: Inherit via internal rule, блок вычисляет выходной размер слова и дробную длину автоматически. Внутреннее правило сначала вычисляет идеальный выходной размер слова и дробную длину с помощью следующих уравнений:

    WLideal output=WLinput+floor(log2(DCT length1))+1

    FLideal output=FLinput

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

Выберите этот параметр, чтобы препятствовать тому, чтобы Fixed-Point Tool заменили типы данных, которые вы задаете на маске блока. Для получения дополнительной информации смотрите fxptdlg (Fixed-Point Designer), страница с описанием на Fixed-Point Tool.

Характеристики блока

Типы данных

double | fixed point | integer | single

Многомерные сигналы

no

Сигналы переменного размера

no

Больше о

развернуть все

Ссылки

[1] Чен, W.H, К.Х. Смит и Южная Каролина Fralick, “Быстрый вычислительный алгоритм для дискретного косинусного преобразования”, Сделка IEEE. Коммуникации, 25 (1977): 1004-1009.

[2] Ван, Z. “Алгоритмы FAST для дискретного W преобразовывают и для дискретного преобразования Фурье”, Сделка IEEE Acoust., Речь, Обработка сигналов, 32 (август 1984): 803-816.

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью Simulink® Coder™.

Смотрите также

Блоки

Функции

Представлено до R2006a
Для просмотра документации необходимо авторизоваться на сайте