• مبانی نظریه تبدیل موجک. K.A. Alekseev. موجک ها، تقریب و کاربردهای آماری

    • آموزش

    موجک ها در حال حاضر همه چیز خشم هستند. حتی افراد بی تجربه در ریاضیات احتمالا شنیده اند که با کمک آنها می توان تصاویر و فیلم ها را با حفظ کیفیت قابل قبول فشرده کرد. اما موجک چیست؟ ویکی‌پدیا با مجموعه‌ای از فرمول‌ها به این سؤال پاسخ می‌دهد که دیدن اصل آن چندان آسان نیست.

    بیایید تلاش کنیم مثال های سادهبفهمید که موجک ها از کجا می آیند و چگونه می توان از آنها در فشرده سازی استفاده کرد. فرض بر این است که خواننده با اصول اولیه آشنا است جبر خطی، از کلمات بردار و ماتریس نمی ترسد و همچنین می داند چگونه آنها را ضرب کند. (و حتی سعی کنید چیزی را برنامه ریزی کنید.)

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

    به زبان ساده، تصویر جدولی است که رنگ های هر پیکسل را در سلول های خود ذخیره می کند. اگر با یک تصویر سیاه و سفید (یا به طور دقیق تر، خاکستری) کار می کنیم، به جای رنگ، سلول ها با مقادیر روشنایی از بخش پر می شوند. در این حالت، 0 مربوط به سیاه و 1 به سفید است. اما کار با کسری ناخوشایند است، بنابراین اغلب مقادیر روشنایی به عنوان اعداد صحیح از محدوده 0 تا 255 در نظر گرفته می شوند. سپس هر مقدار دقیقاً 1 بایت خواهد گرفت.

    حتی تصاویر کوچک نیاز به فضای ذخیره سازی زیادی دارند. بنابراین، اگر روشنایی هر پیکسل را با یک بایت رمزگذاری کنیم، تصویر یک فریم با فرمت FullHD (1920 × 1080) تقریباً دو مگابایت خواهد بود. تصور کنید برای ذخیره یک ساعت و نیم فیلم چقدر حافظه لازم است!

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

    الگوریتم های فشرده سازی داده های زیادی وجود دارد. تعداد آنها را می توان با فرمت های پشتیبانی شده توسط بایگانی های مدرن ارزیابی کرد: ZIP، 7Z، RAR، ACE، GZIP، HA، BZ2، و غیره. جای تعجب نیست که به لطف کار فعال دانشمندان و برنامه نویسان، درجه فشرده سازی داده ها اکنون به حد نظری نزدیک شده است.

    خبر بد این است که این محدودیت نظری برای یک تصویر چندان عالی نیست. سعی کنید عکس را ذخیره کنید (مخصوصاً با مقدار زیادقطعات کوچک) فرمت PNG- اندازه فایل حاصل ممکن است شما را ناراحت کند.

    این به دلیل این واقعیت است که در تصاویر از دنیای واقعی (به عنوان مثال، عکس ها)، مقادیر روشنایی به ندرت یکسان است، حتی برای پیکسل های مجاور. همیشه نوسانات کوچکی وجود دارد که برای چشم انسان گریزان است، اما الگوریتم فشرده سازی صادقانه سعی می کند آنها را در نظر بگیرد.

    الگوریتم های فشرده سازی آن را دوست دارند زمانی که یک الگو در داده ها وجود دارد. دنباله های طولانی صفر به بهترین وجه فشرده می شوند (الگو در اینجا واضح است). در واقع، به جای نوشتن 100 صفر در حافظه، می توانید به سادگی عدد 100 را بنویسید (البته با توجه به این که این دقیقاً تعداد صفرها است). برنامه رمزگشایی "می فهمد" که منظور صفرها بوده و آنها را بازتولید خواهد کرد.

    با این حال، اگر در دنباله ما ناگهان یک واحد در وسط ظاهر شود، نمی‌توان خود را به یک عدد 100 محدود کرد.

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

    تبدیل هار

    بنابراین، هدف ما این است که تصویر را به گونه‌ای تبدیل کنیم که توسط الگوریتم‌های کلاسیک به خوبی فشرده شود. بیایید در مورد چگونگی تغییر آن برای بدست آوردن رشته های طولانی صفر فکر کنیم.

    تصاویر "واقعی"، مانند عکس ها، یک ویژگی دارند - روشنایی پیکسل های مجاور معمولاً مقدار کمی متفاوت است. در واقع، در جهان به ندرت می توان تغییرات شدید و متضاد در روشنایی را مشاهده کرد. و اگر هم باشند، تنها بخش کوچکی از تصویر را اشغال می کنند.

    بیایید قطعه ای از ردیف اول روشنایی را از تصویر شناخته شده "Lenna" (در شکل) در نظر بگیریم.

    154, 155, 156, 157, 157, 157, 158, 156

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

    ما گرفتیم:

    154, 1, 1, 1, 0, 0, 1, -2.

    در حال حاضر بهتر است! چنین روشی در واقع استفاده می شود و به آن کدگذاری دلتا می گویند. اما او دارد ضرر جدی- غیر محلی است. یعنی نمی توان قطعه ای از دنباله را گرفت و دقیقاً بدون رمزگشایی تمام مقادیر قبل از این قطعه، مشخص کرد که کدام روشنایی در آن کدگذاری شده است.

    سعی کنیم در غیر این صورت عمل کنیم. سعی نمی کنیم فوراً یک سکانس خوب بدست آوریم، سعی می کنیم حداقل کمی آن را بهبود ببخشیم.

    برای انجام این کار، تمام اعداد را به جفت تقسیم می کنیم و نیمی از مجموع و نیم تفاوت مقادیر هر کدام را پیدا می کنیم.

    (154, 155), (156, 157), (157, 157), (158, 156)
    (154.5, 0.5), (156.5, 0.5), (157, 0.0), (157, -1.0)

    چرا دقیقاً نصف جمع و نیم تفاوت؟ و همه چیز بسیار ساده است! نصف مجموع مقدار متوسط ​​روشنایی یک جفت پیکسل است. و نیمه تفاوت اطلاعاتی در مورد تفاوت بین مقادیر در یک جفت دارد. بدیهی است که با دانستن نیمی از مجموع a و نیمه تفاوت d، می توانید خود مقادیر را پیدا کنید:
    اولین مقدار در جفت = a - d،
    مقدار دوم در جفت = a + d.

    این تحول در سال 1909 توسط آلفرد هار پیشنهاد شد و نام او را یدک می‌کشد.

    فشرده سازی کجاست؟

    اعداد به دست آمده را می توان بر اساس اصل "مگس ها به طور جداگانه، کتلت ها به طور جداگانه" دوباره گروه بندی کرد و نیمی از مجموع ها و نیم تفاوت ها را تقسیم کرد:

    154.5, 156.5, 157, 157; 0.5, 0.5, 0.0, -1.0.

    اعداد در نیمه دوم دنباله معمولاً کوچک هستند (این واقعیت است که آنها اعداد صحیح نیستند، اجازه دهید هنوز شما را آزار ندهد). چرا اینطور است؟

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

    در واقع، بیایید 2000 جفت اول پیکسل های همسایه را در نظر بگیریم و هر جفت را در نمودار به عنوان یک نقطه نشان دهیم.

    همه نقاط در یک خط مستقیم قرار می گیرند. و تقریباً در تمام تصاویر واقعی همینطور. گوشه سمت چپ بالا و پایین سمت راست تصویر تقریبا همیشه خالی است.

    و حالا نموداری را در نظر بگیرید، نقاطی که در آن نصف جمع و نیم تفاضل خواهد بود.

    می توان مشاهده کرد که تفاوت های نیمه در محدوده بسیار باریک تری از مقادیر هستند. و این بدان معنی است که شما می توانید کمتر از یک بایت برای آنها هزینه کنید. چه-نه، و فشرده سازی.

    بیایید حساب کنیم!

    بیایید سعی کنیم عبارات ریاضی توصیف کننده تبدیل هار را بنویسیم.

    بنابراین، ما یک جفت پیکسل (بردار) داشتیم، و می‌خواهیم یک جفت پیکسل به دست آوریم.

    چنین تبدیلی با یک ماتریس توصیف می شود.

    در واقع چیزی که ما نیاز داشتیم

    خواننده با دقت باید متوجه شده باشد که الگوهای نقطه در دو نمودار آخر یکسان است. تنها تفاوت در چرخش 45 درجه است.

    در ریاضیات، چرخش ها و کشش ها را تبدیل های افین می نامند و فقط با ضرب یک ماتریس در یک بردار توصیف می شوند. چیزی که در بالا گرفتیم. یعنی تبدیل هار صرفاً چرخش نقاط است به گونه ای که بتوان آنها را به راحتی و به طور فشرده کدگذاری کرد.

    درست است، یک تفاوت ظریف وجود دارد. تبدیل های افین می توانند مساحت یک شکل را تغییر دهند. نه اینکه بد بود، اما به نوعی شلخته بود. همانطور که می دانید ضریب تغییر مساحت برابر با تعیین کننده ماتریس است. بیایید ببینیم برای تبدیل هار چیست.

    برای اینکه تعیین کننده تبدیل شود برابر با یککافی است هر عنصر ماتریس را در ضرب کنیم. این روی زاویه چرخش (و از این رو "توانایی فشاری" تبدیل) تاثیری نخواهد داشت.

    ما در نهایت به یک ماتریس می رسیم

    چگونه رمزگشایی کنیم؟

    همانطور که می دانید، اگر تعیین کننده یک ماتریس برابر با صفر نباشد، یک ماتریس معکوس برای آن وجود دارد که عمل آن را "لغو" می کند. اگر یک ماتریس معکوس برای H پیدا کنیم، رمزگشایی به سادگی شامل ضرب بردارهایی با مجموع نیم و نیم تفاوت در آن خواهد بود.

    به طور کلی، یافتن معکوس یک ماتریس کار آسانی نیست. اما شاید بتوان این کار را به نحوی ساده کرد؟

    بیایید نگاهی دقیق تر به ماتریس خود بیندازیم. از دو بردار ردیف تشکیل شده است: و . بیایید آنها را v 1 و v 2 بنامیم.

    خواص جالبی دارند.

    ابتدا طول آنها برابر با 1 است، یعنی . در اینجا حرف T مخفف جابجایی است. ضرب یک بردار ردیف در یک بردار ردیف جابجا شده یک ضرب نقطه است.

    ثانیاً متعامد هستند، یعنی .

    ماتریسی که ردیف‌های آن دارای ویژگی‌های مشخص شده باشد، متعامد نامیده می‌شود. یک ویژگی بسیار مهم چنین ماتریس هایی این است که ماتریس معکوس برای آنها را می توان با یک جابجایی ساده به دست آورد.

    اعتبار این عبارت را می توان با ضرب H در ماتریس معکوس تأیید کرد. در مورب، حاصل ضربات اسکالر بردارهای ردیف را به تنهایی به دست می آوریم، یعنی 1. و در خارج از قطرها، حاصل ضربات اسکالر بردارهای ردیف را با یکدیگر می گیریم، یعنی 0. در نتیجه حاصل ضرب می شود. برابر با ماتریس هویت خواهد بود.

    ما ماتریس های متعامد را دوست داریم!

    افزایش تعداد امتیازات

    همه موارد بالا برای دو نقطه به خوبی کار می کنند. اما اگر امتیاز بیشتری وجود داشته باشد چه؟

    در این مورد، همچنین می توان تبدیل را با یک ماتریس، اما از نظر اندازه بزرگتر، توصیف کرد. مورب این ماتریس از ماتریس های H تشکیل می شود، بنابراین در بردار مقادیر اولیه، جفت هایی انتخاب می شوند که تبدیل هار به طور مستقل روی آنها اعمال می شود.

    به این معنا که. بردار اصلی به سادگی به طور مستقل در جفت پردازش می شود.

    فیلترها

    بنابراین، وقتی می دانیم چگونه تبدیل هار را انجام دهیم، بیایید سعی کنیم بفهمیم که چه چیزی به ما می دهد.

    "نصف مجموع" حاصل (به دلیل اینکه ما بر 2 تقسیم نمی کنیم، باید از نقل قول استفاده کنیم) همانطور که قبلاً متوجه شدیم مقادیر متوسط ​​​​در جفت پیکسل هستند. یعنی در واقع مقادیر نیم جمع کپی شده از تصویر اصلی هستند! کاهش یافت زیرا مجموع نیم‌ها دو برابر کمتر از پیکسل‌های اصلی است.

    اما چه تفاوت هایی وجود دارد؟

    مجموع نصف میانگین مقادیر روشنایی است، به این معنی که آنها مقادیر تصادفی را فیلتر می کنند. می توانیم فرض کنیم که این نوعی فیلتر فرکانس است.

    به طور مشابه، تفاوت ها بین مقادیر بین پیکسل ها "انتخاب می کنند" و جزء ثابت را حذف می کنند. یعنی "فیلتر" می کنند فرکانس های پایین.

    بنابراین، تبدیل هار یک جفت فیلتر است که سیگنال را به اجزای فرکانس پایین و فرکانس بالا جدا می کند. برای دریافت سیگنال اصلی، فقط باید این اجزا را دوباره ترکیب کنید.

    چه چیزی به ما می دهد؟ فرض کنید یک عکس پرتره داریم. جزء فرکانس پایین اطلاعاتی در مورد شکل کلی صورت، در مورد تغییرات صاف در روشنایی دارد. فرکانس بالا نویز و جزئیات کوچک است.

    معمولاً وقتی به یک پرتره نگاه می کنیم، بیشتر به مولفه فرکانس پایین علاقه مندیم، به این معنی که هنگام فشرده سازی، می توان برخی از داده های فرکانس بالا را دور انداخت. علاوه بر این، همانطور که متوجه شدیم، معمولا مقادیر کوچکتری دارد، به این معنی که فشرده تر رمزگذاری شده است.

    نسبت تراکم را می توان با اعمال تبدیل هار چندین بار افزایش داد. در واقع، جزء فرکانس بالا تنها نیمی از کل مجموعه اعداد است. اما چه چیزی ما را از اعمال مجدد رویه خود به داده های فرکانس پایین باز می دارد؟ پس از استفاده مکرر، اطلاعات با فرکانس بالا در حال حاضر 75٪ را اشغال می کند.

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

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

    مناطق سیاه مربوط به روشنایی کم است، یعنی مقادیر نزدیک به صفر. همانطور که تمرین نشان می دهد، اگر مقدار به اندازه کافی کوچک باشد، می توان آن را گرد یا صفر کرد بدون اینکه آسیب زیادی به تصویر رمزگشایی شده باشد.

    این فرآیند کوانتیزه شدن نامیده می شود. و در این مرحله است که برخی از اطلاعات از بین می رود. (اتفاقاً در JPEG از همین روش استفاده می شود اما به جای تبدیل هار از تبدیل کسینوس گسسته استفاده می شود.) با تغییر تعداد ضرایب پوچ شدنی می توانید نسبت فشرده سازی را کنترل کنید!

    البته اگر بیش از حد ریست کنید، اعوجاج برای چشم قابل مشاهده خواهد بود. هر چیزی نیاز به اندازه گیری دارد!

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

    رمزگشایی به ترتیب معکوس انجام می شود: بایگانی را باز کنید، تبدیل معکوس هار را اعمال کنید و تصویر رمزگشایی شده را در یک فایل بنویسید. وویلا!

    تحول هار کجا موثر است؟

    زمانی که تبدیل هار خواهد داد بهترین نتیجه? بدیهی است که وقتی تعداد زیادی صفر دریافت می کنیم، یعنی زمانی که تصویر شامل بخش های طولانی است همان مقادیرروشنایی. سپس تمام اختلافات باطل خواهد شد. این می تواند، برای مثال، یک اشعه ایکس، یک سند اسکن شده باشد.

    می گویند تبدیل هار جزء ثابت را حذف می کند (همچنین لحظه مرتبه صفر است) یعنی ثابت ها را به صفر تبدیل می کند.

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

    این مشکل و مشکلات پیچیده تر (حذف لحظه های مرتبه بالاتر) توسط Ingrid Daubechies، یکی از خالقان نظریه موجک ها حل شد.

    دگرگونی Daubechies

    برای تحول بهبود یافته ما، دو امتیاز کافی نخواهد بود. بنابراین، ما چهار مقدار را می گیریم که هر بار 2 عدد تغییر می کند.

    یعنی اگر دنباله اصلی 1، 2، 3، 4، 5، 6، ...، N-1، N باشد، آنگاه چهار (1، 2، 3، 4)، (3، 4) را می گیریم. ، 5، 6) و غیره چهار نفر آخر دنباله را توسط دم گاز می گیرند: (N-1، N، 1، 2).

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

    بگذارید مقادیر روشنایی در چهار عدد x، y، z، t باشد. سپس اولین فیلتر را در فرم می نویسیم

    چهار ضریب که بردار ردیف ماتریس تبدیل را تشکیل می دهند هنوز برای ما ناشناخته هستند.

    برای اینکه بردار ردیف ضرایب فیلتر دوم را متعامد به اولی کنیم، همان ضرایب را می گیریم اما آنها را مرتب می کنیم و علائم را تغییر می دهیم:

    ماتریس تبدیل شبیه خواهد بود.

    شرط متعامد بودن به طور خودکار برای ردیف اول و دوم برآورده می شود. ما نیاز داریم که ردیف های 1 و 3 نیز متعامد باشند:

    بردارها باید واحد طول داشته باشند (در غیر این صورت تعیین کننده واحد نخواهد بود):

    تبدیل باید زنجیره ای از مقادیر یکسان را صفر کند (به عنوان مثال، (1، 1، 1، 1)):

    تبدیل باید زنجیره ای از مقادیر در حال رشد خطی را صفر کند (به عنوان مثال، (1، 2، 3، 4)):

    به هر حال، اگر این چهار به صفر بازنشانی شود، سایر موارد در حال رشد یا کاهش خطی دیگر نیز بازنشانی خواهند شد. با نوشتن معادله مربوطه و تقسیم تمام ضرایب بر فاکتور اول می توان این موضوع را به راحتی تایید کرد.

    4 معادله مربوط به ضرایب را دریافت کرد. با حل آنها، دریافت می کنیم:

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

    یکی دیگر از ویژگی های خوب - مصنوعات پس از کوانتیزاسیون چندان قابل توجه نخواهند بود.

    این تبدیل موجک D4 نامیده می شود (خواننده دعوت می شود تا رمز و راز این نام الفبایی را به تنهایی کشف کند).

    موجک های دیگر

    البته می توان از این هم فراتر رفت و خواستار حذف مولفه سهموی (لمان مرتبه دوم) و غیره شد. در نتیجه، موجک های D6، D8 و دیگران را دریافت می کنیم.

    برای اینکه همه چیز را به صورت دستی شمارش نکنیم، ضرایب را می توان در ویکی پدیا مشاهده کرد.

    Daubechies خیلی باز شد راه جالببه دست آوردن ضرایب این تبدیل ها، اما افسوس، این در حال حاضر خارج از محدوده مقاله ما است.

    مشق شب

    برای اینکه در نهایت به اصول اولیه برسید، پیشنهاد می‌کنم برنامه‌ای را به زبان مورد علاقه‌تان بنویسید که یک تصویر را باز می‌کند، تبدیل Haar (یا حتی D4) را انجام می‌دهد، نتیجه را کوانتیزه می‌کند و سپس نتیجه را در یک فایل ذخیره می‌کند. سعی کنید این فایل را با آرشیو مورد علاقه خود فشرده کنید. خوب فشرده میشه؟

    تبدیل معکوس را امتحان کنید. ماهیت آثار موجود در تصویر را چگونه توضیح می دهید؟

    نتیجه

    بنابراین، به طور خلاصه ایده های اصلی تبدیل موجک گسسته را مرور کردیم.

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

    تبدیل موجک (یا تبدیل موج گسسته) به طور عمده برای تجزیه و تحلیل سیگنال های غیر ثابت استفاده می شود و برای بسیاری از مسائل از این نوع کارآمدتر از تبدیل فوریه است.

    تبدیل فوریه سیگنال را به اجزایی به شکل سینوس و کسینوس تجزیه می کند، یعنی. توابع بومی سازی شده در فضای فوریه. برعکس، تبدیل موجک را می توان با تبدیل انتگرال (1.40) بیان کرد، که در آن نماد نفی به معنای مزدوج پیچیده و تابعی است. تابع را می توان خودسرانه انتخاب کرد، اما باید قوانین خاصی را رعایت کند.

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

    1. تبدیل موجک گسسته یک بردار داده به همان طول ورودی را برمی گرداند. معمولاً حتی در این بردار، بسیاری از داده ها تقریباً صفر هستند. این مربوط به این واقعیت است که آن را به مجموعه ای از موجک (توابع) که متعامد به ترجمه موازی و مقیاس آنها تجزیه می شود. بنابراین، سیگنال مشابه را به همان یا تجزیه می کنیم تعداد کمترضرایب طیف موجک، که تعداد نقاط داده سیگنال است. به عنوان مثال، یک طیف موجک مشابه برای پردازش و فشرده سازی سیگنال قابل استفاده است، زیرا ما هیچ اطلاعات اضافی در اینجا دریافت نمی کنیم.

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

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

    تبدیل موجک گسسته (DWT) اجرای تبدیل موجک با استفاده از مجموعه ای مجزا از مقیاس ها و ترجمه های موجک است که از برخی قوانین خاص پیروی می کنند. به عبارت دیگر، این تبدیل سیگنال را به مجموعه ای متعامد از موجک ها تجزیه می کند، که تفاوت اصلی با تبدیل موجک پیوسته (CWT) یا اجرای آن برای سری های زمانی گسسته است، که گاهی اوقات تبدیل موجک گسسته پیوسته (DT) نامیده می شود. -CWT).

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

    ضریب مقیاس کجاست (معمولاً 2 انتخاب می شود).

    علاوه بر این، ناحیه زیر تابع باید نرمال شود و تابع مقیاس بندی باید متعامد به ترجمه های عددی آن باشد، یعنی.

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

    روی انجیر 2.1 برخی از توابع و موجک های مقیاس بندی را نشان می دهد. معروف ترین خانواده موجک های متعارف خانواده Daubechies است. موجک های آن معمولاً با تعداد ضرایب غیر صفر نشان داده می شوند، بنابراین معمولاً در مورد موجک Daubechies 4، Daubechies 6 (4 و 6 به معنای ترتیب موجک) و غیره صحبت می کنیم. به طور کلی، با افزایش تعداد ضرایب، توابع موجک هموارتر می شوند. موجک دیگری که ذکر شد ساده ترین موجک هار است که از آن استفاده می کند موج مربعیبه عنوان یک تابع مقیاس بندی

    تابع مقیاس بندی هار و موجک (چپ) و اجزای فرکانس آنها (راست)

    تابع مقیاس‌بندی Daubechies 4 و موجک (چپ) و اجزای فرکانس آنها (راست)

    تابع مقیاس‌بندی Daubechies 20 و موجک (چپ) و اجزای فرکانس آنها (راست). 2.1

    تفاوت اصلی تبدیل موجک در تجزیه داده ها نه توسط سینوسی ها (مانند تبدیل فوریه)، بلکه توسط توابع دیگری به نام مولد موجک است. توابع تشکیل موجک، بر خلاف سینوسی‌های نوسانی بی‌نهایت، در ناحیه‌ای محدود از آرگومان خود قرار دارند و دور از آن برابر با صفر یا ناچیز هستند. نمونه ای از چنین عملکردی به نام "کلاه مکزیکی" در شکل نشان داده شده است. 2.2.

    شکل 2.2 مقایسه تابع سینوسی و موجک

    مشخص است که یک سیگنال دلخواه که برای آن شرط را می توان با یک سیستم متعامد از توابع نشان داد:

    , (18)

    ضرایب از نسبت تعیین می شود

    ,

    جایی که مربع هنجار یا انرژی تابع پایه است. سری (18) را سری فوریه تعمیم یافته می نامند. در این حالت، محصولات شکل موجود در سری (18) نشان دهنده چگالی طیفی سیگنال و ضرایب نشان دهنده طیف سیگنال هستند. ماهیت تجزیه و تحلیل طیفی سیگنال تعیین ضرایب است. با دانستن این ضرایب، می توان سیگنال های (تقریبی) را برای تعداد ثابتی از ردیف ها ترکیب کرد:

    .

    سری فوریه تعمیم یافته برای سیستم داده شدهتوابع پایه و تعداد عبارت ها، بهترین ترکیب را با توجه به معیار حداقل ریشه-میانگین- مربع خطا، که به عنوان مقدار درک می شود، ارائه می دهد.

    .

    تبدیل های شناخته شده (هادامارد، کارهونن-لوف، فوریه) "ضعیف" نشان دهنده سیگنال غیر ثابت در ضرایب انبساط است. بیایید این را در مثال زیر نشان دهیم. اجازه دهید یک تابع غیر ثابت داده شود

    و تبدیل فوریه آن (شکل 9).

    تجزیه و تحلیل انجیر شکل 9 نشان می دهد که غیر ایستایی سیگنال زمان با تعداد زیادی ضرایب فرکانس بالا غیر صفر نشان داده می شود. این باعث مشکلات زیر می شود:

    تجزیه و تحلیل یک سیگنال زمانی از تصویر فوریه آن دشوار است.

    با در نظر گرفتن تعداد زیادی از ضرایب فرکانس بالا، یک تقریب قابل قبول از سیگنال زمان ممکن است.

    کیفیت بصری ضعیف تصاویر واقعی بازسازی شده توسط ضرایب فرکانس پایین. و غیره

    مشکلات موجود توسعه را ایجاب می کرد دستگاه ریاضیتبدیل سیگنال های غیر ثابت یکی از راه های ممکنتجزیه و تحلیل چنین سیگنال هایی تبدیل به موجک (WT) شده است.

    برنج. 9. تبدیل فوریه یک سیگنال سینوسی با گام های کوچک در تقاطع صفر

    VP یک سیگنال یک بعدی نمایش آن در قالب یک سری فوریه تعمیم یافته یا انتگرال فوریه بر روی سیستمی از توابع پایه است که هم در حوزه فضایی و هم در حوزه فرکانس محلی شده اند. نمونه ای از این تابع پایه موجک هار است که با عبارت تعریف می شود

    (20)

    از نظر گرافیکی، موجک هار به صورت زیر نمایش داده می شود:

    برنج. 10. تابع پایه موجک هار

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

    اگر سنتز سیگنال را با ضریب با استفاده از تابع سنتز انجام دهیم، یک جزء ثابت مطابق با مقدار متوسط ​​سیگنال به دست خواهیم آورد. برای اینکه بتوانیم سیگنال را با جزئیات بیشتر توصیف کنیم، ضریب دوم را با استفاده از تابع پایه نشان داده شده توسط عبارت (20) محاسبه می کنیم:

    تجزیه و تحلیل این عبارت نشان می دهد که ضریب تفاوت در مقادیر متوسط ​​​​نیمه های سیگنال را مشخص می کند. اگر اکنون یک سنتز را روی دو ضریب با تابع پایه سنتز برای ضریب دوم انجام دهیم.

    تقریب زیر را بدست می آوریم:

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

    برنج. 11. تبدیل جفت متغیرهای تصادفی

    در نتیجه، سیگنال اصلی دقیقاً با ضرایب تبدیل موجک هار توصیف می شود. ضرایب موجک سیگنال (19) در شکل نشان داده شده است. 10.

    از شکل می توان دریافت که غیر ایستایی سیگنال (افتاده های تند) در تعداد کمی از ضرایب موجک محلی است. این منجر به امکان بازسازی بهتر سیگنال غیر ثابت از داده های ناقص می شود.

    برنج. 12. ضرایب موجک یک دوره از تابع (19)

    هنگام محاسبه ضرایب موجک، توابع پایه سیگنال تحلیل شده را به صورت زیر پوشش می دهند (شکل 12). از انجیر 12 نشان می دهد که سیستم توابع پایه هار در یک فضای گسسته باید با دو پارامتر مشخص شود: تغییر و فرکانس (مقیاس):

    ,

    مقیاس تابع پایه کجاست. - تغییر مکان. در حالت گسسته، پارامتر مقیاس، که در آن هر عدد صحیح مثبت، پارامتر شیفت است. بنابراین، کل مجموعه توابع پایه را می توان به صورت نوشتاری نوشت

    .

    VP گسسته رو به جلو و معکوس با فرمول محاسبه می شود

    ,

    .

    لازم به ذکر است که اگر تعداد نمونه ها باشد، حداکثر مقدار آن است. بزرگترین مقدار برای جریان است.

    برای سیگنال های پیوستهعبارات انتگرال زیر معتبر خواهند بود:

    ,

    .

    بدین ترتیب با تعیین توابع موجک می توان انبساط سیگنال را بر حسب مبنای موجک سیگنال های پیوسته یا گسسته انجام داد.

    برنج. 13. توزیع توابع پایه هار در تجزیه و تحلیل سیگنال

    یک تابع اگر شرایط زیر را برآورده کند می تواند یک مبنای موجک تشکیل دهد:

    1. محدودیت هنجار:

    .

    2. تابع موجک باید هم از نظر زمان و هم از نظر فرکانس محدود باشد:

    و ، در .

    مثال: تابع دلتا و تابع هارمونیکاین شرط را برآورده نمی کند.

    3. میانگین صفر:

    اگر این شرط را تعمیم دهیم می توانیم فرمول را بدست آوریم , که درجه صاف بودن تابع را مشخص می کند. اعتقاد بر این است که هر چه درجه صافی تابع پایه بیشتر باشد، خواص تقریبی آن بهتر است.

    به عنوان مثال، توابع موجک معروف زیر را ارائه می کنیم:

    , .

    برای VP، و همچنین برای DFT، یک الگوریتم وجود دارد تبدیل سریع. دوباره معاون هار را در نظر بگیرید. از انجیر شکل 13 نشان می دهد که توابع با ضریب مقیاس کوچک از نمونه سیگنال های مشابهی برای محاسبه ضرایب استفاده می کنند که توابع دارای ضریب مقیاس بزرگ هستند. در این حالت عملیات جمع کردن همان نمونه ها به طور مکرر تکرار می شود. بنابراین، برای کاهش حجم محاسبات، توصیه می شود IP را از کوچکترین ضریب مقیاس محاسبه کنید. در نتیجه، ضرایب موجک را به دست می آوریم که مقادیر میانگین هستند و تفاوت ها . برای ضرایب تکرار این رویه. در این مورد، میانگین گیری ضرایب با میانگین 4 نمونه سیگنال مطابقت دارد، اما یک عملیات ضرب و یک عملیات جمع صرف شده است. فرآیند تجزیه تا زمانی که تمام ضرایب طیف محاسبه شود تکرار می شود.

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

    تبدیل موجک یک تبدیل شبیه به تبدیل فوریه (یا خیلی بیشتر شبیه تبدیل فوریه پنجره‌دار) با یک تابع ارزیابی کاملا متفاوت است. تفاوت اصلی در موارد زیر است: تبدیل فوریه سیگنال را به اجزایی به شکل سینوس و کسینوس تجزیه می کند. توابع بومی سازی شده در فضای فوریه. برعکس، تبدیل موجک از توابع بومی سازی شده هم در فضای واقعی و هم در فضای فوریه استفاده می کند. به طور کلی تبدیل موجک را می توان با معادله زیر بیان کرد:

    که در آن * نماد ترکیب پیچیده و تابع است ψ - برخی از عملکردها تابع را می توان خودسرانه انتخاب کرد، اما باید قوانین خاصی را رعایت کند.

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

    1. تبدیل موجک گسسته یک بردار داده به همان طول ورودی را برمی گرداند. معمولاً حتی در این بردار، بسیاری از داده ها تقریباً صفر هستند. این مربوط به این واقعیت است که آن را به مجموعه ای از موجک (توابع) که متعامد به ترجمه موازی و مقیاس آنها تجزیه می شود. بنابراین، ما چنین سیگنالی را به ضرایب طیف موجک یکسان یا کمتر به عنوان تعداد نقاط داده سیگنال تجزیه می کنیم. به عنوان مثال، چنین طیف موجک برای پردازش سیگنال و فشرده سازی بسیار خوب است، زیرا ما در اینجا اطلاعات اضافی دریافت نمی کنیم.
    2. در مقابل، تبدیل موجک پیوسته، آرایه ای را یک بعد بزرگتر از ورودی برمی گرداند. برای داده های یک بعدی، تصویری از صفحه زمان-فرکانس به دست می آوریم. شما به راحتی می توانید تغییر فرکانس سیگنال را در طول مدت آن ردیابی کنید و این طیف را با طیف سیگنال های دیگر مقایسه کنید. از آنجایی که یک مجموعه غیر متعامد از موجک ها در اینجا استفاده می شود، داده ها همبستگی بالایی دارند و دارای افزونگی زیادی هستند. این کمک می کند تا نتیجه را به شکلی نزدیک تر به درک انسان ببینید.

    جزئیات بیشتر در مورد تبدیل موجک در هزاران منبع اینترنتی در مورد موجک ها در وب یا به عنوان مثال در اینجا موجود است.

    کتابخانه پردازش داده Gwyddion هر دوی این تبدیل ها را پیاده سازی می کند و ماژول ها با استفاده از تبدیل موجک در منو موجود هستند. پردازش داده هاتحولات یکپارچه.

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

    تبدیل موجک گسسته (DWT) اجرای تبدیل موجک با استفاده از مجموعه ای مجزا از مقیاس ها و ترجمه های موجک است که از برخی قوانین خاص پیروی می کنند. به عبارت دیگر، این تبدیل سیگنال را به مجموعه ای متعامد از موجک ها تجزیه می کند، که تفاوت اصلی با تبدیل موجک پیوسته (CWT) یا اجرای آن برای سری های زمانی گسسته است، که گاهی اوقات تبدیل موجک گسسته پیوسته (DT) نامیده می شود. -CWT).

    یک موجک را می توان از یک تابع مقیاس ساخت که ویژگی های مقیاس پذیری آن را توصیف می کند. محدودیت این است که تابع مقیاس باید متعامد به تبدیل‌های گسسته‌اش باشد، که دلالت بر برخی محدودیت‌های ریاضی بر روی آنها دارد، که در همه جا ذکر شده است. معادله همسانی

    جایی که اس- ضریب مقیاس (معمولاً 2 انتخاب می شود). علاوه بر این، ناحیه زیر تابع باید نرمال شود و تابع مقیاس بندی باید متعامد به ترجمه های عددی آن باشد، یعنی.

    پس از معرفی چند شرط اضافی (از آنجایی که محدودیت های فوق منجر به یک راه حل منحصر به فرد نمی شود)، می توانیم نتیجه همه این معادلات را بدست آوریم. مجموعه محدودی از ضرایب یک ککه تابع مقیاس بندی و همچنین موجک را تعریف می کنند. موجک از تابع مقیاس به عنوان به دست می آید نجایی که ن- یک عدد صحیح زوج سپس مجموعه موجک یک مبنای متعارف را تشکیل می دهد که ما از آن برای تجزیه سیگنال استفاده می کنیم. لازم به ذکر است که معمولاً فقط چند ضریب یک کغیر صفر خواهد بود که محاسبات را ساده می کند.

    شکل زیر برخی از توابع و موجک های مقیاس بندی را نشان می دهد. معروف ترین خانواده موجک های متعارف خانواده Daubechies است. موجک های آن معمولاً با تعداد ضرایب غیر صفر نشان داده می شوند یک ک، بنابراین ما معمولا در مورد موجک های Daubechies 4، Daubechies 6 و غیره صحبت می کنیم. به طور کلی، با افزایش تعداد ضرایب موجک، توابع صاف تر می شوند. این به وضوح هنگام مقایسه موجک های Daubechies 4 و 20 که در زیر ارائه شده است، دیده می شود. موجک دیگری که ذکر شد ساده ترین موجک هار است که از یک پالس مستطیلی به عنوان تابع مقیاس بندی استفاده می کند.

    تابع مقیاس بندی هار و موجک (چپ) و اجزای فرکانس آنها (راست).

    تابع مقیاس‌بندی Daubechies 4 و موجک (چپ) و اجزای فرکانس آنها (راست).

    تابع مقیاس‌بندی Daubechies 20 و موجک (چپ) و اجزای فرکانس آنها (راست).

    انواع مختلفی از پیاده سازی الگوریتم تبدیل موجک گسسته وجود دارد. قدیمی ترین و معروف ترین الگوریتم مول (همی) است. در این الگوریتم دو فیلتر صاف کننده و غیر هموار کننده از ضرایب موجک تشکیل شده اند و این فیلترها به صورت مکرر برای به دست آوردن داده ها برای تمام مقیاس های موجود اعمال می شوند. اگر از مجموعه داده کامل استفاده شود D = 2 Nو طول سیگنال است Lابتدا داده ها محاسبه می شوند D/2برای مقیاس L / 2 N - 1، سپس داده ها ( D /2)/2برای مقیاس L /2 N - 2، … تا زمانی که در نهایت به 2 مورد داده برای مقیاس برسید L/2. نتیجه این الگوریتم آرایه‌ای با طول ورودی خواهد بود که معمولاً داده‌ها از بیشترین مقدار مرتب‌سازی می‌شوند. در مقیاس بزرگبه کوچکترین

    Gwyddion از یک الگوریتم هرمی برای محاسبه تبدیل موجک گسسته استفاده می کند. تبدیل موجک گسسته در فضای دو بعدی در ماژول DWT موجود است.

    تبدیل موجک گسسته می تواند برای ساده و حذف سریعنویز ناشی از یک سیگنال پر سر و صدا اگر فقط تعداد محدودی از بالاترین ضرایب طیفی تبدیل موجک گسسته را در نظر بگیریم و تبدیل موجک معکوس را انجام دهیم (با همان مبنا)، می‌توانیم سیگنالی کم و بیش از نویز دریافت کنیم. راه های مختلفی برای انتخاب شانس ذخیره شدن وجود دارد. Gwyddion آستانه جهانی، آستانه تطبیقی ​​مقیاس، و آستانه تطبیقی ​​مقیاس فضایی را پیاده سازی می کند. برای تعیین آستانه در این روش ها، ابتدا تخمین واریانس نویز ارائه شده توسط را تعیین می کنیم

    جایی که Y ijمربوط به تمام ضرایب بالاترین مقیاس فرعی تجزیه است (جایی که انتظار می رود بیشتر نویز وجود داشته باشد). به طور متناوب، واریانس نویز را می توان به طور مستقل به دست آورد، به عنوان مثال، به عنوان واریانس سیگنال AFM زمانی که هیچ اسکنی در حال انجام نیست. برای زیر باند فرکانس بالاتر (آستانه جهانی) یا برای هر زیر باند (برای آستانه تطبیقی ​​مقیاس) یا برای محیط اطراف هر پیکسل در زیر باند (برای مقیاس و آستانه تطبیقی ​​فضا)، واریانس به صورت محاسبه می شود.

    مقدار آستانه در شکل نهایی به صورت محاسبه می شود

    وقتی آستانه یک مقیاس مشخص مشخص شد، می‌توانیم تمام ضرایب کمتر از مقدار آستانه (آستانه سخت) را حذف کنیم یا می‌توانیم مقدار مطلق این ضرایب را با مقدار آستانه (آستانه نرم) کاهش دهیم.

    حذف نویز DWT در منو موجود است پردازش داده هاتحولات یکپارچه→ حذف نویز DWT.

    تبدیل موجک پیوسته

    تبدیل موجک پیوسته (CWT) پیاده سازی تبدیل موجک با استفاده از مقیاس های دلخواه و موجک های عملا دلخواه است. موجک های مورد استفاده متعامد نیستند و داده های به دست آمده از این تبدیل همبستگی بالایی دارند. برای توالی های زمانی گسسته، این تبدیل نیز می تواند مورد استفاده قرار گیرد، با این محدودیت که حداقل موجک حامل باید برابر با نمونه گیری داده باشد. گاهی اوقات به این تبدیل موجک پیوسته در زمان گسسته (DT-CWT) گفته می شود و متداول ترین روش مورد استفاده برای محاسبه CWT در کاربردهای دنیای واقعی است.

    در اصل، تبدیل موجک پیوسته با استفاده از تعریف تبدیل موجک به طور مستقیم کار می کند، یعنی. ما پیچیدگی سیگنال را با موجک مقیاس شده محاسبه می کنیم. برای هر مقیاس، به این ترتیب مجموعه ای با طول یکسان به دست می آوریم ن، که است سیگنال ورودی. استفاده كردن ممقیاس های خودسرانه انتخاب شده، یک میدان دریافت می کنیم N×M، که مستقیماً صفحه زمان-فرکانس را نشان می دهد. الگوریتم مورد استفاده برای این محاسبه می تواند بر اساس کانولوشن مستقیم یا بر اساس کانولوشن با استفاده از ضرب فضای فوریه باشد (به این حالت تبدیل موجک سریع نیز گفته می شود).

    انتخاب موجک برای استفاده در تجزیه زمان-فرکانس مهمترین چیز است. با این انتخاب می‌توانیم بر وضوح نتیجه در زمان و فرکانس تأثیر بگذاریم، نمی‌توانیم ویژگی‌های اصلی تبدیل موجک را به این شکل تغییر دهیم (فرکانس‌های پایین دارای وضوح خوبدر فرکانس و بد در زمان; فرکانس‌های بالا وضوح فرکانس ضعیف و وضوح زمانی خوبی دارند)، اما می‌توانید فرکانس کلی یا وضوح زمانی را کمی افزایش دهید. این به طور مستقیم با عرض موجک مورد استفاده در فضای واقعی و فوریه متناسب است. برای مثال، اگر از موجک مورلت استفاده کنیم (قسمت واقعی تابع کسینوس میرایی است)، می‌توان انتظار داشت کیفیت بالادر فرکانس‌ها، زیرا چنین موجکی از نظر فرکانس به خوبی محلی است. در مقابل، با استفاده از موجک گاوسی مشتق (DOG)، محلی سازی خوبی در زمان دریافت می کنیم، اما از نظر فرکانس ضعیف.

    تبدیل موجک پیوسته در ماژول CWT که در منو موجود است پیاده سازی شده است پردازش داده هاتحولات یکپارچه→ C.W.T.

    منابع

    الف Bultheel: گاو نر. بلژیک ریاضی. Soc.: (1995) 2

    S. G. Chang، B. Yu، M. Vetterli: IEEE Trans. پردازش تصویر، (2000) 9 ص. 1532

    S. G. Chang، B. Yu، M. Vetterli: IEEE Trans. پردازش تصویر، (2000) 9 ص. 1522

    در عمل، DTWS باید برای سیگنال های با طول محدود اعمال شود. بنابراین، برای به دست آوردن دنباله ای از ضرایب با طول یکسان از یک سیگنال با طول، باید اصلاح شود. تبدیل حاصل، تبدیل موجک گسسته (DWT) نامیده می شود.

    ابتدا DWT را به صورت ماتریسی توصیف می کنیم و سپس بر اساس بانک های فیلتر که بیشتر در پردازش سیگنال استفاده می شود.

    در هر دو مورد، ما فرض می کنیم که اساس توابع و
    به طور فشرده تعریف شده است. این به طور خودکار تضمین می کند که دنباله ها محدود هستند. و . علاوه بر این، فرض کنید سیگنالی که باید تبدیل شود دارای طول باشد
    .

        1. توضیحات ماتریس dwt

    با بردار مشخص کنید دنباله طول محدود برای برخی . این بردار به بردار تبدیل می شود
    ، حاوی دنباله ها است
    و
    هر نیم طول. تبدیل را می توان به صورت ضرب ماتریس نوشت
    ، جایی که ماتریس
    - مربع و از صفر و عناصر تشکیل شده است ضربدر
    . به دلیل خواص به دست آمده در بخش 2.3، ماتریس
    متعامد است و ماتریس معکوس آن برابر با جابجایی است. به عنوان مثال، مثال زیر را در نظر بگیرید. بیایید یک فیلتر از طول را در نظر بگیریم
    ، دنباله ای از طول
    و به عنوان مقدار اولیه -
    . دنباله دریافت از با فرمول (2.35)، که در آن
    . سپس عملیات ضرب ماتریس-بردار به صورت نمایش داده می شود

    . (2.52)

    تبدیل معکوس ضرب است
    به ماتریس معکوس
    :

    . (2.53)

    بنابراین، بیان (2.51) یک مرحله DWT است. DWT کامل برای ضرب مکرر نیمه بالایی بردار است
    به یک ماتریس مربع
    ، اندازه آن
    . این روش قابل تکرار است دبار تا زمانی که طول بردار 1 شود.

    در ردیف های چهارم و هشتم ماتریس (2.51) دنباله به صورت دایره ای جابجا شده: ضرایبی که خارج از ماتریس سمت راست هستند در همان ردیف سمت چپ قرار می گیرند. این بدان معنی است که DWT دقیقاً یک دوره طول دارد نسیگنال DTWS با تداوم دوره ای بی نهایت به دست می آید . بنابراین DWT، زمانی که به این شکل تعریف شود، از تناوب سیگنال استفاده می کند، مانند مورد DFT.

    شرح ماتریس DWT کوتاه و واضح است. با این حال، در پردازش سیگنال، DWT اغلب با استفاده از یک بلوک دیاگرام شبیه به سیستم تجزیه و تحلیل سنتز توصیف می شود (شکل 1.1 را ببینید).

        1. شرح dwt با استفاده از بلوک های فیلتر

    با در نظر گرفتن تبدیل‌های زیر باند در فصل 1، ما برابری‌های مشابه (2.45) و (2.46) را به‌عنوان فیلتر و به دنبال آن کاهش با ضریب دو تفسیر کردیم. از آنجایی که در این مورد دو فیلتر وجود دارد و ، سپس بانک فیلتر دو بانده است و می توان آن را همانطور که در شکل 2.5 نشان داده شده است نشان داد.

    فیلترها افو Eبه معنای فیلتر کردن توسط فیلتر است و
    ، به ترتیب. در شاخه پایین مدار فیلترینگ پایین گذر انجام می شود. نتیجه مقداری تقریب سیگنال است، یک زیر باند فرکانس پایین (LF) فاقد جزئیات است. یک زیر باند فرکانس بالا (HF) در بالای مدار اختصاص داده شده است. توجه داشته باشید که هنگام پردازش سیگنال ها، ثابت است
    همیشه از بانک فیلتر خارج می شود و سیگنال در 2 ضرب می شود (شکل 3.2، فصل 3 را ببینید).

    بنابراین، مدار در شکل 2.5 سیگنال سطح را تقسیم می کند
    برای سیگنال های دو سطح
    . علاوه بر این، تبدیل موجک با اعمال بازگشتی این طرح به قسمت LF به دست می‌آید. هنگام انجام تبدیل موجک یک تصویر، هر تکرار الگوریتم ابتدا به ردیف ها و سپس به ستون های تصویر انجام می شود (به اصطلاح هرم مالات ساخته می شود). در کدک‌های ویدیویی ADV6xx، از هرم Mallat اصلاح‌شده استفاده می‌شود، زمانی که در هر تکرار لزوماً تغییر در ردیف‌ها و ستون‌ها انجام نمی‌شود. این کار برای در نظر گرفتن بهتر ادراک بصری یک فرد انجام می شود.

    تبدیل حاصل مشابه (2.51) است. با این حال، چند تفاوت وجود دارد. هنگام فیلتر کردن سیگنالی با طول محدود، با مشکل ادامه آن در مرز مواجه می شویم. اجرای ماتریس DWT معادل ادامه دوره ای سیگنال در مرز است. این نوع ادامه برای فیلترهای متعامد اجباری است. در مورد فیلترهای دو طرفه، برخی احتمالات دیگر به دلیل تقارن ویژگی های آنها ظاهر می شود. این موضوع در فصل 3 با جزئیات بیشتر مورد بحث قرار خواهد گرفت.

    مداری که DWT را انجام می دهد نیز می تواند همانطور که در شکل 2.6 نشان داده شده است نشان داده شود. در اینجا، فیلتر بازگشتی و حذف با یک عملیات فیلتر کردن و یک عملیات حذف در هر زیر باند جایگزین می‌شوند. تعریف فیلترهای تکرار شونده و در حوزه فرکانس ساده ترین است.