فایل های قبل از چاپ اغلب بزرگ هستند .بنابر این ، این یک امر منطقی است که داده اغلب فشرده شده است . تعداد کاملاً کمی الگوریتم وجود دارد که بتواند هم برای نوشتار و هم برای تصاویر استفاده کرد . یک دانش ابتدایی درباره اینکه چگونه الگوریتم های متفاوت کار می کنند می تواند ارزنده باشد . این اوراق یک دید کلی از الگوریتم های تراکم سازی گوناگون که در صنعت پیش چاپ استفاده می شود ارائه خواهد کرد . آن به هیچ وجه یک دید کلی کامل از همه الگوریتم های موجود نیست .
انواع تراکم سازی ملاک عبارتند از :
متراکم سازی CCITT گروه 3 و 4 ( هم اکنون در حال ساخت )
متراکم سازی Flate / deflate
متراکم سازی JPEG
متراکم سازی LZW
متراکم RLE
انواع الگوریتم های متراکم سازی
الگوریتم های بالا می توانند به 2 بخش جداگانه تقسیم شوند آنها یا بی فایده هستند و یا بافایده .
الگوریتم های بی ضرر محتوای یک فایل را تغییر نمی دهند . اگر شما یک فایل را متراکم سازید و آنگاه آن را گسترده کنید ، آن تغییر نکرده است . الگوریتم های زیر بی ضرر هستند :
متراکم سازی CCITT گروه 3 و 4 ( هم اکنون در حال ساخت )
متراکم سازی Flate / deflate
متراکم سازی Huffman
متراکم سازی LZW
متراکم RLE
الگوریتم های مضر نرخ تراکم بهتری را به وسیله خلاص شدن از برخی اطلاعات گزیده در فایل حاصل می آیند . چنین الگوریتم هایی می توانند برای تصاویر یا فایل های صدا و نه برای داده های برنامه یا نوشتاری استفاده بشوند. الگوریتم های زیر مضر هستند :
متراکم سازی JPEG
کدام الگوریتم بهترین است ؟
متاسفانه پاسخ قاطعی برای آن سوال وجود ندارد . آن همه اش بستگی به نوع فایلی که باید فشرده بشود ، همچنین مفهوم واقعی فایل و این سوال که آیا شما مایل به پذیرش یک الگوریتم مضر برای آن فایل ویژه هستید یا نه ، دارد .
به عنوان یک قانون عمومی قبل از فشرده سازی افراد موارد زیر را در نظر
می گیرند :
نوشتار
ارزش فشرده سازی ندارد برخی اوقات RLE به کار رفته است .
تصاویر تک رنگ LZW
داده های سینمایی و هنری تک رنگ CCITT گروه 4
تصاویر فانتری LZW برای فایل هایی که جزئیات خیلی زیادی را دربرنمیگیرند. تصاویر رنگی JPEG اگر متراکم سازی با ضرر مطلوب باشد .
کشیدن خط به وسیله برنامه های کاربردی حمایت نشده است .
پایان شماره 1
متراکم سازی Flate / deflate
الگوریتم متراکم سازی بدون اتلاف deflate بر مبنای 2 الگوریتم متراکم سازی دیگر است :
رمز کردن هاف من و متراکم سازی LZVV . شما باید بدانید که این دو الگوریتم چگونه کار می کنند به منظور درک فشرده سازی Flate / deflate چگونه کار می کند . deflate یک الگوریتم باهوش است که مبتنی با روشی که داده را به داده اصلی خودشان فشرده می کند . 3 روش فشرده سازی که موجود هستند :
هیچ گاه فشرده نشده باشد . این یک انتخاب هوشمند است برای داده ای که قبلاً فشرده بوده است می باشد . داده ذخیره شده در این وضعیت به مقدار کمی گسترش خواهد یافت ، اما نه آنقدر که اگر قبلاً فشرده باشد و یکی از روشهای دیگر فشرده سازی بر روی آن انجام شده باشد توسعه نمی یابد .
فشرده سازی می کند ابتدا با lzvv و سپس با یک نسخه کمی اصلاح شده کد کردن هاف من .
شاخه هایی که برای فشرده سازی این وضعیت به وسیله مشخصه deflate خودش تعریف شده است ، بنابر این هیچ فضای اضافی برای ذخیره کردن این شاخه ها نیاز نداریم .
متراکم سازی می کند ابتدا با LZVV و سپس با نسخه کمی تغییر یافته از کد گذاری هاف من با شاخه هایی که فشرده ساز ایجاد می کند و در طول داده ذخیره می شود .
داده ها به بلوک ها شکسته می شود و هر بلوک یک روش واحد از متراکم فشرده سازی را به کار می برد . اگر فشرده ساز بخواهد از ذخیره غیر فشرده به فشرده سازی با شاخه هایی ویژه تغییر وضعیت دهد یا به متراکم سازی با شاخه های هاف من مشخص کند یا به متراکم سازی با یک جفت متفاوت از شاخه های هاف من تغییر وضعیت دهد بلوک جاری باید پایان یابد و یک بلوک جدید شروع شده باشد .
من نظری ندارم . برای من بفرستید اگر شما چیزی درباره نفع و ضررها می دانید متراکم سازی Flate / deflate در کجا به کار رفته اند . من فقط از یک کاربرد قبل از فشرده سازی عمومی که مبتنی بر متراکم سازی Flate که Adobe Acrobat هست مطلع هستم . متراکم سازی Flate یک خاصیت استاندارد از قالب فایل PDF که Acrobat می تواند به کار برد ، است .
فشرده سازی JPEG
JPEG گرفته شده از گروه ماهر عکاسی است ، که یک کمیته استاندارد است . همچنین الگوریتم متراکم سازی به وسیله این کمیته ایجاد شده است .
دو الگوریتم فشرده سازی JPEG وجود دارند : قدیمی ترین آن به عنوان JPEG درون این صفحه به سادگی به کار می رود . الگوریتم جدید تر 2000 JPEG در پایین این صفحه مطرح شده است . لطفاً توجه کنید که شما باید بین الگوریتم فشرده سازی JPEG – که درون این صفحه مطرح شده – و متناظر با آن قالب بندی فایل JFIF ( که خیلی از مردم آن را با نام فایل های JPEG می شناسند ) .
JPEG یک الگوریتم فشرده سازی پر اتلاف است که ایجاد شده است تا اندازه طبیعی فایل تصاویر رنگی شبیه عکاسی به اندازه ممکن بدون تاثیر بر کیفیت تصاویر همانگونه که به وسیله موتور درک انسانی تجربه شده کاهش دهد . ما تغییرات کوچک در روشنایی را آسانتر از تغییرات کوچک در رنگ درک می کنیم . آن ، این جنبه از آگاهی ماست که فشرده JPEG از آن بهره برده و تلاش می کنند تا اندازه فایل را کاهش دهد .
JPEG چگونه کار می کند .
JPEG :
یک الگوریتم فشرده سازی مضر یا پر اتلاف است که برای کاهش سایز فایل از یک عکس طبیعی مانند رنگ های حقیقی و یا بیشتر از آن چیزی که امکان دارد ایجاد خواهد شد . محتویات فایل تصویر بر اساس تشابه رنگ به پیکسل های کنار هم ذخیره می شود . در این روش اطلاعات یک تصویر را بر اساس اهمیت آنها مرتب می کند و اطلاعاتی را که از اهمیت کمتری برخوردارند حذف می کنند .
در یک تصویر آن چه که از همه مهمتر است عبارتند از :
شدت رنگ – شفافیت – خود رنگ – از آنجا که تنوع رنگ ها 16 میلیون رنگ است ، در نتیجه کار مشکل می شود . شدت رنگ و شفافیت رنگ از 0 تا 225 است .
الگوریتم های JPEG در 4 مرحله عمل فشرده سازی را انجام می دهند :
Initialication
DCT
Quan tization
4 Compresion
الگوریتم JPEG ابتدا یک تصویر را به بلوک های جداگانه به اندازه 8*8 تقسیم می کند.
داده های تصویر به فضای رنگی نور و رنگ تبدیل می شود . از آنجایی که روشنایی مهمتر از ترکیب رنگ در سیستم بصری ما می باشد . الگوریتم بیشتر روشنایی را در فایل فشرده ، حفظ می کند .
قدم بعدی به کار بردن جدول DCT برای تامی بلاک ها است . DCT یک مرحله پیچیده است که رنگ های واقعی داده را برای هر پیکسل به ازاء مقادیری که وابسته به میانگین کل ماتریس است را جایگزین می کند.
این عمل فایل را فشرده نمی کند بلکه به سادگی مقادیر پیکسل های 8*8 را با یک ماتریس 8*8 ضریب DCT عوض می کند .
cr = رنگ cb= روشنایی y = شدت رنگ
DCT = 1 (N); IF i=
For ci = I<8; I++ )
For ( j= ; j<8; j++ )
Q [ I ] [j ] = 1+ ( (1+I+j) * q )
13
11
q
7
5
3
15
15
11
q
7
5
14
15
13
11
q
7
نتیجه محاسبه فرمول های ضرایب DCT این است که ضرایب کوچک تر کم اهمیت تر با صفر جایگزین می شوند و ضرایب بزرگتر از بین می روند . این گرد کردن تصاویر است که باعث کاستی در کیفیت تصاویر می شود .
فشرده سازی Jpcg می تواند در انواع قالبهای زیر به کار رود .
فایل های EPS ، فایل های PDF – YFIF - EPS-DCS
آخرین قدم این است که ضرایب را با به کاربردن روش Hu FFman یا رمزگذاری ریاضی فشرده کند . که اغلب روش Hu Ffman به کار می رود .
الگوریتم های JPEG در 4 مرحله عمل متراکم سازی را انجام می دهد :
اول ، الگوریتم های JPEG ابتدا یک تصویر را به بلوک های جداگانه 8*8 پیکسل تقسیم می کند . از آنجایی که این قالب بر مبتنی بر درک نور و رنگ است ، آن مقادیر رنگی RGB یا CMYK را تحلیل نمی کند . اما در عوض داده رنگی را به یک فضای رنگی نور و رنگ همانند YUV تبدیل می کند . این کار به ما اجازه می دهد برای فشرده سازی جداگانه از این دو عامل از آنجایی که روشنایی مهمتر از ترکیب رنگ در سیستم بصری ما می باشد الگوریتم بیشتر روشنایی را درفایل فشرده شده می کند .
قدم بعدی در مرحله پردازه فشرده سازی به کار بردن یک کسینوس معکوس گسسته ( DCT ) برای تمام بلاک ها می باشد . DCT یک مرحله پیچیده است که اجازه آزادی به هر یک از پیکسل های منحصر به فرد را می دهد . رنگ های واقعی داده را برای هر پیکسل به ازاء مقادیری که وابسته به میانگین کل ماتریس که آنالیز تجزیه شده است جایگزین می کند . این عمل فایل را فشرده نمی کند آن به سادگی مقادیر پیکسل های 8*8 را با یک ماتریس 8*8 از کسینوس معکوس گسسته ضرایب عوض می کند .
یک بار که این کار انجام شد ، متراکم سازی واقعی می تواند شروع شود . ابتدا نرم افزار متراکم سازی نگاه می کند به کیفیت تصویر JPEG که کاربر در خواست کرده است ( کیفیت متوسط و … ) و 2 جدول دائمی یکی برای روشنایی و یکی برای ترکیب رنگ ایجاد می کند .
کی مرتبه که این جدول ها ساخته شدند ، ثابتها از آن برای ساختن کسینوس معکوس گسسته ضرایب استفاده کنند . هر ضریب DCT به وسیله ثابت مربوط به آن در جدول کمی تقسیم می شود و به نزدیک ترین عدد صحیح به آن گرد می شود . نتیجه محاسبه فرمولهای ضرایب DCT این است که ضرایب کوچک تر کم اهمیت تر با صفر جایگزین خواهند شد و ضرایب بزرگ تر دقت خود را از دست خواهند داد . این گرد کردن ضرائب است که باعث کاستی در کیفیت تصاویر می شود .
داده نتیجه شده یک لیست از ضرایب DCT ساده شده است . آخرین قدم در این مرحله این است که ضرایب را با به کاربردن یکی از دو روش هاف من یا طرح رمز کردن حسابی فشرده کند . معمولاً رمز کردن هاف من به کار می رود . این دومین متراکم سازی بی ضرر است که به کار برده می شود .