بازگشت
جستجو
بازگشت به لیست مقالات

کوانتیزاسیون

کوانتیزاسیون

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

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

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

 

کوانتیزاسیون در پردازش سیگنال

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

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

خطای کوانتیزاسیون

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

 

کوانتیزاسیون در پردازش تصویر

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

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

 

کوانتیزاسیون رنگ

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

در اکثر ویرایشگرهای تصویربرداری و خیلی از سیستم عامل ها، پشتیبانی از کوانتیزاسیون رنگ تعبیه شده است. از پرکاربردترین الگوریتم های کوانتیزاسیون رنگ، می توان به الگوریتم نزدیکترین رنگ (Nearest Color Algorithm )، الگوریتم برش میانی ( Median Cut Algorithm ) و الگوریتمی که بر اساس ساختار داده درختی ( Octree ) است، اشاره کرد.

کوانتیزاسیون رنگ

 

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

 

کوانتیزاسیون فرکانس

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

برای بازگویی روش انجام این فرایند، ملزم به ورود مباحث تخصصی ریاضیات می باشیم، اما به عنوان خلاصه ای از مراحل انجام این فرایند می توان بدین گونه بیان کرد که روش معمول کارکرد Codec های ویدئویی ، بر اساس تقسیم تصویر ، به بلوک های مجزا است ( برای مثال در MPEG، به پیکسل های 8*8 تقسیم بندی می شوند). سپس این ماتریس تشکیل شده، تحت تبدیل فوریه قرار می گیرد تا فرکانس اجزا، هم به صورت افقی و هم بصورت عمودی ، محاسبه شود. در مرحله بعدی، ماتریس جدید ( که هم اندازه ی ماتریس قبلی است )، در کد مقیاس کوانتیزاسیون ضرب شده، و هر عنصر از آن ، به عنصر هم ردیف خود در ماتریس کوانتیزاسیون تقسیم می شود. سپس اعداد بدست آمده، به نزدیکترین عدد صحیح به خود ، گرد می شوند. ماتریس کوانتیزاسیون طوری طراحی شده است که تا به فرکانس های قابل شناسایی بیشتر ( برای چشم انسان )، نسبت به فرکانس های دیگر، وضوح بیشتری ببخشد. ( معمولا فرکانس های پایین، نسبت به فرکانس های بالا، بیشتر قابل تشخیص هستند ). این عمل " وضوح بیشتر بخشیدن "، در ماتریس اینگونه نمایان می شود که عناصر فرکانس بالا اکثرا به عدد 0 تبدیل می شوند.

برای تفهیم بیشتر موضوع، یک مثال در ادامه بررسی خواهد شد:

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

ماتریس 1

خیلی از کدگذار ها ( مانند DivX، Xvid و 3ivx) و استانداردهای فشرده سازی ( مانند MPEG-2 و H.264/AVC) این امکان را می دهند که از ماتریس کوانتیزاسیون دلخواه برای کوانتیزاسیون استفاده شود. با تغییر کد مقیاس کوانتیزه کننده، می توان مقدار کاهش و فشرده سازی را تغییر داد.

ماتریس زیر یک ماتریس پرکاربرد برای کوانتیزاسیون است:

ماتریس 2

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

ماتریس3

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

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

نظرات
نظر بدهید بستن فرم ثبت نظر
banner
banner
banner
banner
banner
banner
banner
banner
banner
banner
banner
banner
banner
banner
banner
banner
banner
banner
banner
banner