Deblurring видео

              Западинский Анатолий
                      Video Group
              CS MSU Graphics & Media Lab

21.09.2010                                  1
План
    Постановка задачи
    Модели размытия
    Алгоритмы Deblurring-а
    Предлагаемый алгоритм




CS MSU Graphics & Media Lab (Video Group)   3
Постановка задачи
   Deblurring – это процесс устранения эффекта
   размытия (blur).
   Такой эффект может появиться в результате:
    плохой фокусировки камеры
    движений камеры
    движений объектов в кадре
    влияния среды
    и т.п.

CS MSU Graphics & Media Lab (Video Group)        4
Постановка задачи
     математическая модель
   Для восстановления изображения, необходимо построить
   математическую модель искажения, возникшего в процессе
   съѐмки:
                                     y  B(x)
                       B – оператор моделирующий размытие
                       x – исходная картинка
                       y – размытая картинка

   Часто в модель размытия включают влияние шума:
                               y  B(x)  
   Затем необходимо выполнить обратное преобразование в
   рамках построенной модели (зная y, найти x)

CS MSU Graphics & Media Lab (Video Group)                   5
Постановка задачи
     особенности задачи Deblurring-а
        Обратная задача не имеет корректного решения

        Решение должно быть устойчиво к шуму

        Решение должно быть устойчиво к неточному
         определению параметров

        Не существует метрики адекватной визуальному
         восприятию


CS MSU Graphics & Media Lab (Video Group)               6
Постановка задачи
     сложный Blur в видео




CS MSU Graphics & Media Lab (Video Group)   7
План
    Постановка задачи
    Модели размытия
         Uniform Blur
         Non-uniform
    Алгоритмы Deblurring-а
    Предлагаемый алгоритм




CS MSU Graphics & Media Lab (Video Group)   8
Uniform Blur
   Размытие изображения называется Uniform blur, если
   оператор размытия можно представить свѐрткой:
                            y  B( x)  y  x  psf
   Операция свѐртки представляется интегралом:
       (a * b)(i, j )   a(i  x, j  y )b( x, y )dxdy
   psf (Point Spread Function), удовлетворяет условию
   нормированности:
                                            ~ ~
                                      psf * 1  1
CS MSU Graphics & Media Lab (Video Group)                  9
Uniform Blur
     пример




       Source image                Point Spread Function   Blurred image




CS MSU Graphics & Media Lab (Video Group)                                  10
Uniform Blur
     пример




                                            Lens Blur
CS MSU Graphics & Media Lab (Video Group)               11
Non-Uniform Motion Blur
      Каждому пикселю
      или области
      изображения
      приписывается свой
      вектор размытия




CS MSU Graphics & Media Lab (Video Group)   12
Non-Uniform Motion Blur
     пример




                 Camera Motion Blur         Object Motion Blur



CS MSU Graphics & Media Lab (Video Group)                        13
Non-Uniform Motion Blur
     пример




                                       Combined Blur

            - сложный blur              - нормальный blur   - без blur-а

CS MSU Graphics & Media Lab (Video Group)                                  14
План
        Постановка задачи
        Модели размытия
        Алгоритмы Deblurring-а
             Unsharp mask
             Wiener
             Lucy-Richardson
             Регуляризационные методы
        Предлагаемый алгоритм

CS MSU Graphics & Media Lab (Video Group)   15
Unsharp mask
   В самом простом варианте, unsharp mask
   вычисляется по следующей формуле:
          x  y   ( y  B( y))  (1   ) y  B( y)
      B – оператор размытия
      y – размытое изображение
      x – резкое изображение
                                   0            1

                       x             y          B(y)

CS MSU Graphics & Media Lab (Video Group)                16
Unsharp mask (примеры)

 Blurred                                      0.5




    0.95                                    0.75


CS MSU Graphics & Media Lab (Video Group)             17
Wiener
   Теорема о свѐртке:
                        FFT (a  b)  FFT (a)  FFT (b)
   В явном виде:
                                     y ( k , l )  y0 ( k , l )
                                       ˆ             ˆ
                      x(k , l )  2 2 1
                      ˆ
                                 (k  l )    y       ˆ (k , l ) 2

   1) крайне неустойчив к неточному определению
      параметров
   2) не применим к Non-Uniform модели размытия

CS MSU Graphics & Media Lab (Video Group)                              18
Wiener
     примеры




        размытое                    восстановленное    восстановленное с
       изображение                 с точным вектором   неточным вектором

    вектор размытия:                                    вектор размытия:
   длинна 10 пикселей                                  длинна 9 пикселей
     угол 0 градусов                                     угол 5 градусов
CS MSU Graphics & Media Lab (Video Group)                                  19
Lucy-Richardson

                   *   y                  y - размытое изображение
     xi 1  xi  B         
                     B( x )               B - оператор размытия
                         i 
                                            B * - сопряженный оператор

    алгоритм итеративный, но сходится быстро
    если на изображение не накладываются
     ограничения, то LR находит оптимальное
     решение для изображений с Пуассоновским
     шумом
    сейчас LR активно используется NASA в
     астрономии
CS MSU Graphics & Media Lab (Video Group)                                20
Lucy-Richardson
     пример




                размытое                    восстановленное

CS MSU Graphics & Media Lab (Video Group)                     21
Регуляризационные
     методы
   В общем виде ищется решение задачи:

                                     
                        arg min B( x)  y   C1
                                                        
                                                  f ( x)
                           x
   В качестве C1 можно выбрать норму L2, а в качестве f можно
   выбрать x , и решать методом градиента

   1) решение ищется итеративными алгоритмами, скорость
      сходимости низкая
   2) регуляризационные методы устойчивы к неточному
      определению параметров
   3) теоретически варьированием C1 и f можно достичь
      оптимального решения

CS MSU Graphics & Media Lab (Video Group)                       22
План
    Постановка задачи
    Модели размытия
    Алгоритмы Deblurring-а
    Предлагаемый алгоритм
         Определение              размытия
         Debluring
              ЕМ минимизация артефактов
              Выделение и удаленние артефактов
         Неадекватность PSNR
         Сравнение алгоритмов
         Результаты на видео
CS MSU Graphics & Media Lab (Video Group)         23
Определение размытия
   Использование ME, как источника параметров
   размытия
   1) Определение вектора
   размытия
           BV  MV  t T
      BV – вектор размытия
      MV – вектор движения
      t – время выдержки
      T – время между кадрами               пример плохого определения
   2) Фильтрация векторов                        вектора размытия
CS MSU Graphics & Media Lab (Video Group)                                24
Определение размытия
   Типы областей после фильтрации
   1. Области не относящиеся к изображению
   2. Области для которых не удалось определить
       движение по ME
   3. Области для которых удалось определить
       движение по ME
      a) области с простым движением
      b) области со сложным движением


CS MSU Graphics & Media Lab (Video Group)         25
Артефакты Debluring-а




      Unsharp mask                          Wiener   LR

   Как видно из примеров восстановления, алгоритмы
   деблюринга создают характерные артефакты вблизи
   резких границ
CS MSU Graphics & Media Lab (Video Group)                 26
Минимизация артефактов
   Запишем решение в виде:
                  [ xi 1 ]k ,l  [ xi ]k ,l  f ([ y  B( xi )]k ,l )
   Варьированием f можно получить решение
   обладающее максимальным PSNR в областях
   образования артефактов
   Статистический анализ показал, что f хорошо
   аппроксимируется функцией вида:
                                      f ( x)  x1.2



CS MSU Graphics & Media Lab (Video Group)                                27
Минимизация артефактов
     пример восстановления




                размытое                    восстановленное

CS MSU Graphics & Media Lab (Video Group)                     28
Комбинирование алгоритмов
     описание метода
      Применяя к восстановленному (любым методом)
   изображению выделение границ, можно определить
   области содержащие артефакты.
      Затем проблемные области замещаются областями
   из изображения, полученного вышеописанным
   методом минимизации артефактов.
      Так можно получить очень быстрое, но в то же
   время качественное решение.




CS MSU Graphics & Media Lab (Video Group)             29
Предлагаемый алгоритм
     демонстрация метода




        LR




                                Маска границ
                                               Результат
Миним. артеф.
CS MSU Graphics & Media Lab (Video Group)                  30
Сравнение двух решений
     LR, PSNR 27.62 SSIM 0.768




CS MSU Graphics & Media Lab (Video Group)   31
Сравнение двух решений
     предлагаемый, PSNR 27.41 SSIM 0.764




CS MSU Graphics & Media Lab (Video Group)   32
Результаты на видео




         Кадр исходного видео               Кадр обработанного видео

                          Кадр с очень сложным движением


CS MSU Graphics & Media Lab (Video Group)                              33
Результаты на видео




         Кадр исходного видео               Кадр обработанного видео

                          Кадр с очень сложным движением


CS MSU Graphics & Media Lab (Video Group)                              34
Результаты на видео




         Кадр исходного видео               Кадр обработанного видео




CS MSU Graphics & Media Lab (Video Group)                              35
Результаты на видео




         Кадр исходного видео               Кадр обработанного видео




CS MSU Graphics & Media Lab (Video Group)                              36
Результаты на видео




             Исходное видео                 Обработанное видео




CS MSU Graphics & Media Lab (Video Group)                        37
Non-Uniform Motion Blur
     Football #56
                                            Source
                                            image




   Lucy-Richardson                                   MSU Deblur




CS MSU Graphics & Media Lab (Video Group)                         38
Non-Uniform Motion Blur
     Soccer #119
                                            Source
                                            image




   Lucy-Richardson                                   MSU Deblur




CS MSU Graphics & Media Lab (Video Group)                         39
Non-Uniform Motion Blur
     Football_2 #162
                                            Source
                                            image




   Lucy-Richardson                                   MSU Deblur




CS MSU Graphics & Media Lab (Video Group)                         40

Устранение размытости видео

  • 1.
    Deblurring видео Западинский Анатолий Video Group CS MSU Graphics & Media Lab 21.09.2010 1
  • 2.
    План  Постановка задачи  Модели размытия  Алгоритмы Deblurring-а  Предлагаемый алгоритм CS MSU Graphics & Media Lab (Video Group) 3
  • 3.
    Постановка задачи Deblurring – это процесс устранения эффекта размытия (blur). Такой эффект может появиться в результате:  плохой фокусировки камеры  движений камеры  движений объектов в кадре  влияния среды  и т.п. CS MSU Graphics & Media Lab (Video Group) 4
  • 4.
    Постановка задачи математическая модель Для восстановления изображения, необходимо построить математическую модель искажения, возникшего в процессе съѐмки: y  B(x) B – оператор моделирующий размытие x – исходная картинка y – размытая картинка Часто в модель размытия включают влияние шума: y  B(x)   Затем необходимо выполнить обратное преобразование в рамках построенной модели (зная y, найти x) CS MSU Graphics & Media Lab (Video Group) 5
  • 5.
    Постановка задачи особенности задачи Deblurring-а  Обратная задача не имеет корректного решения  Решение должно быть устойчиво к шуму  Решение должно быть устойчиво к неточному определению параметров  Не существует метрики адекватной визуальному восприятию CS MSU Graphics & Media Lab (Video Group) 6
  • 6.
    Постановка задачи сложный Blur в видео CS MSU Graphics & Media Lab (Video Group) 7
  • 7.
    План  Постановка задачи  Модели размытия  Uniform Blur  Non-uniform  Алгоритмы Deblurring-а  Предлагаемый алгоритм CS MSU Graphics & Media Lab (Video Group) 8
  • 8.
    Uniform Blur Размытие изображения называется Uniform blur, если оператор размытия можно представить свѐрткой: y  B( x)  y  x  psf Операция свѐртки представляется интегралом: (a * b)(i, j )   a(i  x, j  y )b( x, y )dxdy psf (Point Spread Function), удовлетворяет условию нормированности: ~ ~ psf * 1  1 CS MSU Graphics & Media Lab (Video Group) 9
  • 9.
    Uniform Blur пример Source image Point Spread Function Blurred image CS MSU Graphics & Media Lab (Video Group) 10
  • 10.
    Uniform Blur пример Lens Blur CS MSU Graphics & Media Lab (Video Group) 11
  • 11.
    Non-Uniform Motion Blur Каждому пикселю или области изображения приписывается свой вектор размытия CS MSU Graphics & Media Lab (Video Group) 12
  • 12.
    Non-Uniform Motion Blur пример Camera Motion Blur Object Motion Blur CS MSU Graphics & Media Lab (Video Group) 13
  • 13.
    Non-Uniform Motion Blur пример Combined Blur - сложный blur - нормальный blur - без blur-а CS MSU Graphics & Media Lab (Video Group) 14
  • 14.
    План  Постановка задачи  Модели размытия  Алгоритмы Deblurring-а  Unsharp mask  Wiener  Lucy-Richardson  Регуляризационные методы  Предлагаемый алгоритм CS MSU Graphics & Media Lab (Video Group) 15
  • 15.
    Unsharp mask В самом простом варианте, unsharp mask вычисляется по следующей формуле: x  y   ( y  B( y))  (1   ) y  B( y) B – оператор размытия y – размытое изображение x – резкое изображение  0 1 x y B(y) CS MSU Graphics & Media Lab (Video Group) 16
  • 16.
    Unsharp mask (примеры) Blurred   0.5   0.95   0.75 CS MSU Graphics & Media Lab (Video Group) 17
  • 17.
    Wiener Теорема о свѐртке: FFT (a  b)  FFT (a)  FFT (b) В явном виде:   y ( k , l )  y0 ( k , l ) ˆ ˆ x(k , l )  2 2 1 ˆ (k  l )    y ˆ (k , l ) 2 1) крайне неустойчив к неточному определению параметров 2) не применим к Non-Uniform модели размытия CS MSU Graphics & Media Lab (Video Group) 18
  • 18.
    Wiener примеры размытое восстановленное восстановленное с изображение с точным вектором неточным вектором вектор размытия: вектор размытия: длинна 10 пикселей длинна 9 пикселей угол 0 градусов угол 5 градусов CS MSU Graphics & Media Lab (Video Group) 19
  • 19.
    Lucy-Richardson * y  y - размытое изображение xi 1  xi  B    B( x )  B - оператор размытия  i  B * - сопряженный оператор  алгоритм итеративный, но сходится быстро  если на изображение не накладываются ограничения, то LR находит оптимальное решение для изображений с Пуассоновским шумом  сейчас LR активно используется NASA в астрономии CS MSU Graphics & Media Lab (Video Group) 20
  • 20.
    Lucy-Richardson пример размытое восстановленное CS MSU Graphics & Media Lab (Video Group) 21
  • 21.
    Регуляризационные методы В общем виде ищется решение задачи:  arg min B( x)  y C1   f ( x) x В качестве C1 можно выбрать норму L2, а в качестве f можно выбрать x , и решать методом градиента 1) решение ищется итеративными алгоритмами, скорость сходимости низкая 2) регуляризационные методы устойчивы к неточному определению параметров 3) теоретически варьированием C1 и f можно достичь оптимального решения CS MSU Graphics & Media Lab (Video Group) 22
  • 22.
    План  Постановка задачи  Модели размытия  Алгоритмы Deblurring-а  Предлагаемый алгоритм  Определение размытия  Debluring  ЕМ минимизация артефактов  Выделение и удаленние артефактов  Неадекватность PSNR  Сравнение алгоритмов  Результаты на видео CS MSU Graphics & Media Lab (Video Group) 23
  • 23.
    Определение размытия Использование ME, как источника параметров размытия 1) Определение вектора размытия BV  MV  t T BV – вектор размытия MV – вектор движения t – время выдержки T – время между кадрами пример плохого определения 2) Фильтрация векторов вектора размытия CS MSU Graphics & Media Lab (Video Group) 24
  • 24.
    Определение размытия Типы областей после фильтрации 1. Области не относящиеся к изображению 2. Области для которых не удалось определить движение по ME 3. Области для которых удалось определить движение по ME a) области с простым движением b) области со сложным движением CS MSU Graphics & Media Lab (Video Group) 25
  • 25.
    Артефакты Debluring-а Unsharp mask Wiener LR Как видно из примеров восстановления, алгоритмы деблюринга создают характерные артефакты вблизи резких границ CS MSU Graphics & Media Lab (Video Group) 26
  • 26.
    Минимизация артефактов Запишем решение в виде: [ xi 1 ]k ,l  [ xi ]k ,l  f ([ y  B( xi )]k ,l ) Варьированием f можно получить решение обладающее максимальным PSNR в областях образования артефактов Статистический анализ показал, что f хорошо аппроксимируется функцией вида: f ( x)  x1.2 CS MSU Graphics & Media Lab (Video Group) 27
  • 27.
    Минимизация артефактов пример восстановления размытое восстановленное CS MSU Graphics & Media Lab (Video Group) 28
  • 28.
    Комбинирование алгоритмов описание метода Применяя к восстановленному (любым методом) изображению выделение границ, можно определить области содержащие артефакты. Затем проблемные области замещаются областями из изображения, полученного вышеописанным методом минимизации артефактов. Так можно получить очень быстрое, но в то же время качественное решение. CS MSU Graphics & Media Lab (Video Group) 29
  • 29.
    Предлагаемый алгоритм демонстрация метода LR Маска границ Результат Миним. артеф. CS MSU Graphics & Media Lab (Video Group) 30
  • 30.
    Сравнение двух решений LR, PSNR 27.62 SSIM 0.768 CS MSU Graphics & Media Lab (Video Group) 31
  • 31.
    Сравнение двух решений предлагаемый, PSNR 27.41 SSIM 0.764 CS MSU Graphics & Media Lab (Video Group) 32
  • 32.
    Результаты на видео Кадр исходного видео Кадр обработанного видео Кадр с очень сложным движением CS MSU Graphics & Media Lab (Video Group) 33
  • 33.
    Результаты на видео Кадр исходного видео Кадр обработанного видео Кадр с очень сложным движением CS MSU Graphics & Media Lab (Video Group) 34
  • 34.
    Результаты на видео Кадр исходного видео Кадр обработанного видео CS MSU Graphics & Media Lab (Video Group) 35
  • 35.
    Результаты на видео Кадр исходного видео Кадр обработанного видео CS MSU Graphics & Media Lab (Video Group) 36
  • 36.
    Результаты на видео Исходное видео Обработанное видео CS MSU Graphics & Media Lab (Video Group) 37
  • 37.
    Non-Uniform Motion Blur Football #56 Source image Lucy-Richardson MSU Deblur CS MSU Graphics & Media Lab (Video Group) 38
  • 38.
    Non-Uniform Motion Blur Soccer #119 Source image Lucy-Richardson MSU Deblur CS MSU Graphics & Media Lab (Video Group) 39
  • 39.
    Non-Uniform Motion Blur Football_2 #162 Source image Lucy-Richardson MSU Deblur CS MSU Graphics & Media Lab (Video Group) 40