an implementation of quadtree for image compression
DESCRIPTION
An implementation of Quadtree in C#. It is used for images compression (in different techniques.)TRANSCRIPT
4/1/2012
MULTIMEDIA ASSIGNMENT #1 | ZGTR & HASSNOC
محمد حسه سرحان محمد شاكر
مدحت الصوص
2102
OCTREE APPS
ZGTR & HasSNov
April 1, 2012 [OCTREE]
1 Mohammad Shaker & Hasan Serhan
الفهرس
2 ...................................................................................................األشجار أنواع
التقابل توابع أنواع Mapping ............................................................................... 3
الـ ملفاتGIF .................................................................................................... 4
4 ................................................................................................ المستخدم واجهة
April 1, 2012 [OCTREE]
2 Mohammad Shaker & Hasan Serhan
أنىاع األشجار
تختلف فما بنها بطرق تخفف العقد Octreeوجد ضمن المشروع عدة أنواع من أشجار الـ
(Collapsing, reduce).
شرح عنها فما ل )نقصد بمتوازنة أي أنه ألي فرع ف أي لحظة نفس االرتفاع، ع مع سنورد األنوا
أما غر المتوازنة فممكن أن تحوي على أوراق ف مستوات مختلفة(.
Type
متوازنة، تقوم بتخفف العقد ف المستوى السابع فقط تبعا ألقل عدد أبناء
OctreeBalancedLeastC7LCollapsing نة
زوا
مت
متوازنة، تقوم بتخفف العقد ف بدءأ من العقد المطلوب التخفف منها وتزل جمع
األبناء وذلك أضا تبعا ألقل عدد أبناءOctreeBalancedLeastCAllCollapsing
متوازنة، تخفف العقد اعتمادا على األقل زارة
OctreeBalancedLeastVAllSidesCollapsing
OctreeUnBalancedLeastChilds متوازنة، تعتمد على األقل أبناءغر
نةزوا
متر
غ
غر متوازنة، تعتمد على قص طرف واحد من العقدة المراد التخفف عندها وتعتمد على
األقل زارةOctreeUnBalancedLeastV1SideCollapsing
April 1, 2012 [OCTREE]
3 Mohammad Shaker & Hasan Serhan
غر متوازنة تعتمد على قص جمع األبناء التخفف عندها وتعتمد على من العقدة المراد
األقل زارةOctreeUnBalancedLeastVAllSidesCollapsing
أنىاع تىابع التقابلMapping
وجد عدة أنواع لتوابع التقابل كما هو موضح:
Typeالنوع الشرح
وجد المسافة بن مركبة واحدة فقط )حمراء، خضراء، زرقاء(
ColorComponent
المسافة تبعا للمركبات الثالثة معا وجد ColorComponentsSum
وجد المساقة تبعا لتحسس العن البشرة لألحمر واألخضر أكثر منها لألزرق
ColorWeightedComponentSum
وجد المساقة األقلدة بن مجموع المركبات للونن
EcludianDistanceARGB
لونن تبعا للمركبات وجد المسافة اإلقلدة بن الثالثة
EcludianDistanceColorComponents
April 1, 2012 [OCTREE]
4 Mohammad Shaker & Hasan Serhan
الـ اتملفGIF لون على 256تستخدم هذه الالحقة للصور وتتمز بأن الصور فها تكون صغرة الحجم حث تتكون من
األكثر.
وتم n^2تعتمد هذه الالحقة على جدول ألوان حوي األلوان الموجودة ف الصورة، عدد هذه األلوان من رتبة
للون موجود ف جدول األلوان. Indexربط كل بكسل من الصورة بـ
من أهم صفات صور هذه الالحقة أنها صغرة الحجم وبالتال مناسبة لالنترنت، مع العلم أن هناك جزء من
لة الصورة ضع بسبب نقص األلوان ف الصورة.جما
واستطعنا بعدها الحصول على مصفوفة Octreeبما أن جدول األلوان جاهز لدنا بعد تطبق خوارزمة الـ
ألوان الصورة مقربة إلى األلوان الموجودة ف الجدول فقط، فوضعنا مزة حفظ الصورة بهذه الالحقة.
ممتازة وال Gifمن األلوان كرسوم الكرتون البسطة أو ما شابه تكون الحقة ف الصور الت تحوي عدد قلل
JPEG تسبب أي خسارة ف األلوان، وف الواقع ه تضغط الصورة ف مثل هذه الحاالت أكثر من صور الـ
بأحد برامج الضغط هو عملة زائدة بال نتجة ألن الصور بهذه الالحقة GIFحث أن محاولة ضغط صورة
.LZWتكون غالبا مضغوطة أصال عن طرق خوارزمة الضغط
واجهة المستخدم
تتح الواجهة التحكم بكل ما رده المستخدم، كما تتح له مقارنة أكثر من صورة معا
كما تاح له استخدام أي نوع أشجاء مع أي نوع من توابع مكن للمستخدم تحدد عدد العقد كما شاء،
التقابل.
April 1, 2012 [OCTREE]
5 Mohammad Shaker & Hasan Serhan
GIF, JPGعرض للمستخدم كل صورة مع زمن المعالجة وإمكانة إخراجها إلى ملفات
كما تاح له طبعا أزالتها أو تكبرها وتصغرها.
April 1, 2012 [OCTREE]
6 Mohammad Shaker & Hasan Serhan
لمعرفة كفة تكرار األلوان Histogramكما مكن عرض جدول األلوان ألي صورة مع ما رافقه من
ف الصورة.