exponenta event banner

Увеличьте резкость изображения

Чтобы увеличить резкость цветного изображения, необходимо сделать luma переходы интенсивности более острыми при сохранении информации о цвете изображения. Для этого вы преобразуете R'G'B' изображение в цветовое пространство Y'CbCr и применяете фильтр highpass к luma фрагменту изображения только. Затем вы преобразовываете изображение назад к R'G'B' цветовое пространство, чтобы просмотреть результаты. Чтобы размыть изображение, вы применяете фильтр lowpass к luma фрагменту изображения. В этом примере показано, как использовать блок the 2-D FIR Filter, чтобы увеличить резкость изображения. Главное обозначение указывает, что сигналы являются откорректированной гаммой.

  1. Задайте R'G'B' изображение в MATLAB® рабочая область. Чтобы читать в R'G'B', изображение из файла PNG и бросить его к типу данных с двойной точностью, в командной строке MATLAB, вводит

    I= im2double(imread('peppers.png')); 
    

    I 384 512 3 массивами значений с плавающей точкой с двойной точностью. Каждая плоскость этого массива представляет красные, зеленые, или синие значения цвета изображения.

    Модель, которой предоставляют этот пример уже, включает этот код в file> Model Properties> Model Properties> InitFcn, и выполняет его до симуляции.

  2. Чтобы просмотреть изображение, этот массив представляет, введите эту команду в командной строке MATLAB:

    imshow(I)
    

    Теперь, когда вы задали свое изображение, можно создать модель.

  3. Создайте новый Simulink® модель, и добавляет в него блоки, показанные в следующей таблице.

    Блок

    Библиотека

    Количество

    Отобразите из рабочей области

    Computer Vision Toolbox™> Источники

    1

    Преобразование цветового пространства

    Computer Vision Toolbox> Преобразования

    2

    2D КИХ-фильтр

    Computer Vision Toolbox> Фильтрация

    1

    Video Viewer

    Computer Vision Toolbox> Приемники

    1

  4. Используйте блок Image From Workspace, чтобы импортировать R'G'B' изображение из рабочего пространства MATLAB. Установите параметры можно следующим образом:

    • Панель Main, Value = I

    • Панель Main, Image signal = Separate color signals

    Блок выводит R', G' и B' плоскости I массив в выходных портах.

  5. Первый блок Color Space Conversion преобразует информацию о цвете от R'G'B' цветовое пространство к цветовому пространству Y'CbCr. Установите параметр Image signal на Separate color signals

  6. Используйте 2D блок FIR Filter, чтобы отфильтровать luma фрагмент изображения. Установите параметры блоков можно следующим образом:

    • Coefficients = fspecial('unsharp')

    • Output size = Same as input port I

    • Padding options = Symmetric

    • Filtering based on = Correlation

    fspecial('unsharp') команда создает двумерные коэффициенты фильтра highpass, подходящие для корреляции. Этот фильтр highpass увеличивает резкость изображения путем удаления низкочастотного шума в нем.

  7. Второй блок Color Space Conversion преобразует информацию о цвете от цветового пространства Y'CbCr до R'G'B' цветовое пространство. Установите параметры блоков можно следующим образом:

    • Conversion = Y'CbCr to R'G'B'

    • Image signal = Separate color signals

  8. Используйте блок Video Viewer, чтобы автоматически отобразить новое, более резкое изображение в окне Video Viewer, когда вы запустите модель. Установите параметр Image signal на Separate color signals, путем выбора File > Image Signal.

  9. Соедините блоки как показано в следующем рисунке.

  10. Установите параметры конфигурации. Откройте диалоговое окно Configuration Parameters от вкладки Modeling путем выбора Model Settings> Model Settings. Установите параметры можно следующим образом:

    • Панель Solver, Stop time = 0

    • Панель Solver, Type = Fixed-step

    • Панель Solver, Solver = Discrete (no continuous states)

  11. Запустите модель.

    Более резкая версия оригинального изображения появляется в окне Video Viewer.

    Чтобы размыть изображение, дважды кликните 2D блок FIR Filter. Установите параметр Coefficients на fspecial('gaussian',[15 15],7) и затем нажмите OK. fspecial('gaussian',[15 15],7) команда создает двумерные Гауссовы коэффициенты фильтра lowpass. Этот фильтр lowpass размывает изображение путем удаления высокочастотного шума в нем.

В этом примере вы использовали Преобразование Цветового пространства и 2D КИХ-блоки Фильтра, чтобы увеличить резкость изображения. Для получения дополнительной информации смотрите Color Space Conversion и 2-D FIR Filter, и fspecial страницы с описанием.