Программная реализация метода шифрования цифровых изображений - Курсовая работа

бесплатно 0
4.5 117
Создание программного приложения для искажения графической информации в цифровом изображении и последующего ее восстановления. Декартово произведение множеств. Передача ключа шифрования. Генерация псевдослучайных чисел. Умножение, транспонирование матриц.


Аннотация к работе
Многие отрасли техники, имеющие отношение к обработке, хранению и передаче информации, в настоящее время ориентируются на развитие систем, в которых информация представляется в виде изображений. Изображение, можно рассматривать как двумерный массив данных, который является значительно более емким носителем информации, чем обычный одномерный массив. В то же время информацию, представленную при помощи промышленных графических форматов, можно легко считать общедоступными программными приложениями.Растровая графика - это изображения, составленные из пикселов (самая маленькая единица цифрового изображения), размещенных в прямоугольной сетке. Увеличить растровое изображение путем увеличения масштаба не получится - число пикселов увеличить невозможно, в этом можно убедиться, если попытаться разглядеть мелкие детали на маленькой цифровой фотографии, приближая ее на экране; в результате этого действия разглядеть что-то кроме увеличивающихся пикселов не удастся.Сжатие с потерями - метод сжатия данных, при использовании которого распакованные данные отличаются от исходных, но степень отличия не является существенной с точки зрения их дальнейшего использования. Этот тип компрессии применяется для сжатия аудио-и видеоданных, статических изображений, в Интернете, особенно в потоковой передаче данных, и цифровой телефонии. Используемый данным JPEG алгоритм сжатия с потерями в наибольшей степени пригоден для фотографий и картин, содержащих реалистичные сцены с плавными переходами яркости и цвета. Следует отметить, что этот формат не подходит для хранения изображений с высокой контрастностью (чертежи, планы), поскольку потери при сжатии приводят к искажению информации, что недопустимо.Данные формата BMP состоят из блоков различного размера (см. рисунок 1). 1) заголовок из структуры BITMAPFILEHEADER , который содержит: · отметка о формате; 2) блок BITMAPINFO, содержащий: · информационные поля; Данная структура является основной и описательной в формате BMP и поэтому когда просто упомянуто имя поля, то речь идет о поле в данной структуре. Цветовой профиль (палитра) в BMP-файлах хранится в виде списка структур RGBQUAD, где каждый элемент представляет отдельный цвет.Бинарное отношение R (из множества U в множество V) называется подмножество декартова произведения множеств U и V Бинарное отношение называется функцией (из множества U в множество V), если каждый элемент может находиться в отношении F не более, чем с одним элементомA размерности с элементами из множества U называется функция из декартова произведения множества первых m натуральных чисел и множества первых n натуральных чисел в множество U Для представления матриц используют таблицы, состоящие из m строк и n столбцов, в ячейках которых размещены значения функции Числа и называют индексами элемента матрицы , при этом вместо записывают .Определим результат операции транспонирования матрицы A размерности как матрицу размерности , элементы которой для всех и задаются следующим правилом (3) Матрицы с элементами из числовых множеств, на которых определены арифметические операции сложения и умножения называются числовыми. A размерности справа на числовую матрицу B размерности как числовую матрицу C размерности , элементы которой для всех и задаются следующим правилом (4)Для реализации поставленной в работе задачи реализации метода шифрования изображения необходимо воспользоваться правилами матричного умножения, и некоторыми свойствами матрицы перестановок . Умножение произвольной матрицы размерности на матрицу перестановок размерности слева меняет местами строки матрицы . Если рассматривать цифровое изображение как квадратную матрицу размерности , элементы которой находятся в пределах от 0 до 255, задающую полутоновое отображение пикселов растра, то при умножении такой матрицы на матрицу перестановок и транспонированную к ней происходит перемешивание пикселов изображенияВ силу специального вида матрицы перестановок P алгоритм умножения матриц может быть заменен на перестановки, а сама P представлена в виде кортежа перестановок, где i-й позиции кортежа ставится в соответствие позиция перестановки. Различия в реализации этих методов приведены в таблице 1. Прямой матричный метод Метод перестановок for p:=0 to length(Матрица)-1 do for i:=0 to length(Матрица)-1 do for j:=0 to length(Матрица)-1 do for k:=0 to length(Матрица)-1 do Temp[i,p]:=Temp[i,р] (МАТРПЕРЕСТ[i,k]*Матрица[k,j] *МАТРПЕРЕСТ[р,j]) for i:=0 to length(Матрица)-1 do for j:=0 to length(Матрица)-1 do Temp[i,j] := Матрица[Перест[i],j]; for j:=0 to length(Матрица)-1 do for i:=0 to length(Матрица)-1 do Матрица[i,Перест[j]] := Temp[i,j];Произвести чтение данных попиксельно из bitmap-файла, так же сохранить данные о размерах изображения (высота, ширина); Записать усредненные значения в массив данных для проведения дальнейших преобразований. Каждый элемент массива в данном случае представляет из себя отдельный пиксел полутонового изображения со своим значением тона; Массив данных дополняется случайными значениями от 0 до 2

План
СОДЕРЖАНИЕ

ВВЕДЕНИЕ

1. Обзор форматов представления цифровых изображений

1.1 Растровая графика

1.2 Сжатие изображений

1.3 Структура Bitmap

2. Теоретические сведения

2.1 Декартово произведение множеств, бинарные отношения

2.2 Матрицы

2.3 Умножение и транспонирование матриц

3. Метод шифрования цифрового изображения

3.1 Прямой матричный метод

3.2 Метод перестановок

4. Алгоритм решения задач шифрования и расшифрования цифрового изображения

4.1 Передача ключа шифрования

4.2 Генерация псевдослучайных чисел

5. Программная реализация метода шифрования изображения

5.1 Форма программного приложения

5.2 Программные процедуры

ЗАКЛЮЧЕНИЕ

СПИСОК СОКРАЩЕННЫХ ОБОЗНАЧЕНИЙ

СПИСОК ИСПОЛЬЗУЕМЫХ ИСТОЧНИКОВ

ПРИЛОЖЕНИЯ
Заказать написание новой работы



Дисциплины научных работ



Хотите, перезвоним вам?