چکیده

با توجه به نیاز تصاویر با کیفیت بالا در میزان فشرده سازی بالا در بسیاری کاربردها از جمله ماهواره ها ، در این رساله بخش هایی از استاندارد 2000 JPEG که از لحاظ محاسباتی پیچیده و زمان بر است ، رویFPGA پیاده سازی شده است. بخش هایی از استاندارد که در این رساله پیاده سازی شده است، عبارتند از:

۱- تبدیل موجک گسسته دو بعدی D-DWT  کل کننده صفحه بیت (Bit Plan (Codingهریک از این بخش ها براساسی بهترین ساختارهایی که در مقالات معتبر بیان شده بود و با تغییراتی در جهت بهبود سخت افزار آن ، پیاده سازی شده است و نتایج آن با سایر کارها مقایسه گردیده است. سایر بخش ها که از جمله ساخت Packet می باشد، از لحاظ ساختاری مناسب برای پیاده سازی سخت افزاری نیست و بهتر است در یک پردازنده انجام گردد، به همین علت سایر بخش ها پیاده سازی نشده است . در این رساله شبیه سازی ها در نرم افزار Model Slim و ستتز در نرم افزار ISE صورت گرقته است .

کلمات کلیدی: 2000 JPEG ، فشرده سازی ، تبدیل موجک گسته دوبعدی

فهرست مطالب

فصل اول:مقدمه

۱.۱. پردازش تصویر و کاربرد های آن

بخش بزرگی از اطلاعات دریافتی از محیط ، توسط بینایی انسان صورت می گیرد . از اینرو پردازش اطلاعات بینایی توسط کامپیوتر تلاش عمده ی محققان و دانشمندان در دهه اخیر بوده است . تصویر نیز همانند بسیاری از سیگنال های دیگر در ابتدا انالوگ است ، لذا برای پردازش تصاویر دیجیتال ، ابتدا بایستی آنرا با استفاده از یک مبدل انالوگ به دیجیتال به اطلاعات دیجیتال تبدیل نمود. مجموعه ای از نقاط رنگی یا سیاه و سفید در کنار هم یک تصویر را می سازد .کاربرد هایی از پردازش تصویر که اغلب با انها مواجه بوده و هستیم : شناسایی اثر انگشت ، کنترل ترافیک شهری ، شناخت یک هدف از پیش تعریف شده برای یک موشک ، کنترل بینایی روی خط تولید و ….همه کاربرد هایی از پردازش تصویر هستند .

۴. ۱ روش های فشرده سازی با اتلاف

برای رسیدن به نسبت فشرده سازی بیشتر ، در تصاویر پیچیده تر ، روش های فشرده سازی با اتلاف مورد نیاز است . این نوع فشرده سازی تلاشی است در جهت تبادل بین کیفیت تصویر و میزان قشرده سازی ، از اینرو الگوریتم های فشرده سازی با اتلاف به میزان زیادی وابسته به کاربرد است . با روش های پیشرفته تری می توان تصاویر را به میزان زیادی فشرده کرد ، بدون اینکه اطلاعات از دست رفته تاثیر محسوسی روی تصویر داشته باشند . با استفاده از این روش ها فشرده سازی تا ۵۰ برابر با حداقل تاثیر روی کیفیت تصویر قابل دسترسی است . با استفاده از روش های جدید تر مثل 2000 PEGل می توان فشرده سازی را تا ۲۰۰ برابر با کیفیت تصویر خوب انجام داد . روش های ارتقاء و بازیابی تصویر را می توان با روش های فشرده سازی با اتلاف ترکیب نمود تا کیفیت تصویر بازسازی شده بهبود پیدا کند. اغلب این روش ها قابل تنظیم هستند و به کاربر امکان انتخاب میزان فشرده سازی و کیفیت مورد نظر را می دهد . عموما نسبت فشرده سازی بزرگ باعث تصاویر ضعیف تر می شود ، اما از طرفی این روش ها به میزان زیادی بستگی به نوع تصویر دارند . روشی که برای یک تصویر به خوبی کار می کند ، ممکن است

1-1-پردازش تصویر وکاربردهای آن 13

2-1-فرده سازی تصویر 14

3-1-روشهای فشرده سازی بدون اتلاف    16

4-1-روشهای فشرده سازی با اتلاف      17

5-1-الگوریتم فشرده سازی 19

اثر بلوک کردن در استاندارد JPEG

اثر بلوک کردن در استاندارد JPEG

فصل دوم:فشرده سازی تصویر

۲.۱ فشرده سازی تصویر

با توجه به حجم زیاد اطلاعات ، برای استفاده بهینه از منابع موجود و امکان ارائه بهترین خدمت ، بکار بستن روش هایی برای فشرده سازی اطلاعات الزامی است . در این فصل به کلیاتی در مورد فشرده سازی تصویر و همچنین کلیات کد کننده JPEG و جزئیات کد کننده 2000 JPEG خواهیم پرداخت .

۳. ۲. اجزای اصلی یک سیستم فشرده سازی تصویر

یک سیستم فشرده سازی تصاویر از دو قسمت اساسی کد کننده و دیکد را تشکیل شده است . در قسمت کد کننده، تصویر فشرده می شود و در صورت لزوم آرشیو شده و یا به جای دیگر انتقال داده می شود. S قسمت دریکدر تصویر کد شده بازیافت كمي شود ، پلیر معنا که عکسر عملیات انجام شده بر روی تصویر اساسا یک سیستم فشرده سازی داده شامل ۳ بخش عمده است

۲. ۲.۳ معیار های کیفیت

که داده های بازسازی شده با داده های اصلی متفاوت نیست . اختلاف داده های بازسازی شده از داده های اصلی اعوجاج نامیده می شود. اندازه گیری کیفیت می تواند بسیار ذهنی و بر اساس ادراکات انسان و یا با معادلات ریاضی صورت متفاوتی برای ارزیابی کیفیت الگوریتم های فشرده سازی وجود دارد.

۱. ۳. ۲.۳ معیار کیفیت ذهنی اغلب معیار کیفیت ذهنی به عنوان میانگین نمره ناظر نامیده می شود. راه های اماری متفاوتی برای

محاسبه M OS وجود دارد . یکی از ساده ترین راه ها این است که به صورت تصادفی تعدادی ناظر انتخاب می شوند و به کیفیت عکس بازسازی شده یک نمره بین ۱-۵ می دهند. (۱ نشان دهنده کمترین کیفیت و ۵ نشان دهنده بیشترین کیفیت) و میانگین نمره ای که همه ی ناظران به عکس بازسازی شده دادند ، به عنوان M OS بیان می شود . تکنیک های اندازه گیری MOS برای داده های ادراکی مختلف می تواند متفاوت باشد .همچنین تکنیک های ارزیابی کیفیت ذهنی یک تصویر ثابت با یک داده صوت می تواند کاملا متفاوت باشد .

۳. ۲.۳ تاخیر کدینگ 

در جایی که کدینگ و دیکدینگ در تعامل با هم هستند (از قبیل ویدئو کنفرانس ، مرورگر Onlineتصویر ، مخابرات صوت بیدرنگ، تاخیر کدینگ، یکی دیگر از معیارهای اندازه گیری فشرده سازی است. یک الگوریتم فشرده سازی پیچیده ممکن است یک مقدار فشرده سازی بهتری انجام دهد ، اما می تواند منجر به افزایش تاخیر کدینگ شود که برای کارهای بیدرنگ مناسب نیست . محدودیت تاخیر کدینگ ، اغلب طراحسیستم های فشرده سازی را محدود به استفاده از الگوریتم هایی با پیچیدگی کمتر برای فشرده سازی می کند.

۴. ۲.۳ پیچیدگی کدینگ

در جایی که نیازهای محاسباتی برای پیاده سازی انکدر و دیکدر معیار مهمی است، پیچیدگی کدینگ الگوریتم قشرده سازی برای اندازگیری عملکرد قشرده سازی در نظر گرفته می شود . نیازهای محاسباتی معمولا براساس میزان حافظه مورد نیاز و تعداد عملیات های حسابی مورد نیاز اندازه گیری می شوند. اغلب تعداد عملیات های ریاضی مورد نیاز با MOPS بیان می شوند، اما در ادبیات فشرده سازی ، اغلب با MIPS اندازه گیری صورت می گیرد. در سیستم های قابل حمل پیچیدگی عملیات از لحاظ میزان توان مصرفی ، یک معیار مهم محسوب می شود .

1-2-فشرده سازی تصویر 19

2-2-اجزای اصلی یک سیستم فشرده سازی تصویر  19

3-2-عملکرد فشرده سازی 22

1-3-2-نسبت فشرده سازی وبیت برهرنمونه 22

2-3-2-معیارهای کیفیت 23

3-3-2-تاخیر کدینگ 25

4-3-2-پیچیدگی کدینگ 25

4-2-استاندارد کدینگ تصویرثابت 26

1-4-2-استاندارد کدینگ ویدئو 26

5-2-فشرده سازی 27

6-2-استاندارد فشرده سازی 31

7-2-مروری بر سیستم انکدر        35

1-7-2-پیش پردازش تصویر  35

2-7-2-فشرده سازی          40

3-7-2-ساختن فریم  51

8-2-خلاصه 51

اسکن کردن ضرایب در بلوک8×8

اسکن کردن ضرایب در بلوک8×8

فصل سوم:تبدیل موجک دوبعدی گسسته

3-1-مقدمه

اگرچه تبدیل فوریه تا اواخر دهه ۱۹۵۰ هسته اصلی پردازش تصویر مبتنی بر تبدیل بود اما تبدیلات اخیر به نام تبدیل موجک برای فشرده سازی ، انتقال و تحلیلی بسیاری از تصاویر اسان تر است . بر خلاف تبدیل فوریه ، موجک ها دارای فرکانس متغیر و طول عمر محدودی اند . در سال ۱۹۸۹ موجک ها به عنوان مبنایی برای تحلیل و پردازش سیگنال ، به نام تئوری چند دقتی محسوب شد (مالات ۱۹۸۹) تئوری چند دقتی با نمایشی و تحلیل سیگنال ها و یا تصاویر در بیش از یک دقت سروکار دارد .است به اسانی در دقت دیگر تشخیص داده شوند . گرچه علاقه مندی جامعه تصویر برداری به تحلیل چند دقتی تا اواخر دهه ۱۹۸۰ محدود بود ولی اکنون مقالات و کتاب های مختلفی به ان پرداختند.می شوند تا اشیاء را ایجاد کنند. اگر ابعاد اشیاء کوچک باشد یا کنتراست آن ها پایین باشد ان ها را در دقت بالا بررسی می کنیم و اگر ابعاد ان ها بزرگ باشد و یا کنتراست بالا باشد تنها چیزی که مورد نیاز است نگاه کلی است.،اگر همزمان اشیاه کوچک وبزرگ یا اشیایی با کنتراست بالا وپایین وجود داشته باشد خوب است ان ها را در چندین دقت مطالعه کنیم . این کار انگیزه اصلی پردازش چند دقتی است.تبدیل موجک گسسته (DWT) برای رنج وسیعی از کاربردها از قبیل تحلیل صحبت، تحلیل عددی ، تحلیل سیگنال ، کدینگ تصویر، الگو شناسی ، بینایی کامپیوتر ، بیومتریک و … در نظر گرفته شده است . DWT را می توان به عنوان یک تجزیه چند دقتی در نظر گرفت که سیگنال را به چندین کامپوننت با باندهای فرکانسی مختلف تبدیل می کند.علاوه بر این DWT یک ابزار قدرتمند برای کاربردهای پردازش سیگنال از قبیل فشرده سازی تصویر ROI. Image denoising.JPEG2000 et و نهان نگاری است. با توجه به کاربرد های ذکر شده نیاز به پردازش DWT &ులు داریم . برای پردازش همزمان باید پیاده سازی 2D-DWT به دو دسته زیر تقسیم می شود :

از آنجایی که در پیاده سازی روش convolutional برای DWT پیچیدگی محاسباتی و نیز میزان حافظه مورد نیاز زیاد است ، روش Lifting Based برای DWT برای غلبه بر این مشکلات بیان شده است .راه حل هایی برای کاهش پیچیدگی برای کاربرد های فشرده سازی تصویر Lifting Based طرح از این پس طرح های تبدیل کارآمد برای کاربرد های Real time زیاد تقاضا خواهد شد . پیاده سازی DWT دو بعدی نیاز به محاسبات و همچنین میزان نقل و انتقالات میانی حافظه ای زیاد دارد. برای بهبود این. به خاطر latencyکم ، نقل و انتقالات کم حافظه ای ، جریان منظم سیگنال برای پیاده سازی حداقل نقل و انتقالات حافظه ای ” مورد نیاز یک LDWT دو بعدی با ابعاد N X N برای مد 5/3 IOSSleSS و loSSy 9/7 به ترتیب 2N و N 4 است . نیاز به کم کردن نقل و انتقالات حافظه ای یکی از نگرانی های اولیه برای پیاده سازی حوزه فرکانس فضایی است. معمولا براساس روش اسکن کردن سیگنال برای یک LDWT دو بعدی با ابعاد N × N برای دو مد ۵/۳ و ۹/۷ در محدوده N2, 2N تغییر می کند ا۳۵ . به منظور کاهش نقل و انتقالات حافظه دسترسی به حافظه باید محدود شود.در روش ما از حالت اسکن سطری تنها و یا اسکن ستونی تنها تغییر کرده و ترکیبی از این دو اسکن به کار رفته است ، تا میزان نقل و انتقالات حافظه را کاهش دهد . با روش جدید میزان نقل و انتقالات برای یکDWT دو بعدی N X N برای مد ۵/۳ و ۹/۷ به ترتیب 2N و 4N خواهد بود . ما ضرب کننده ها را با شیفت وجمع پیاده سازی کردیم تا میزان استفاده از سخت افزار را افزایش دهیم. این معماری ویژگی های زیر را دارد:

  • بهبود میزان سخت افزار مصرفی
  • کم کردن میزان نقل و انتقالات حافظه ای
  • جریان منظم سیگنال

در پیاده سازی انجام شده یک 2D Dual mode LDWT طراحی و با ModelSinn| شبیه سازی و باISE سنتز شده است.

3-4-4-ماژولCleanup Pass

همان طور که در شکل ۴- ۹ مشاهده می کنید ، این ماژول دارای شش ورودی Zeta ،Data ، Sigma ، Sigma_RLC ،Num_Strip و CI k می باشد . با هر کلاک بیت داده به ورودی این ماژول ارسال می شود و در صورتی که شرایط انجام این گذرا برای بیت ورودی برقرار شود (Context ،(Start Coding و Decision مربوط به آن بیت از طریق Sign Coding و یا Zero Coding و یا RLC Coding به خروجی ارسال می شود ودر صورتی که بیت ورودی نیز یک باشد، بیت Sigma مربوط به این بیت نیز یک خواهد شد. تنها در صورتی که تمام بیت های ستون داده در Strip صفر باشد ، RLC Codig اجرا خواهد شد. در صورتی که Start Coding) یک باشد ، سیگتال CXD_Valid نیز یک می شود که بیان کننده ی این است که CXD تولیدی در این ماژول معتبر می باشد.

1-3-مقدمه  52

2-3-معماری LDWT دوبعدی 55

3-3-تبدیل موجک گسسته   57

4-3-DWT کلاسیک 57

5-3-الگوریتم LDWTا   59

5-5-Binary arithmetic codingا  112

6-5-MQ-Coderا  115

1-6-5-وضعیت Context ها واحتمال رخداد سمبل 115

2-6-5-تئوی MQ-Coderا  115

3-6-5-پیاده سازی MQ-Coderا   117

4-6-5- MQ-Coderپیاده سازی شده 133

بلوک دیاگرام استاندارد JPEG2000

بلوک دیاگرام استاندارد JPEG2000

فصل چهارم

1-4-مقدمه

همان طور که درفصل 2 شکل 2-4 نشان داده شد،بعد از DWT وکوانتیزه کردن دومرحله کدینگ و قراردارند.درکدینگ  هرکدبلوک به طور مستقل با انتروپی کدینگ کد میشود.درکدینگ اطلاعات کلمه کدهای فشرده شده ی تولید از مرحله با استفاده از کدینگ کد میشوند.برخلاف و استفاده شده در استاندارد انتروپی کدینگ در ترکیبی از است.دراین فصل پیاده سازی در شرح داده میشود.

پیاده سازی 2D-DWT با استفاده از دوتا ID-DWT

پیاده سازی 2D-DWT با استفاده از دوتا ID-DWT

فصل پنجم

۵.۱ مقدمه

این فصلی ، برخی از الگوریتم های SOurce COding استفاده شده در فشره سازی تصویر از را شرح می دهیم. انتخاب یک الگوریتم در یک کاربرد معمولا وابسته به ویژگی های داده کد شده است . هر کدام از این کدینگ ها مزایا و معایبی از لحاظ پیچیدگی ، performance ، … دارند . در روش های قشرده سازی تصویر با اتلاف ، الگوریتم هایی SOLITCc COdillg بعد از بخش LTallSTOTTIlatiOIl و کوانتیزیشن استفاده می شوند . در روش های فشرده سازی بدون اتلاف الزامی نیست مرحله transforTillation وجود داشته باشد و تصویر ها با الگوریتم های Source coding فشرده می شوند

تبدیل موجک یک بعدی سه سطحی

تبدیل موجک یک بعدی سه سطحی

فصل ششم

یکی از مباحث مهم در پردازش تصویر فشرده سازی می باشد . افزایش نیاز برای ذخیره و ارسال تصاویر بیش از سایر پردازش ها حس می شود، حتی با افزایش قابلیت کامپیوتر ها در پردازش و ذخیره سازی و افزایش پهنای باند اینترنت ، نیاز برای بهبود الگوریتم های موجود در فشرده سازی تصویر افزایش می یابد . در این رساله بخش هایی از استاندارد 2000 JPEG که از لحاظ محاسباتی پیچیده و زمان بر است بر روی FPGA های شرکت XillinX موجود در ایران پیاده سازی شده است . تمرکز اصلی این رساله بر روی پیاده سازی صحیح هریک از این سه بلوک اساسی بوده است به طوری که در FPGA های موجود در ایران قابل پیاده سازی باشد . با توجه به اینکه پیاده سازی کاملی استاندارد در انحصار شرکت های بزرگ تجاری بوده و با قیمت گزاف به فروش می رسد، این رساله می تواند گام مثبتی در زمینه فشرده سازی تصویر در داخل کشور باشد.یکی از این بلوک ها تبدیل موجک گسسته دو بعدی (2D-DWT ) است . بلوک 2D-DWT پیاده سازی شده از سایر معماری های پیشنهاد شده از لحاظ latency ، میزان حافظه میانی لازم و نیز سرعت بهبود یافته است . این بهبود به خاطر نوع اسکن کردن داده های ورودی و نیز نوع حافظه های در نظر گرفته شده بدست آمده است . نتایج مقایسه در جدول ۶-۲ و نتایج سنتز این بلوک در چند FPGA در جدول ۶ – ۱ آمده است .

مراحل کد کننده JPEG

مراحل کد کننده JPEG

فصل هفتم:نتیجه گیری وکارهای آینده

معماری dual-mode LDWT پیاده سازی شده

معماری dual-mode LDWT پیاده سازی شده

فصل هشتم:منابع

فهرست شکلها

شکل ۲-۱ مراحل کد کننده JPEG ا     27

شکل ۲-۲ اثر بلوک کردن در استادارد JPEGا    28

شکل ۲-۳ اسکن کردن ضرایب در بلوک ۸×۸        29

شکل ۲-۴ بلوک دیاگرام استاندارد JPEG2000 ا       42

شکل ۲-۵ بلوک دیاگرام استاندارد JPEG2000 ا     42

شکل ۲-۶ بلوک دیاگرام استاندارد JPEG2000 با جزئیات بیشتر       44

شکل7-7 تصویر بازسازی شده با در نظر گرفتن ناحیه ROI ب)اختلاف بین تصویر اصلی وتصویر بازسازی شده  46

شکل2- ROI Maskا   47

شکل2-9Scaling ROI Coefficients ا         48

شکل2-10MAXSHIFTا    49

شکل ۳-۱ تبدیل موجک یک بعدی سه سطحی    59

شکل ۳-۲ ساختن یک D-DWT۲ با استفاده از یک D-DWT۱        60

شکل3-3 طرحLifting basedا         62

شکل ۳-۴ عملیات یک D-LDWT۲ در مد ۳/۵ loSSleSS و ۷/۹ lOSSyا   63

شکل ۳-۱۲ جزئیات مرحله اولی 2DWا      72

شکل ۳-۱۳ جزئیات مرحله دوم D-DWT۲ در باند (HH.HL)ا        73

شکل ۳-۱۴ جزئیات مرحله دوم D-DWT۲ در باند (HH.HL)ا   73

شکل ۳-۱۵ ساختار D-LD WT۲ پیاده سازی شده     75

شکل ۳-۱۶ ساختار فیلتر ها      76

شکل ۳-۱۷ طریقه تبدیل D-DWT۲ یک سطحی به چند سطحی  76

شکل ۴-۱ الگوی اسکن کردن داده ها در کد بلوک      81

شکل ۴-۲ همسایه های بیت Xا     82

شکل ۴-۶ فلوچارت ماژول         90

شکل ۴-۷ پارتیشن بندی کد بلوک به چهار حافظه        95

شکل ۴ – ۱۱ معماری سازماندهی حافظه داده             100

شکل ۴-۱۲ معماری سازماندهی حافظه Sigmaا      101

شکل ۴-۱۳ معماری سازماندهی حافظه Sigma Primeا   102

شکل ۴-۱۴ معماری سازماندهی حافظله Zetaا  103

شکل ۵-۱ طریقه محاسبه کد هافمن برای مثال بالا  109

شکل ۵-۲ فلوچارت MQ-Coderا   120

شکل ۵-۳ فلوچارت تابع INITENCا         121

شکل ۵-۴ کد تابع INITENCا   122

شکل ۵-۵ فلوچارت تابع ENCODEا  122

شکل ۵-۶ کد تابع CODELPSا   124

شکل7-5 فلوچارتاCODELPSا       124

شکل ۵ -۸ کد تابع CODEMPSا  126

شکل ۵-۹ فلوچارت تابع CODEMPSا    127

شکل ۵-۱۰ کد تابع RENORME    128

شکل ۵-۱۱ فلوچارت تابع RENORMEا   129

شکل ۵-۱۲ کد تابع BYTEOUTا   130

شکل ۵-۱۴ کد تابع FLUSHا   131

شکل ۵-۱۵ فلوچارت تابع FLUSHا      133

شکل ۵-۱۶ کد تابع SETBITا    134

شکل ۵ – ۱۷ فلوچارت تابع SETBITا   134

فهرست جداول

 جدول ۲-۱ الف عنصر Y – ب عناصر U ,V ا 30

جدول ۳-۱ گسترش مرزهای چپ و راست برای استاندارد JPEG2000 ا   66

جدول ۳-۲ مقایسه کارهای انجام شده با معماری پیاده سازی شده      77

جدول ۵-۱ کد گری چهار بیتی اعداد ۰ تا ۱۵    106

جدول ۵-۲ کد هافمن برای مثال بالا  108

جدول ۵-۴ ادامه مراحل انجام Arithmetic Codingا    112

جدول ۵-۵ احتمالی Qe و تخمین احتمال  138

جدول ۵-۶ مقداردهی اولیه IndeX برای context ها  139

جدول ۶-۱ نتایج سنتز بلوک DWT در FPGA های مختلف  141

جدول ۶-۲ مقایسه کارهای انجام شده با معماری پیاده سازی شده   141

جدول ۶-۳ نتایج سنتز بلوک BPC در FPGA های مختلف      142

جدول ۶-۴ نتایج سنتز بلوک MQ-Coder در FPGA های مختلف    143


Abstract

According to needs for high quality pictures with high compression, in variety of applications such as Satellite communications, in this thesis some parts of JPEG2000 standard with computation and time complexity, have been implemented on FPGA. This parts are:

(Two dimensional Discrete wavelet transform (2D-DWT

 Bit Plan Coding

Context-based Adaptive Binary Arithmetic Coding (MQ-Coder)

Each of these parts is implemented on basis of the best architectures in papers with some improvement on its hardware; and the results are compared with other similar works. Other parts, such as “Packet Creation that are intrinsically software-based, are not implemented and it is better to be implemented by a processor. In this thesis, simulations have been done in Modelsim and our synthesis tool is Xilinx ISE.

Key words: JPEG2000, Compression, 2D-DWT, Bit Plan Coding, MQCoder.


تعداد صفحات فایل : 150

مقطع : کارشناسی ارشد

بلافاصله بعد از پرداخت به ایمیلی که در مرحله بعد وارد میکنید ارسال میشود.


فایل pdf غیر قابل ویرایش

خرید فایل pdf و word

قبل از خرید فایل می توانید با پشتبانی سایت مشورت کنید