Для выполнения операции на основе ядра, такой как фильтрация пикселя на краю кадра, алгоритмы Vision HDL Toolbox™ накладывают на края кадра дополнительные пикселы. Эти пиксели заполнения используются только для внутреннего вычисления. Выходной кадр имеет те же размеры, что и входной кадр. Операция заполнения назначает шаблон значений пикселей неактивным пикселям вокруг кадра. Алгоритмы панели инструментов Vision HDL обеспечивают заполнение по постоянному значению, репликации или симметрии.
Некоторые блоки и системные объекты также поддерживают отказ от установки значений пикселя заполнения. Эта опция уменьшает аппаратные ресурсы, используемые блоком, и блокирование, требуемое между кадрами, но влияет на точность выходных пикселей на краях кадра.
На диаграммах показан верхний левый угол кадра с добавленным заполнением для размещения ядра фильтра 5 на 5. При вычислении отфильтрованного значения для верхнего левого активного пикселя алгоритм требует двух строк и двух столбцов заполнения. Край активного изображения обозначается двойной линией.
| Тип заполнения | Описание | Диаграмма |
|---|---|---|
Constant | Каждому добавленному пикселю присваивается одинаковое значение. Для некоторых блоков и системных объектов можно задать постоянное значение. Стоимость | На схеме
|
Replicate | Значения пикселей на краю активного кадра повторяются для формирования строк и столбцов заполняющих пикселей. | Диаграмма показывает шаблон реплицированных значений, назначенных неактивным пикселям вокруг активного кадра.
|
Symmetric | Пиксели заполнения добавляются таким образом, чтобы они отражали край изображения. | Диаграмма показывает образец симметричных значений, назначенных неактивным пикселям вокруг активного кадра. Значения пикселей симметричны относительно края изображения в обоих измерениях.
|
None | Этот параметр исключает логику заполнения. Буфер строк не устанавливает для пикселов вне кадра изображения какое-либо конкретное значение. В вычислении ядра используется текущее значение в буфере строки. Для поддержания синхронизации потока пикселей выходной кадр имеет тот же размер, что и входной кадр. Однако, чтобы избежать использования пикселов, вычисленных из неопределенных значений заполнения, маскируйте KernelSize/2 пикселы вокруг края кадра для выполнения нисходящих операций. Исключение заполнения может быть полезно для приложений, удовлетворяющих любому из этих условий.
Пример см. в разделе Увеличение пропускной способности при отсутствии заполнения. | На диаграмме показаны неопределенные значения неактивных пикселей вокруг активного кадра.
|
Заполнение требует минимального периода горизонтального и вертикального гашения. Этот интервал дает алгоритму время для добавления и сохранения дополнительных пикселей. Период гашения или неактивная пиксельная область должны быть по крайней мере пикселями KernelWidth по горизонтали и линиями KernelHeight по вертикали.
При установке для метода «Заполнение» значения None, период горизонтального гашения должен иметь не менее 6 пикселей переднего крыльца и 6 пикселей заднего крыльца. Для блока «Медианный фильтр» для метода «Заполнение» установлено значение None, горизонтальная заглушка должна иметь не менее 10 пикселей переднего крыльца и 10 пикселей заднего крыльца. Вертикальная заглушка по-прежнему должна быть строкой KernelHeight.
Фильтр изображений | visionhdl.ImageFilter