Как выполнить размытие с помощью Simulink/Computer Vision Toolbox?

Не удается найти блок Simulink для выполнения размытия. Может быть, предполагается построить этот функционал из существующих блоков?

Но прямые подходы мне не помогли.

Например, следующая модель

введите здесь описание изображения

вызывает ошибку

Правило зависимости измерения, указанное для «Test_Blur/2-D Convolution», недопустимо. Входной порт 2 не может иметь режим фиксированного размера.

ОБНОВЛЕНИЕ

Matlab содержит странный, висящий в воздухе пример vipeffects_win, который содержит блок с именем Effects, но не работает из коробки из-за отсутствия функции 'imgSize`.


person Suzan Cioc    schedule 22.07.2013    source источник
comment
Какой размер и типы данных являются входными данными для двумерного блока свертки? Я ничего не знаю о компьютерном зрении, но глядя на документ, кажется, что входными данными для блока должны быть 2 матрицы значений интенсивности или плоскости видеопотока RGB одного типа данных (с плавающей запятой, с фиксированной точкой). пункт и др...). Однако вывод функции fspecial возвращает двумерный фильтр, который, как я понимаю, необходимо использовать с imfilter. Может быть, это источник ошибки?   -  person am304    schedule 22.07.2013
comment
fspecial результат - это просто матрица, которую я рассматриваю как ядро ​​​​свертки   -  person Suzan Cioc    schedule 22.07.2013
comment
В Matlab есть странный, висящий в воздухе пример vipeffects_win, который содержит блок с именем Effects, но он не работает из коробки из-за отсутствия функции 'imgSize`. Эта демонстрация должна работать из коробки. Если это не так, это ошибка, о которой следует сообщить в MathWorks: mathworks. co.uk/support/service_requests/contact_support.do   -  person am304    schedule 22.07.2013
comment
Демонстрация сама по себе работает, но если я возьму из нее блок и вставлю в свою модель, она не сработает.   -  person Suzan Cioc    schedule 22.07.2013
comment
Где используется функция imgSize в демонстрационной модели? Возможно, стоит проверить обратные вызовы модели в демо, чтобы увидеть, определяется ли она там.   -  person am304    schedule 22.07.2013


Ответы (1)


imgSize — это переменная, определенная в рабочей области модели. Чтобы не использовать его, вы можете просто заглянуть под маску подсистемы эффектов. Это блок, состоящий из более мелких блоков. Вы можете перемещаться под его маской и извлекать то, что вам нужно.

Вернемся к первоначальному вопросу: чтобы размыть, просто используйте fspecial с блоком 2-D FIR из библиотеки Filtering. Вы можете использовать двумерную гауссову маску, возвращаемую командой fspecial, или вы можете взять одномерный фильтр и использовать разделяемый параметр в двумерном КИХ-блоке, чтобы ускорить вычисления, поскольку двумерный гаусс является разделимым.

person Witek    schedule 22.10.2013