Удаленная обработка данных на суперкомпьютере при решении задачи автоматизированной интерпретации аэрокосмических изображений
Высокопроизводительные вычисления в обработке данных дистанционного зондирования Земли. Классификация аэрокосмических изображений. Способы удаленного доступа к суперкомпьютеру. Сжатие без потерь и с потерями. Программное обеспечение системы сжатия.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 28.09.2011 |
Размер файла | 2,6 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Сейчас существует несколько методы компрессии, достаточно хорошо при решении различных задач формирования, передачи и хранения аэрокосмических изображений: методы дифференциального кодирования, методы кодирования с преобразованием, интерполяционные методы, методы, фрактальные методы. Но если их степень сжатия повышается то их качества изображения уменьшается. Поэтому для уменьшения потерь информации изображений предполагается дифференцированное сжатие, рассматриваемое на следующей главе.
Глава2. Принципы построения системы удаленной обработки данных
2.1 Подход к дифференцированному сжатию аэрокосмических изображений
Сжатие с потерями позволяет повышать степень сжатия, но качество аэрокосмических изображений уменьшается, количество информации аэрокосмических изображений уменьшается. Поэтому решим задачу увеличения степени сжатия без значительного ухудшения качества изображения, позволяющего осуществлять не только визуальное дешифрование геологических классов но и их автоматическое выделение в результате классификации.
Так как одно аэрокосмические изображение обладает много информацией о разных элементах, например: лес, вода, земля… [14]. Поэтому разные части аэрокосмических изображений обладает разными количествами информации. Существенно часть, отображающая однородный элемент, обладает меньше информацией или разница между пикселей в этой части меньшая. Наоборот существенно часть, отображающая больше элементов, обладает большим количеством информации.
Для части, обладающей меньшим количеством информации, можно осуществлять сжатие с меньшим качеством, что позволяет добиться высоких степенях сжатия. Наоборот для части, обладающей большим количеством информации, следует выполнять сжатие без существенно снижения качества.
Поэтому для увеличения степени сжатия без значительного ухудшения качества изображения предлагается разделить на фрагменты. Затем, в зависимости от количества информации в фрагментах сжать их с различными качествами.
2.1 Этапы дифференцированного сжатия
Целью фрагментации является разделение изображения на меньшие части. В зависимости от их количеств информации выполняется сжатие с соответственными качествами сжатия.
Для разделения изображение на фрагменты, используется степень фрагментации. Если степень фрагментации равна L, то каждая сторона разделится на L равные части и количество разделенных фрагментов равно LЧL (на рис.2.1).
Размещено на http://www.allbest.ru/
Рисунок 1. 1 - Разделение изображений на фрагменты
Для увеличения потенциальной степени сжатия каждый фрагмент обрабатываем с "собственным" уровнем качества сжатия. Это позволит для фрагментов с наибольшим количеством информации задать наибольший уровень качества сжатия, а для фрагментов с наименьшим количеством информации задать меньше уровень качества.
Для определения качества фрагмента l=1,2,3,…,L2 предлагается использоваться дисперсию (2.1), характеризующую количество информации
(2.1)
где N-количество пикселей, - математическое ожидание, определенное как , где xi - значение пикселя фрагмента.
Одной из важнейших задач, которую необходимо решить является определение правило, по которому будет реализована связь между и качеством сжатия ql.
Как сказано, каждый фрагмент l имеет свою дисперсию и соответственный уровень качества сжатияql. Предполагаются 2 способов определения качества ql в зависимости от: прямая зависимость и степенная зависимость.
При прямой зависимости ql (2.2) равномерно увеличивается
ql=, (2.2)
где ? =Qmax - Qmin, Qmax, Qmin - максимальное и минимальное качества сжатия, заданные как Qmax,Qmin [40%,95%], Dmax, Dmin - максимальное и минимальное значения из всех дисперсии фрагментов, k - коэффициент "чувствительности" качества сжатия (если k>1qlотносительно быстрее увеличивается, если k<1 - медленнее.
Прямая зависимость и ql от kприведена на рис.2.2
Размещено на http://www.allbest.ru/
Рисунок 1.2 - Влияние коэффициента kв правиле сжатия при прямой зависимости
Например: Имеется матрица дисперсииD [3Ч3] (2.3)
D= 120 70 90 100 80 30 50 65 85 |
(2.3) |
Получаем Dmax=120, Dmin=30 и соответствующую матрицу качества сжатия Q [3Ч3] (2.4) при Qmax=95, Qmin=40, k=1.
Q= 95 64,4 76,67 82,78 70,56 40 52,2 61,39 73,61 |
(2.4) |
При степенной зависимости ql (2.5) определенно как
ql=, |
(2.5) |
Если k=1: это прямая зависимость.
Если k>1: при меньших ql медленнее увеличивается, при больших ql быстрее увеличивается.
Если k<1: при меньших ql быстрее увеличивается, при больших ql медленнее увеличивается.
Степенная зависимость и ql от kприведена на рис.2.3
Размещено на http://www.allbest.ru/
Рисунок 1. 3 - Влияние коэффициента kв правиле сжатия при степенной зависимости
Используя матрицу дисперсииD [3Ч3] (2.3) при степенной зависимости Qmax=95, Qmin=40, k=2 получаем соответствующую матрицу качества сжатия Q [3Ч3] (2.5)
Q= 95 50,86 64,44 73,27 56,98 40 42,72 48,32 40,54 |
(2.5) |
Используя матрицу дисперсии D [3Ч3] (2.3) при степенной зависимости Qmax=95, Qmin=40, k=0,5 получаем соответствующую матрицу качества сжатия Q [3Ч3] (2.6)
Q= 95 76,67 84,91 88,51 81 40 65,93 74,3 83 |
(2.6) |
После расчёта и ql последовательно выполняется сжатие фрагмента l, предлагающее 3 этапа.
Этап 1: Дискретное косинус преобразование. На этом этапе рассматриваем фрагмент l как равные части с размером 8Ч8. Из матриц пикселей фрагмента l получаем матрицы FDCTl [8Ч8] (2.7), в которых коэффициенты в левом верхнем углу матриц соответствуют низкочастотной составляющей изображения, а в правом нижнем - высокочастотной.
(2.7) |
где xl (i,j) - значение элементов матрицы пикселей, C (u), C (v) - коэффициенты ДКП, соответствующие положению элемента в матрице, C (u),C (v) =если u,v=0, C (u), C (v) = 1 остальные.
Этап 2: Квантование. Вычисляется матрица квантования Ql [8Ч8] (2.8), соответствующая качеству сжатия фрагмента l.
Ql (i,j) =Q50*scalel, |
(2.8) |
где scalel - множитель, где scalel=50/qlеслиql<50 иначе scalel=2-ql/50, ql - коэффициент качества сжатия, от него зависит степень потери качества сжатого изображения, Q50 - рекомендованная стандартная матрица квантования, построенная опытным путем в п.1.2.2.
Потом нужно каждое число в матрице FDCTlразделить на число в соответствующей позиции в матрице квантования.
Al (i,j) =.
Этап 3: Вторичное сжатие. После выполнения этапа квантования для всех фрагментов изображения получаем мнимый файл с новыми значениями с многими нулями. С этим файлом применяется сжатие без потерь. Распространенным методом вторичного сжатия является метод Хаффмана, применяемый в данном случае. Обратным процессом сжатия восстановление, так же содержащее 3 этапа:
Этап1: Вторичное сжатие. По методу Хаффмана выполняется восстановление сжатый файл. Потом полученный мнимый файл разделяется на фрагменты с помощью степени фрагментации L.
Этап 2: Квантование. Рассматриваем фрагмент l как равные части с размером 8Ч8. Из матриц Al (i,j) фрагмента получаем матрицы Xl [8Ч8] (2.9),
Xl (i,j) =Ql (i,j) *Al (i,j), |
(2.9) |
где Ql (i,j) матрица квантования, соответствующая качеству сжатия фрагментаql, похожая на процесс сжатия.
Этап 3: Дискретное косинус преобразования. На этом этапе вычисляются матрицы IDCTl [8Ч8] (2.10) фрагмента l
(2.10) |
Из значений матриц IDCTвсех фрагментов изображения получаем восстановленное аэрокосмическое изображение.
2.2 Подход к сжатию многозонального аэрокосмических изображений
Многозональные изображения представлены в виде отдельных спектральных каналов или виде синтеза отдельных каналов для получения цветного изображения. Поэтому для сжатия многозонального аэрокосмических изображений применяем предполагаемого дифференцированное сжатие каждого канала. Соответственно выполняем восстановление каждого сжатого файла, собираем восстановленные каналы, получаем восстановленное многозональное аэрокосмическое изображение.
Для оценки восстановленного многозонального аэрокосмического изображения по критерии Кр (2.11) выполняем сравнение по критериям Крi каждого канала, потом вычисляем по следующей формуле
(2.11) |
где k - количество каналов.
Вывод по главе
На данной главе был рассмотрен основной алгоритм дифференцированного сжатия с фрагментацией. Для степени сжатия L изображения разделяется на LЧLфрагментов. С помощью дисперсии определяется качество фрагмента l=1,2,3,…,L2. В зависимости от вычисляется качество сжатия qlпо принципу: чем больше тем вышеql. При малых эти фрагменты обладают малой информацией, сжатие с малым ql позволяет повышать степень сжатия. При больше эти фрагменты обладают больше информацией, сжатие с больше ql позволяет гарантировать качество сжатия. Предлагаются 2 способа определенияql в зависимости от : прямой зависимости и квадратной зависимости. При прямой зависимости ql равномерно увеличивается. При степенной зависимости в зависимости от коэффициента "чувствительности" качества сжатия k: ql медленнее увеличивается при меньших , ql быстрее увеличивается при больших при k>1 и наоборот при k<1.
Для многозональных аэрокосмических изображенийприменяем предполагаемого дифференцированного сжатия для каждого канала этого изображения. Поэтому применение предполагаемого подхода дифференцированного сжатия аэрокосмических изображений возможно позволять увеличить степень сжатия без ухудшения качества сжатия.
Для оценки эффективности этого подхода выполняем сжатие с фрагментацией, сжатие без фрагментации с одноканальными и многозональными аэрокосмическими изображениями. Результаты экспериментов посмотрим в следующей главе.
Глава 3. Эксперименты
3.1 Постановка задачи исследования
Для определения эффективности предлагаемого алгоритма дифференцированного сжатия с точки зрения повышения степени сжатия после сжатия и восстановления выполняем сравнение между сжатием без фрагментации и сжатием с фрагментацией. Для выполнения экспериментов используем одноканальные (табл.3.1) и многозонального (табл.3.2) аэрокосмические изображения в формате данных растровой геоинформационной системы IdrisiKilimanjaro.
Таблица 2.1. - Тестовые панхроматического (одноканального) изображения
№ |
Название изображения |
Размер изображения, пикс. |
Размер файла, байт |
L |
|
1 |
etde |
292 Ч 288 |
83 |
12 |
|
2 |
town |
2971 Ч 1829 |
5307 |
16 |
|
3 |
etdem12 |
512 Ч 400 |
200 |
13 |
|
4 |
vinh345 |
534 Ч 300 |
157 |
12 |
|
5 |
eng |
799 Ч 768 |
600 |
15 |
Таблица 2.2 - Тестовые многозонального изображения
№ |
Название изображения |
Размер изображения, пикс. |
Размер одного канала, байт |
L |
|
5 |
Maur |
256 Ч 256 |
64 |
10 |
|
6 |
sierra |
700 Ч 934 |
639 |
14 |
|
7 |
mad |
104 Ч 202 |
21 |
8 |
В результате экспериментов найдем:
· зависимость степень сжатия и качества восстановленных изображений;
· влияние коэффициента "чувствительности" качества сжатия k в формуле (2.2) расчёта соответствующих качеств сжатия фрагментов на степень сжатия и качество восстановленных панхроматических аэрокосмических изображений.
При выполнении экспериментов предлагается степень сжатия для оценки эффективности алгоритма, корреляция и каппа для оценки качества восстановленных изображений.
· Степень сжатия S: Это отношение размер исходного файла (V) к размеру сжатого файла (Vс).
Для многозонального изображения:
· Корреляция: Для оценки качества восстановленных изображений после сжатия, используются критерия "корреляция"
где , - значения пикселей исходного и восстановленного изображений, n - количество пикселей изображений.
При применении дискретного косинус преобразования и этапа Квантования, разность между пикселями до и после сжатия обычно не больше 10. Поэтому 0?С?1
При С=1: два изображения одинаковые
Для многозонального изображения:
· Каппа
Полученные карты после классификации (в п.1.3) являются одним из наиболее распространенных путей использования аэрокосмических изображений. Поэтому оценки качества карты является одним из методов оценок эффективности алгоритма дифференцированного сжатия. Для сравнения карт исходных и восстановленных панхроматических изображений предполагается критерий каппа.
Каппа - Коэффициент, отражающий согласие между двумя тематическими картами классификации, который может принимать значения от - 1 до 1.
Значение коэффициента каппа:
· равное 1,0: полное совпадение заключений экспертов
· более 0,75: хорошее согласие
· 0,4-0,75: умеренное согласие
· Менее 0,4: плохое согласие
· равное 0,0: полное отсутствие согласия между ними
Для выполнения неконтролируемой классификации и сравнения критерием каппа используем программу растровой геоинформационной системы IdrisiKilimanjaro [15].
Для получения результатов экспериментов выполняются 3 этапы на рис.3.1.
1. Из исходного изображения выполняем сжатие без фрагментации и сжатие с фрагментацией. С этими сжатыми файлами выполняем сравнение по степени сжатия S.
2. Восстанавливая сжатые файлы, сравниваем восстановленные изображения с исходным изображением по корреляции.
3. Классифицируем исходное и восстановленные изображения, получаем тематические карты. Потом сравниваем карты по каппа.
Размещено на http://www.allbest.ru/
Рисунок 2. 1 - Этапы получения экспериментов
Как сказано выше для проведения экспериментов, выполняем:
· сжатие с фрагментацией с фиксированным качеством сжатия Qmax=95, Qmin=40 и различнымиL,k>0 если k =0 то
ь при прямой зависимости:
ql=
ь тогда будет сжатие без фрагментации с качеством сжатия q=,
ь при степенной зависимости:
ql=
тогда будет сжатие без фрагментации с качеством сжатия q=
Так как при качестве сжатия меньше 40 качество фрагментов изображений много уменьшается, поэтому выбираем Qmin=40, Qmax=95 потому что если Qmax=100 сжатие этого фрагмента похоже на сжатие без потерь то степень сжатия не уменьшается.
· сжатие безфрагментацией с качеством сжатия q [60,100]. Для целого изображения если qмаленькие то качество общего восстановленного изображения не хорошее.
Тестовые значения параметров приведены на табл 3.3, табл 3.4
Таблица 2. 3 - Тестовые значения параметров при kпеременной
Qmax Qmin k 95 40 0,1 95 40 0,3 95 40 0,5 95 40 0,7 95 40 0,9 95 40 1 95 40 1,1 95 40 1,3 95 40 1,5 95 40 1,7 95 40 1,9 |
Qmax Qmin k 95 40 0,5 95 40 1,5 95 40 2 95 40 2,5 95 40 3 |
|
а. При прямой зависимости |
ь. При степенной зависимости |
Таблица 2.4 - Тестовые значения параметров при Lпеременной
Qmax Qmin L 95 40 1 95 40 5 95 40 9 95 40 13 95 40 17 95 40 21 95 40 25 95 40 1,3 95 40 1,5 95 40 1,7 95 40 1,9 |
3.2Результаты экспериментов
3.2.1Сжатие одноканальных аэрокосмических изображений
При сжатии с фрагментацией коэффициент "чувствительности" качества сжатияkвлияет на степень сжатия и качества восстановленных изображений. Посмотрим зависимость S, K, Каппаот k. Для этого выполняем сжатие этих изображений с фрагментацией Qmax=95, Qmin=40, kпри прямой зависимости между и ql, Qmax=95, Qmin=40,kпри степенной зависимости между и ql. Результаты приведены на рис.3.2, рис.3.3
Рисунок 2. 2 - Зависимость степень сжатия и качество восстановленных изображений от k при прямой зависимости
Анализ результатов экспериментов, представленных на рис.3.2 показывает, что при увеличении k степень сжатия уменьшается но корреляция и каппа увеличиваются (или качество восстановленных изображений увеличивается). Это объясняется тем, что преувеличении k значения качества сжатия фрагментов qlбыстро увеличиваются или значения ql больше тогда количество информации меньше потеряется соответственно качество восстановленного изображения лучше но степень сжатия хуже. При прямой зависимости коэффициент k позволяет регулировать алгоритм: Если хотим увеличить Sто уменьшим k и если хотим увеличить качество изображения то увеличить k. Рис.3.2 так же показывает, что чем больше степень сжатия тем меньше качество сжатия.
Рисунок 2. 3 - Зависимость степень сжатия и качество восстановленных изображений от k при степенной зависимости
Анализ результатов экспериментов, представленных на рис.3.3 показывает, что при увеличении k степень сжатия увеличивается но корреляция и каппа уменьшаются (или качество восстановленных изображений уменьшается).
Это объясняется тем, что преувеличении k значения качества сжатия фрагментов qlмедленно увеличиваются или значения ql меньше тогда количество информации меньше потеряется соответственно качество восстановленного изображения меньше но степень сжатия лучше. Отметим что, при k>2 Sмедленнее увеличивается потому что
ql=но
поэтому ql медленнее изменяется. При степенной зависимости коэффициент k позволяет регулировать алгоритм: Если хотим увеличить Sто увеличиваем k и если хотим увеличить качество изображения то уменьшим k. Посмотрим зависимость S, K, Каппаот L.
Для этого выполняем сжатие этих изображений с фрагментацией Qmax=95, Qmin=40, Lпри прямой зависимости и степенной зависимости между и ql. Результаты приведены на рис.3.4, рис.3.5
Рисунок 2. 4 - Зависимость степень сжатия и качество восстановленных изображений от Lпри прямой зависимости
Рисунок 2. 5 - Зависимость степень сжатия и качество восстановленных изображений от Lпри степенной зависимости
Анализ результатов экспериментов, представленных на рис.3.3показываетчто при увеличении L до какого значения (это зависит от характеристик и размер изображений) степень сжатия увеличивается, потом степень сжатия медленно уменьшается. Степень сжатия изображения № 2 только увеличивается потому что его размеры большие (2971 Ч 1829). Когда степень сжатия увеличивается соответственно корреляция и Каппа уменьшается. Коэффициент Lтак же позволяет регулировать алгоритм: каждое изображение имеет диапазон значения L, при которых степень сжатия максимальная. После этого значения степень сжатия уменьшается потому что сжатый файл содержит больший объём для сохранения матрицы качества сжатия Q.
Для оценки эффективности алгоритма дифференцированного сжатия посмотрим результаты сжатия с фрагментацией при прямой зависимости и сжатия без фрагментации с различнымиq=100,90,80,70.
S при сжатии с фрагментацией |
S при сжатии без фрагментации |
|||
K при сжатии с фрагментацией |
K при сжатии без фрагментации |
|||
Каппа при сжатии с фрагментацией |
Каппа при сжатии без фрагментации |
Рисунок 2. 6 - Сравнение между сжатием без фрагментации и сжатием с фрагментацией с k=1
Рис.3.3 показывает, что при сжатии с фрагментацией с k=1степень сжатия больше около в 5 раз чем сжатие без фрагментации с q=100, около в 2 раз чем сжатие без фрагментации с q=90,80, около в 1.5 раз чем сжатие без фрагментации с q=70. В таких случаях качество изображения (корреляция и каппа) при сжатии немного меньше или сходны при сжатии без фрагментации.
При уменьшении k степень сжатия увеличивается. Посмотрим сравнение между сжатием с фрагментацией с k=0.3 и сжатием без фрагментации
S при сжатии с фрагментацией |
S при сжатии без фрагментации |
|||
K при сжатии с фрагментацией |
K при сжатии без фрагментации |
|||
Каппа при сжатии с фрагментацией |
Каппа при сжатии без фрагментации |
Рисунок 2. 7 - Сравнение между сжатием без фрагментации и сжатием с фрагментацией с k=0,3
При cжатии с фрагментацией k=0,3 степень сжатия больше около в 6 раз чем сжатие без фрагментации с q=100, около в 2,5 раз чем сжатие без фрагментации с q=90,80, больше в 1.5 раз чем сжатие без фрагментации с q=70.
Посмотрим ещё пример на рис.3.5 при увеличении k=1.9 степень сжатия уменьшается но значения корреляции и каппа увеличиваются.
S при сжатии с фрагментацией |
S при сжатии без фрагментации |
|||
K при сжатии с фрагментацией |
K при сжатии без фрагментации |
|||
Каппа при сжатии с фрагментацией |
Каппа при сжатии без фрагментации |
Рисунок 2. 8 - Сравнение между сжатием без фрагментации и сжатием с фрагментацией с k=1,9
Анализ результатов экспериментов, представленных на рис.3.6, 3.7, 3.8 показывает, что степень сжатия при сжатии с фрагментацией существенно больше (в 2ч6 раз), чем при сжатии без фрагментации при различных параметрах. Значения корреляции и каппа восстановленных изображений после сжатия с фрагментацией и сжатия без фрагментации сходны. Потому что, при сжатии с фрагментацией на аэрокосмическом изображении существуют фрагменты, имеющие маленькую информацию или маленькие дисперсии.
Сжатие этих фрагментов с маленьким качеством сжатия соответственным их дисперсиям позволяет повышать степень сжатия изображений но мало уменьшать качество этих изображений.
3.2.2Сжатие многозональных аэрокосмических изображений
Для оценки эффективности сжатия многозональных аэрокосмических выполняем сжатие с фрагментацией Qmax=95, Qmin=40, k=1с различными каналами L. Тестовые изображения и значения L приведены на табл.3.2
Рисунок 2. 9 - Сжатие многозональных изображений
Анализ результатов экспериментов, представленных на рис.3.9 показывает, что когда при увеличении количеств каналов развитие степени сжатие зависит от объемов каналов этих многоканальных изображений, соответственно корреляция развивается обратно развитию степени сжатия. Но при количестве каналов<4 значение Каппа увеличивается и при количестве каналов больше 3 значение Каппа уменьшается.
Вывод по главе
Для оценки эффективности предполагающего алгоритма дифференцированного сжатия используем критерии: степень сжатия Sпосле сжатия с фрагментацией и сжатия без фрагментации, корреляция Kпосле восстановления сжатых файлов, каппа после неконтролируемой классификации.
Использование коэффициента k позволяет выполнять настройку алгоритма. При прямой зависимости при увеличении k степень сжатия уменьшается, корреляция и Каппа увеличиваются, наоборот при уменьшении k степень сжатия увеличивается, качества восстановленных изображений уменьшается. При степенной зависимости при увеличении k степень сжатия увеличивается, корреляция и Каппа уменьшаются, наоборот при уменьшении k степень сжатия уменьшается, качества восстановленных изображений увеличивается.
Использование коэффициента Lтак же позволяет выполнять настройку алгоритма. При увеличении L до какого значения степень сжатия увеличивается после этого значения степень сжатия медленно уменьшается. Это значение зависит от характеристик и размеров изображений.
Полученные результаты показывают, что степень сжатия при сжатии с фрагментацией существенно больше (в 2ч6 раз), чем при сжатии без фрагментации при различных параметрах. Можно подтверждать, что применение предполагаемого подхода к дифференцированному сжатию аэрокосмических изображений позволяет увеличить степень сжатия без значительного ухудшения их качества.
При сжатии многоканальных аэрокосмических изображений степень сжатия зависит от среднего значения объемов каналов, соответственно корреляция развивается обратно степени сжатия но при количество каналов больше 3 значение Каппа уменьшается
Чем больше степень сжатия, тем меньше качество панхроматических аэрокосмических изображений (меньше корреляция и каппа).
Глава 4. Программное обеспечение системы сжатия
4.1 Выбор среды программирования
При выборе интегрированной среды разработки рассматривались следующие альтернативы: CodeGearDelphi 2007 фирмы CodeGear и Visual Studio 2008 фирмыMicrosoft. Перечисленные системы на сегодняшний день являются наиболее распространенными для программной платформы Win32. В связи с удобностью интерфейса программы, степеней владения языка и наличием открытых ресурсов и компонентов было принято решение использовать среду разработки Visual C++.
4.2 Структура программного обеспечения
Схема взаимодействия программы описана на рис.4.1
Размещено на http://www.allbest.ru/
Рисунок 3. 1 - Схема взаимодействия программы
Можно сказать, что сжатие без фрагментации является частным случаем сжатия с фрагментацией с степеней фрагментацииL=1. Поэтому рассматриваем сжатие с фрагментацией.
Для выявления процесса сжатия с фрагментацией используется диаграмма потоков данных (DFD) на рис.4.2.
Рисунок 3. 2 - Диаграммы потоков данных (DFD) ПО системы
ПО системы функционирует на компьютерах типа IBMPC под управлением операционной системы Windows 98/2000/XP/7, а объем оригинального исходного кода программ системы составляет около 3000 строк на языке С++. ПО системы состоит из 5-и модулей. Модуль интерфейс пользователя предназначен для взаимодействия между ПО и пользователем в процессе работы (задание параметров, показание результат и т.д.).
Основные функции модуля: модуль создания файл использован для создания сжатых и восстановленных файлов. Входными данными являются адрес исходного и выходного файлов и коэффициент фрагментаций, выходными - созданный файл.
Название функции и параметров |
Назначение |
|
compress (string,string, int, int) |
На основе входных параметров: string: входный файл, string: выходный файл, int: коэффициент фрагментаций, int: выбор типа зависимости (1: прямая, 2: степенная). Общие функции сжатия выполняются |
|
decompress (string,string) |
На основе входных параметров: string: входный файл, string: выходный файл. Общие функции восстановления выполняются |
|
count () |
Счет символов файла |
|
flushBuffer () |
Запись буфера в буферный файл |
|
setVariables () |
Установление необходимых значений символов для сжатия (создание дерева Хаффмана) |
|
writeBits (string) |
Запись битов в буфер |
|
writeTheFile () |
Запись буферного файла в файл |
|
writeSignature () |
Запись подписи файла |
|
readSignature () |
Запись подписи файла |
|
readFile () |
Чтение 1000 байтов файла |
|
process_rdc (string) |
Чтение длины и ширины изображения из соответственного файла *. rdc |
|
compute (string) |
Счёт дииперсий фрагментов и их соответственных качеств сжатий |
Модуль дискретно - Квантования преобразования предназначен для дискретного косинус преобразования и этапа Квантования (обрабатывания исходных значений пикселей в новые значения с большими частотами появлений). Входными данными являются исходный файл, выходными - переходный файл с новыми значениями.
Название функции и параметров |
Назначение |
|
make (string,string) |
Создание переходного файла при сжатий |
|
imake (string,string) |
Создание переходного файла при восстановлений |
|
rac_chot_В () |
Создание матрицы В из исходного матрицы [8x8] - 128 |
|
rac_chot_FDCT () |
Создания матрицы FDCT |
|
rac_chot_Q (double) |
Создание матрицы квантования соответственно коэффициенту качества сжатия q |
|
rac_chot_A () |
Создания матрицы А с новыми значениями пикселей |
|
rac_chot_iA () |
Создания матрицы iA |
|
rac_chot_IDCT () |
Создания матрицы IDCT при восстановлений |
|
rac_chot_iB () |
Создания матрицы iB = IDCT + 128 |
Модуль преобразования дерева Хаффмана
Название функции и параметров |
Назначение |
|
mergingTree () |
Конструктор |
|
~mergingTree () |
Деконструктор |
|
insertNode (constNODETYPE) |
Вставление новый элемент в дерево |
|
createTree () |
Создание дерева |
|
isEmpty () |
Проверка пустоты дерева |
|
createHuffmanArrays () |
Создание массива при помощью метода сжатия Хаффмана |
|
getHuffmanNumbers () |
Возвращение вектора, включающего числа |
|
HuffmanElements () |
Возвращение вектора, включающего элемент |
|
*getRootCopy () |
Получение копий создаваемого дерева |
|
destroy (mergingTreeNode<NODETYPE> *) |
Уничтожение дерева |
|
max (int a, int b) |
Возвращение максимального значения между a и b |
Модуль преобразование структуры дерева Хаффмана
Название функции и параметров |
Назначение |
|
Heap (Heap<NODETYPE>&) |
Копия конструктора |
|
operator== (const Heap &) const |
Проверка равенства |
|
operator! = (const Heap &right) const |
Проверка неравенства |
|
insert (const NODETYPE) |
Вставка нового элемента в структуру дерева |
|
omit () |
Опускание корня дерева |
|
depth () |
Возвращение глубины дерева |
|
getSize () |
Получение размер дерева |
|
father (int) |
Возвращение позиций родителя одного элемента |
|
leftChild (int) |
Возвращение позиций левого ребёнка одного элемента |
|
rightChild (int) |
Возвращение позиций правого ребёнка одного элемента |
4.3 Особенности программной реализации
Мы будем рассматривать изображения с помощью программой IDRISI Kilimanjaro. Каждое изображение в данном формате состоит из двух файлов: файл данных (. rst), и документ файл (. rdc). В файле данных сохранится последовательность значения каждого пикселя, а информация о количестве строк и столбцов сохранится в файле документа. Пример:
Таблица 3. 1 - Структура файла данных (*. rst)
23 |
||||||||
25 |
||||||||
28 |
||||||||
31 |
||||||||
27 |
||||||||
25 |
Информация из файла документа говорить ПО нарисовать следующую матрицу. ==========================> |
23 |
25 |
28 |
31 |
27 |
||
26 |
25 |
26 |
31 |
32 |
24 |
|||
31 |
30 |
26 |
24 |
23 |
25 |
|||
32 |
||||||||
24 |
||||||||
30 |
||||||||
26 |
||||||||
24 |
||||||||
23 |
||||||||
25 |
Таблица 3. 2 - Структура файла документа (*. rdc)
file format: IDRISI Raster A.1 |
Тип изображение либо растровый, либо векторный. |
|
file title: Worcester West - Land Use / Land Cover |
Заголовок изображения. |
|
datatype: byte |
Типданных (в. rstфайле) - byte, integer (simple integer), и real (floating point). |
|
filetype: binary |
Формат данных (в. rst файле), может быть двоичным либо символьным. |
|
columns: 480 |
Количество столбцов. |
|
rows: 480 |
Количество строк. |
|
ref. system: plane |
Наименование географической проекции (например, plane, geographic (Lat/Long), UTM, SPC, и т.д.). |
|
ref. units: m |
Единиц измерения пространственных характеристик (например, разрешения точек, расстояние между объектами, и т.д.). В данном примере, единиц измерения является m, существуют и другие единицы как km, ft, miles, degrees, etc. |
|
unitdist.: 1.0000000 |
Коэффициент масштабирования единицы измерения (обычно равен 1). |
|
min. X: 0.0000000 |
Минимальное значение координат X. |
|
max. X: 14400.0000000 |
Максимальное значение координат Х. |
|
min. Y: 0.0000000 |
Минимальное значение координат Y. |
|
max. Y: 14400.0000000 |
Максимальное значение координат Y. |
|
pos'nerror: unknown |
Ошибка граничных значений координат. |
|
resolution: 30.0000000 |
Размеры точки, в данном примере длина и ширина равны 30 м. |
|
min. value: 1 |
Минимальное значение пикселя - это значение различается от координата обычно показывает тип ландшафтного покрытия в данной точки. |
|
max. value: 14 |
Максимальное значение точки. |
|
displaymin: 1 |
Минимальное значение, которое показывается на экране. |
|
displaymax: 14 |
Максимальное значение, которое показывается на экране. |
|
valueunits: unspecified |
Единицы измерения значения точки. Это значение может быть landuse (тип ландшафта) или classes (классы). |
|
valueerror: unknown |
Возможные ошибки значения точки. |
|
flagvalue: 0 |
Значение используется для отметки пикселей, которые игнорируются. В процессе моделирования, такие точки пропускаем. |
|
flagdef'n: none |
Определяет назначение значения в разделе flagvalue (unavailabledata, excludeddatavalues, и т.д.) |
|
legendcats: 14 |
Количество типов ландшафта (в случае valueunits: landuse) |
|
code 1: Water |
Code 1 - минимальное значение, которое обсудили выше, обозначает типа ландшафта например "Water" (Вода). |
|
code 2: Deciduous 1 |
||
code 3: Deciduous 2 |
||
code 4: Deciduous 3 |
||
code 5: Conifer 1 |
||
code 6: Conifer 2 |
||
code 7: Grass/Suburb |
||
code 8: Agriculture |
||
code 9: UrbanResid. |
||
code 10: UrbanComm. |
||
code 11: Pavement 1 |
||
code 12: Pavement 2 |
||
code 13: Gravel |
||
code 14: Barren |
Code 14 - максимальное значение, которое обсудили выше. |
Для выполнения сжатия размеры изображения нужны известны. Программа найдет файл *. rdc из адресафайла *. rst, читает размеры изображения из файла *. rdc. Это процесс выполняется функцией process_rdc (stringrstFile)
process_rdc (string rstFile)
{
int len,compare;
const int MaxString = 120;
bool done;
char line [100];
char str_column [] ="columns";
int column_done=-1;
done=false;
compare=1;
len=rstFile. length ();
rdcFile=rstFile. substr (0,len-3);
rdcFile += "rdc";
ifstream read_rdc (rdcFile. c_str (), ios:: in | ios:: binary);
while (done == false)
{
read_rdc. getline (line,MaxString);
if (column_done == - 1)
{
if ( (line [0] == str_column [0]) && (line [1] == str_column [1])
&& (line [2] == str_column [2]) && (line [3] == str_column [3]))
{
column_done=0;
int len_column=strlen (line);
char number [10];
int j=0;
for (int i=14; i<len_column; i++)
{
number [j] =line [i];
j++;
}
columns=atoi (number);
}
}
else if (column_done == 0)
{
done=true;
int len_row=strlen (line);
char number [10];
int j=0;
for (int i=14; i<len_row; i++)
{
number [j] =line [i];
j++;
}
rows=atoi (number);
}
}
}
Поэтому для выполнения сжатия пара файлов *. rdcи *. rst находится в одной папке.
4.4 Интерфейс программы
Ниже перечислены основные фрагменты интерфейсы ПО системы.
4.4.1 Модуль дифференциального сжатия
Данный модуль выполняет функцию дифференциального сжатия и восстановления. Ниже приведена основная экранная форма этого модуля
Рисунок 3. 3 - Интерфейс ПО для дифференциального сжатияbdjccnfyjdktybz
При дифференцированном сжатии входными являются степень фрагментацииL, Qmax, Qmin, k, адресы входного, выходного файлов.
При восстановлений, входными являются адресы входного и выходного файлов.
4.4.2 Модуль сжатия по заданному коэффициенту качества
Этот модуль выполняет функцию сжатия без фрагментации и восстановления. Ниже приведена основная экранная форма этого модуля
Рисунок 3. 4 - Интерфейс ПО для сжатия без фрагментации и восстановления
При сжатий, входными являются адресы входного, выходного файлов и коэффициент качества сжатия.
При восстановлений, входными являются адресы входного и выходного файлов.
4.4.3 Модуль сравнения двух изображений
Этот модуль выполняет функцию сравнения корреляции двух изображения. Ниже приведена основная экранная форма этого модуля
Рисунок 3. 5 - Интерфейс ПО для сравнения двух изображений
При сравнении корреляции, входными являются адресы двух файлов.
Вывод по главе
В соответствии с вышесказанным дифференциальным алгоритмом сжатия было создано ПО, позволяющее реализовать этот алгоритм удобным образом для пользователя. Кроме этого ПО позволяет выполнения сравнения эффективности предполагаемого дифференцированного сжатия. ПО характеризируется простым для пользователя графическим интерфейсом.
Перечень использованных источников
1. Введение в дистационное зодирование [электронный ресурс]. - Режим доступа: http://www.gasu.ru/resour/eposobia/posob/7.html.
2. Сжатие данных [электронный ресурс]. - Режим доступа: http://ru. wikipedia.org/wiki/Сжатие_данных.
3. Сжатие изображений [электронный ресурс]. - Режим доступа: http://ru. wikipedia.org/wiki/Сжатие_изображений.
4. Ватолин Д., Ратушняк А., Смирнов М., Юкин В. Методы сжатия данных. Устройство архиваторов, сжатие изображений и видео. - М.: ДИАЛОГ-МИФИ, 2002. - 384 с.
5. Wiki: Сжатие без потерь [электронный ресурс]. - Режим доступа: http://wapedia. mobi/ru/Lossless
6. Алгоритм RLE [электронный ресурс]. - Режим доступа: Алгоритм RLE
7. Алгоритм LZW [электронный ресурс]. - Режим доступа: http://www.algoritmy. info/picture5.html
8. Алгоритм Хаффмана [электронный ресурс]. - Режим доступа: http://www.codenet.ru/progr/alg/huffman. php
9. Сжатие данных с потерями [электронный ресурс]. - Режим доступа: http://ru. wikipedia.org/wiki/Сжатие_данных_с_потерями
10. Алгоритм JPEG [электронный ресурс]. - Режим доступа: http://www.univer. omsk. su/omsk/Edu/infpro/1/jpeg/algcz2. htm
11. Классификация спутниковых изображений [электронный ресурс]. - Режим доступа: http://ecobez. geo. pu.ru/edu/gis06/c3_5. htm
12. В.Ф. Бабкин, И.М. Книжный, К.Е. Хрекин. СЖАТИЕ МНОГОСПЕКТРАЛЬНЫХ ИЗОБРАЖЕНИЙ ДЛЯ ЗАДАЧ ДИСТАНЦИОННОГО ЗОНДИРОВАНИЯ ЗЕМЛИ ИЗ КОСМОСА - Институт космических исследований РАН
13. Christopher M. Wood. General data compression algorithm for space images using fractal techniques. Proc. SPIE, Vol.2198, 1336 (1994); doi: 10.1117/12.176818
14. Арманд А.Д. Механизмы устойчивости геосистем. - М.: Наука, 1992. - 208 с.
15. Формат IDRISI Килиманджаро [электронный ресурс]. - Режим доступа: http://www.eagleglobesoftware.com/formatsrd/IDRISI-Kilimanjaro. htm
tsrd/IDRISI-Kilimanjaro. Htm
Размещено на Allbest.ru
Подобные документы
Типы изображений (черно-белые, полутоновые, цветные) и их форматы. Устройства, создающие цифровые изображения, и их параметры. Применение и характеристики методов сжатия изображений. Поиск по содержимому в базах данных изображений. Структуры баз данных.
презентация [360,4 K], добавлен 11.10.2013Обработка изображений на современных вычислительных устройствах. Устройство и представление различных форматов изображений. Исследование алгоритмов обработки изображений на базе различных архитектур. Сжатие изображений на основе сверточных нейросетей.
дипломная работа [6,1 M], добавлен 03.06.2022Особенности работы программы ENVI, которая является наиболее совершенным программным обеспечением для работы с данными дистанционного зондирования. Спектральный анализ. Поддерживаемые форматы данных. Традиционный анализ изображений. Анализ местности.
отчет по практике [4,5 M], добавлен 28.08.2014Типы сжатия данных: с потерями (lossy) и без потерь (lossless). Сжатие с минимальной избыточностью. Кодирование методом Шеннона-Фано. Проверка работы программы по сжатию файлов формата bmp и xls. Реализация на Delphi алгоритма сжатия Шеннона и Хаффмана.
курсовая работа [2,6 M], добавлен 26.01.2011Положения алгоритмов сжатия изображений. Классы приложений и изображений, критерии сравнения алгоритмов. Проблемы алгоритмов архивации с потерями. Конвейер операций, используемый в алгоритме JPEG. Характеристика фрактального и рекурсивного алгоритмов.
реферат [242,9 K], добавлен 24.04.2015Выполнение геометрической коррекции сканированного листа карты Украины масштаба 1:1000000 в среде Erdas. Возможности выявления объектов с использованием радиолокационных снимков. Создание цифровых моделей рельефа и перспективных изображений местности.
курсовая работа [2,0 M], добавлен 17.12.2013Архивация и компрессия как методы сжатия изображений. Алгоритмы сжатия данных. Вспомогательные средства, которые используются для понижения объемов файлов: изменение цветовой модели изображения, изменение разрешения растрового файла, ресемплирование.
презентация [45,3 K], добавлен 06.01.2014Изучение современных методик компьютерной обработки биомедицинских изображений с целью улучшения изображений для их наилучшего визуального восприятия врачом-диагностом и эффективного сжатия изображений – для надежного хранения и быстрой передачи данных.
курсовая работа [2,3 M], добавлен 15.04.2019Классификация и основные характеристики метода сжатия данных. Вычисление коэффициентов сжатия и оценка их эффективности. Алгоритмы полиноминальных, экстраполяционных и интерполяционных методов сжатия и их сравнение. Оптимальное линейное предсказание.
курсовая работа [1,1 M], добавлен 17.03.2011Методы обработки растровых изображений (кластеризация, пороговая и интерактивная сегментация). Разработка программного модуля для системы мониторинга биосферы и дистанционного зондирования. Создание пользовательского интерфейса программного модуля.
курсовая работа [2,2 M], добавлен 29.04.2015