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

UptoLike

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

- 15 -
ствляет необходимые действия по восстановлению изображения при изме-
нении размеров рамки (тело функции Image1MouseMove выполняется
только при постоянно нажатой левой кнопки мыши),
функция Image1MouseUp (событие Image1MouseUp – ‘отпускание кнопки
указателя мыши’) осуществляет финальные действия по отрисовке и унич-
тожению внеэкранного контейнера tmpImage.
Заметим, что эффективнее было бы каждый раз при перемещении указате-
ля
мыши копировать во внеэкранный контейнер не все изображение, а лишь
закрываемуюрезиновой рамкойчасть его (манипуляции со значительными
объемами информации при работе с большими изображениями зачастую вы-
зывают неприятноемерцаниеэкрана).
Именно операции копирования и восстановления части экрана являются
основой эффектов перемещения частей изображения по экрану в нужное ме-
сто и
мультипликации (из внеэкранных контейнеров последовательно копи-
руются в нужное место экрана соответствующие изображения). Профессио-
нальные графические редакторы поддерживают возможность выделения час-
ти изображения произвольной формы (режимлассо’) и соответствующие
операции с Карманом; реально, конечно, копируется прямоугольный уча-
сток изображения, а находящиеся вне выделяющей нужную область замкну-
той кривой (описываемой последовательностями
прямых или сплайном)
объявляютсяпрозрачными’ (transparent) и не участвуют в операциях. Режим
волшебной палочки’ (magic wand) позволяетавтоматическивыделить (для
дальнейшей обработкикопирования, переноса и др.) область изображения
(при этом используется анализ на принадлежность к заданному диапазону
цветов или интенсивностей прилежащих к выбранной точке пикселов изо-
бражения).
Важной операцией обработки
изображений (понижение резкости или, на-
оборот, оконтуривание и др.) осуществляется с помощью фильтров. Фильтр
определяется (обычно квадратной) матрицей коэффициентов преобразования
k
ij
(i=1 ÷ iN, j=1 ÷jN, iN и jN - нечетные) и постоянными DivisionFactor и Bias.
При преобразовании текущей точки (i,j) изображения интенсивности ее цвета
умножаются на значения k
ij
, полученные значения складываются, делятся на
DivisionFactor, к полученной сумме прибавляется Bias (считается, что обра-
батываемая точка изображения совпадает с центральным элементом матри-
цы):
color_ij=
c
k
ij
iNi
1i
jNj
1j
ij
ctorDivisionFa
1
Bias
∑∑
=
=
=
=
+
,
где color_ij – определяемое значение интенсивности цвета в точке ij,
  ствляет необходимые действия по восстановлению изображения при изме-
  нении размеров рамки (тело функции Image1MouseMove выполняется
  только при постоянно нажатой левой кнопки мыши),
• функция Image1MouseUp (событие Image1MouseUp – ‘отпускание кнопки
  указателя мыши’) осуществляет финальные действия по отрисовке и унич-
  тожению внеэкранного контейнера tmpImage.

   Заметим, что эффективнее было бы каждый раз при перемещении указате-
ля мыши копировать во внеэкранный контейнер не все изображение, а лишь
закрываемую ‘резиновой рамкой’ часть его (манипуляции со значительными
объемами информации при работе с большими изображениями зачастую вы-
зывают неприятное ‘мерцание’ экрана).
   Именно операции копирования и восстановления части экрана являются
основой эффектов перемещения частей изображения по экрану в нужное ме-
сто и мультипликации (из внеэкранных контейнеров последовательно копи-
руются в нужное место экрана соответствующие изображения). Профессио-
нальные графические редакторы поддерживают возможность выделения час-
ти изображения произвольной формы (режим ‘лассо’) и соответствующие
операции с Карманом; реально, конечно, копируется прямоугольный уча-
сток изображения, а находящиеся вне выделяющей нужную область замкну-
той кривой (описываемой последовательностями прямых или сплайном)
объявляются ‘прозрачными’ (transparent) и не участвуют в операциях. Режим
‘волшебной палочки’ (magic wand) позволяет ‘автоматически’ выделить (для
дальнейшей обработки – копирования, переноса и др.) область изображения
(при этом используется анализ на принадлежность к заданному диапазону
цветов или интенсивностей прилежащих к выбранной точке пикселов изо-
бражения).
   Важной операцией обработки изображений (понижение резкости или, на-
оборот, оконтуривание и др.) осуществляется с помощью фильтров. Фильтр
определяется (обычно квадратной) матрицей коэффициентов преобразования
kij (i=1 ÷ iN, j=1 ÷ jN, iN и jN - нечетные) и постоянными DivisionFactor и Bias.
При преобразовании текущей точки (i,j) изображения интенсивности ее цвета
умножаются на значения kij, полученные значения складываются, делятся на
DivisionFactor, к полученной сумме прибавляется Bias (считается, что обра-
батываемая точка изображения совпадает с центральным элементом матри-
цы):

                            1      i =iN j= jN
  color_ij= Bias +                   ∑ ∑k c ,
                     DivisionFactor i =1 j=1 ij ij

  где color_ij – определяемое значение интенсивности цвета в точке ij,


                                         - 15 -