Программирование мультимедиа-систем. Баканов В.М. - 17 стр.

UptoLike

Составители: 

- 17 -
Вид окна определения коэффициентов матрицы фильтрации программы
Paint.exe приведен на рис.2.1 (доступ к окну осуществляется посредством
выбора варианта
Фильтр главного меню).
Находящееся в левом нижнем углу окна поле ввода дает возможность ус-
тановить равные значения всех коэффициентов матрицы (с целью минимиза-
ции дальнейшей настройки), кнопкаВычислитьпозволяет определить зна-
чение DivisionFactor как сумму значений всех элементов матрицы фильтра.
Выбранный фильтр применяется ко всем трем составляющим цвета (пред-
варительно
можно конвертировать изображение в серый тон посредством
Edit Преобразование цвета В оттенки серого и, если необходимо, сохранить
преобразованный таким образом файл).
Типовые значения коэффициентов матрицы фильтра приведены в табл.2.1
(для упрощения рассматривается матрица 5
×
5 или даже 3
×
3). Простейшим
фильтром является Blur (снижение резкости, размывание изображения); в
этом случае k
ij
1 (i,j=1
÷
n),
==
==
=
njn,i
1j1,i
ij
k
ctorDivisionFa
и Bias=0 (здесь n – раз-
мер матрицы, k
ij
значения коэффициентов матрицы). Из общих соображе-
ний ясно, что при
=
=
==
<
nj,ni
1j,1i
ij
k
ctorDivisionFa
совместно с размытием происхо-
дит потемнение изображения (в противном случаеосветление); аналогично
Bias>0 приводит к осветлению, а Bias<0 – к потемнению. В графическом ре-
дакторе PaintShop версии 8 создание нового фильтра возможно через
Ef-
fects|User Defined…(для версии 4 - Image User Defined Filters…). В версии 8
редактора PaintShop интересные эффекты можно получить (логической)
комбинацией пикселов двух изображений (
Image
Arithmetic… в версии 8);
необычные (не все из них представимы матрицей) эффекты доступны по-
средством
Effects Artistic Effects.
С точки зрения программиста важно, что в описываемом случае параметры
цвета каждого пиксела зависят от цветов окружающих и от цвета исходного;
при этом применение внеэкранного контейнера изображения неизбежно (ин-
тенсивности пикселов считываются из помещенной во внеэкранный контей-
нер копии изображения, преобразуются и записываются на полотно экрана);
образец исходного кода для
работы с внеэкранным контейнером см. ниже
фрагмент функции ChangeColorAndIntensity.
  Вид окна определения коэффициентов матрицы фильтрации программы
Paint.exe приведен на рис.2.1 (доступ к окну осуществляется посредством
выбора варианта Фильтр… главного меню).
  Находящееся в левом нижнем углу окна поле ввода дает возможность ус-
тановить равные значения всех коэффициентов матрицы (с целью минимиза-
ции дальнейшей настройки), кнопка ‘Вычислить’ позволяет определить зна-
чение DivisionFactor как сумму значений всех элементов матрицы фильтра.
Выбранный фильтр применяется ко всем трем составляющим цвета (пред-
варительно можно конвертировать изображение в серый тон посредством
Edit → Преобразование цвета → В оттенки серого и, если необходимо, сохранить
преобразованный таким образом файл).
  Типовые значения коэффициентов матрицы фильтра приведены в табл.2.1
(для упрощения рассматривается матрица 5 × 5 или даже 3 × 3). Простейшим
фильтром является Blur (снижение резкости, размывание изображения); в
                                                     i = n, j= n
этом случае kij ≡ 1 (i,j=1 ÷ n), DivisionFactor =       ∑ k ij и Bias=0 (здесь n – раз-
                                                     i =1, j=1
мер матрицы, kij – значения коэффициентов матрицы). Из общих соображе-
                                      i = n , j= n
ний ясно, что при DivisionFactor <        ∑ k ij совместно с размытием происхо-
                                       i =1, j=1
дит потемнение изображения (в противном случае – осветление); аналогично
Bias>0 приводит к осветлению, а Bias<0 – к потемнению. В графическом ре-
дакторе PaintShop версии 8 создание нового фильтра возможно через Ef-
fects|User Defined…(для версии 4 - Image → User Defined Filters…). В версии 8
редактора PaintShop интересные эффекты можно получить (логической)
комбинацией пикселов двух изображений (Image → Arithmetic… в версии 8);
необычные (не все из них представимы матрицей) эффекты доступны по-
средством Effects → Artistic Effects.
   С точки зрения программиста важно, что в описываемом случае параметры
цвета каждого пиксела зависят от цветов окружающих и от цвета исходного;
при этом применение внеэкранного контейнера изображения неизбежно (ин-
тенсивности пикселов считываются из помещенной во внеэкранный контей-
нер копии изображения, преобразуются и записываются на полотно экрана);
образец исходного кода для работы с внеэкранным контейнером см. ниже –
фрагмент функции ChangeColorAndIntensity.




                                       - 17 -