فرایند فشرده سازی فایل چگونه است؟
با توجه به افزایش کیفیت فیلم ها و تصاویر و رشد روز افزون استفاده از اینترنت و شبکه های اجتماعی ممکن است هر کدام از ما با مشکل کمبود فضا برای ذخیره سازی اطلاعات مان مواجه شویم. برای مدیریت این معضل راه حل های گوناگونی وجود دارد. مانند اضافه کردن درایو های ذخیره سازی اینترنال، استفاده از فضاهای ذخیره سازی ابری (cloud storage)، استفاده از درایوهای ذخیره سازی اکسترنال و یا فشرده سازی فایل های موجود. در مقالات قبلی به راه حل های دیگر پرداخته ایم در این مقاله به بررسی فرآیند فشرده سازی می پردازیم و به این سوال پاسخ می دهیم که: آیا فشرده کردن فایل به آن صدمه می زند ؟
بیشتر بخوانید : رمزگذاری بر روی هارداکسترنال
«فشرده سازی فایل » بخش اصلی در کار با کامپیوتر و وب محسوب میشود. این امر امکان انتقال فایل با سرعت بالاتر را فراهم میسازد؛ در غیر این صورت انتقال فایل پهنای باند و زمان بیشتری را طلب میکرد. هر وقت که از فایل های ZIP یا عکس هایی با فرمت JPEG استفاده می کنید در واقع از مزایای فشرده سازی بهره مند شده اید. اما ممکن است این سوال برایتان پیش آمده باشد که فرایند فشرده سازی فایل چگونه انجام میپذیرد. در این مقاله نگاه کوتاهی به این موضوع میاندازیم.
به بیان ساده، فشرده سازی فایل (یا فشرده سازی داده) فرایند کاهش اندازه فایل بدون آسیب به فایلهای اصلی است. این کار باعث میشود که فایل، فضای کمتری بر روی دیسک ذخیرهساز اشغال کند. علاوه بر این انتقال فایل از طریق اینترنت و یا در سایر فعالیتها سادهتر میشود. توجه به این نکته ضروری است که فشرده سازی فایل محدودیتهایی نیز دارد. در عین اینکه فشرده سازی فایل به حالت ZIP اندازه آنرا کاهش میدهد، شما نمیتوانید فشرده سازی را تا مقادیر بسیار پایین انجام دهید.
به طور کلی دو نوع فشرده سازی فایل وجود دارد: فشرده سازی فایل با اتلاف داده (Lossy)، فشرده سازی فایل بدون اتلاف داده (Lossless)
فشرده سازی فایل از نوع Lossy
در این حالت اندازه فایل از طریق حذف اطلاعات غیر ضروری کاهش مییابد. روشی که در مورد تصاویر، ویدئوها و فرمتهای صوتی رایجتر است؛ زیرا در این موارد نمایش کامل فایل اصلی ضروری نیست. بسیاری از فرمتهای متداول مدیا نظیر MP3 و JPEG از این نوع فشردهسازی استفاده میکنند. فرمت MP3 تمامی اطلاعات منبع اصلی صوتی را شامل نمیشود و اصواتی که انسان قادر به شنیدن آن نیست را حذف میکند. در این حالت شما به هیچ وجه متوجه حذف این اصوات نمیشوید و بدین ترتیب یک فایل فشرده بدن اثرات منفی جانبی را در اختیار خواهید داشت. به همین ترتیب فرمت JPEG نیز بخشهای غیر ضروری تصویر را حذف میکند. به عنوان مثال در حالتی که تصویر شامل آسمان آبی است، فشرده سازی JPEG ممکن است بجای استفاده از چندین سایه رنگی مختلف، کل پیکسلهای آسمان را به یک یا دو سایه آبی تغییر دهد.
البته هر اندازه که فایل بیشتر فشرده شود، کیفیت نیز بیشتر افت میکند. ممکن است این حالت را در فایلهای Muddy MP3 بارگذاری شده در یوتیوب تجربه کرده باشید.
فشرده سازی Lossy زمانی مناسب است که فایل شامل دادههایی بیش از آنچه شما نیاز دارید باشد. به عنوان مثال شما یک فایل تصویر حجیم با فرمت RAW دارید. این کیفیت زمانی مفید است که شما بخواهید تصویر را بر روی یک بنر بزرگ چاپ کنید، بنابراین حفظ کیفیت در این میزان برای بارگذاری در شبکههای اجتماعی بی فایده است.
در حقیقت در این حالت تصویر جهت نمایش بر روی شبکههای اجتماعی شامل دادههایی بیش از نیاز شماست. فشرده سازی فایل به فرمت JPEG با کیفیت بالا این اطلاعات اضافی را حذف میکند، در عین اینکه تصویر از لحاظ ظاهری برای یک چشم غیر مسلح کاملا مناسب است.
کاربرد فشرده سازی Lossy
همانطور که گفته شد، فشرده سازی Lossy برای اغلب فایلهای مدیا گزینه بسیار مناسبی است. به همین دلیل این نوع فشردهسازی برای شرکتهایی مانند Spotify و Netflix که بصورت مداوم حجم بالایی از اطلاعات را جابجا میکنند، بسیار حیاتی است. فشرده سازی فایل تا بالاترین حد ممکن، در عین حفظ کیفیت عملکرد فایل را بسیار مطلوبتر میسازد. تصور کنید اگر هر ویدئویی در اندازه و فرمت غیر فشرده و اصلی خود در یوتیوب بارگذاری میشد، چه اتفاقی میافتاد؟
اما فشردهسازی با اتلاف داده برای فایلهایی که حاوی اطلاعات بسیار مهم هستند، مناسب نیست. به عنوان مثال در مورد یک فایل متنی یا وب (صفحه گسترده) موجب آسیب به آن میشود. در این حالت حذف اطلاعات میتواند در عملکرد نهایی این فایلها تاثیرگذار باشد.
ذخیرهسازی در فرمت Lossy در سطوح کیفیتی متفاوت قابل انجام است. بسیاری از ویرایشگران تصاویر فرمت JPEG را در اندازههایی از صفر تا 100 درصد اندازه اصلی تنظیم کنند.
ذخیرهسازی در مقادیر 80 یا 90 درصد فایل اصلی، اندازه فایل را به میزان اندکی تغییر میدهد، بدون آنکه از لحاظ ظاهری تفاوتی حاصل شود. اما ذخیرهسازی در کیفیتهای پایین یا ذخیره کردن فایل به تعداد دفعات زیاد در فرمت Lossy موجب تخریب فایل میشود. در مثال زیر نمونهای از این حالت بررسی شده است:
در سمت چپ، تصویر اصلی قرار دارد که از Pixabay با فرمت JPEG دانلود شده است. تصویر میانی ذخیرهسازی فایل در فرمت JPEG در50 درصد اندازه اصلی است و تصویر سمت راست، تصویر ذخیره شده در 10 درصد کیفیت اصلی است.
[/fusion_gallery]
با یک نگاه سریع، تصویر میانی خیلی بد به نظر نمیرسد. اما اگر آنرا بزرگنمایی کنید، میتوانید پیکسل شدن تصویر در لبهها را مشاهده کنید. البته تصویر سمت راست در نگاه اول بسیار نامطلوب است. پیش از بارگذاری، اندازه فایلها به ترتیب874 KB ، 310 KB و 100 KB بود.
فشرده سازی فایل از نوع Lossless
این حالت روشی برای کاهش اندازه فایل است به گونهای که فایل اصلی بطور کامل قابل بازسازی باشد. در این نوع فشرده سازی بر خلاف نوع Lossy هیچ اطلاعاتی حذف نمیشود. اجازه دهید این روش را با مثالی توضیح دهیم. در تصویر زیر 10 بلوک وجود دارد: دو بلوک آبی رنگ، پنج بلوک زرد رنگ، سه بلوک قرمز رنگ. در اینجا بلوکها به این شکل چیده شدهاند و روشهای مختلف دیگری نیز برای چیدن آنها در کنار یکدیگر وجود دارد.
در حالت دیگر بجای نمایش هر 10 بلوک میتوان تنها یک بلوک از هر رنگ را انتخاب کرد و سپس تعداد رنگها را بر روی هر بلوک نوشت. در این صورت بجای 10 بلوک تنها نیاز به سه بلوک است. این حالت توضیح سادهای از فشردهسازی Lossless است. این نوع فشردهسازی با حذف دادههای همسان، موجب ذخیرهسازی اطلاعات به روشی کارآمدتر میشود.
فایلی را در نظر بگیرید که بصورت عبارت زیر نمایش داده میشود.
mmmmmuuuuuuuoooooooooooo
این عبارت به شکل کوتاهتر زیر قابل بازنویسی است.
m5u7o12
این حالت امکان استفاده از تنها 7 کاراکتر بجای 24 کاراکتر با همان معنا را فراهم میسازد.
کاربرد فشرده سازی فایل Lossless
همانطور که اشاره شد، فشرده سازی فایل Lossless در مواردی که شما نمیتوانید هیچ بخشی از فایل اصلی را حذف کنید، بسیار کاربردی است. اگر به دنبال آن هستید که نحوه عملکرد فایلهای ZIP را بدانید پاسخ این است.
زمانیکه شما یک فایل ZIP از یک برنامه اجرایی ویندوز ( فایل های .exe ) ایجاد میکنید، در این حالت از فشردهسازی Lossless استفاده میشود. فشرده سازی فایل با فرمت ZIP روشی کارآمد برای ذخیرهسازی برنامههاست زیرا زمانیکه شما فایل را از حالت فشرده خارج میکنید (UnZIP)، کلیه اطلاعات فایل اصلی دست نخورده و کامل است. اما در حالت فشردهسازی Lossy برای فایلهای اجرایی، فرمت غیر فشرده آن میتواند موجب تخریب و بلا استفاده شدن فایل گردد.
متداولترین فرمت فشرده سازی Lossless برای تصاویر فرمت PNG و برای فایلهای صوتی فرمت FLAC و ZIP است. فرمت فشردهسازی Lossless برای ویدئو بسیار کمتر استفاده میشود، زیرا فضای زیادی را اشغال میکند.
چه زمانی از کدام نوع فشرده سازی فایل استفاده کنیم
اکنون که دو نوع فشرده سازی فایل را بررسی کردیم، ممکن است برای شما این سوال پیش آید که چه زمانی از کدام حالت فشرده سازی باید استفاده کنیم. در حقیقت هیچ نوع فشردهسازی بهتری وجود ندارد؛ بلکه این موضوع به نوع استفاده شما از فایل بستگی دارد.
بطور کلی زمانی که میخواهید نسخه کاملی از فایل اصلی را داشته باشید، باید از فشردهسازی Lossless استفاده کنید. به این مثال توجه کنید:
شما در نظر دارید که مجموعه CDهای قدیمی خود را بصورت دیجیتالی بر روی کامپیوتر خود ذخیره کنید. زمانیکه شما فایلهای بر روی CD را ZIP میکنید، منطقی است که از فرمت FLAC استفاده کنید تا دادهها حذف نشوند. این امر موجب میشود که شما یک نسخه کپی با کیفیت مشابه فایل اصلی از CD خود داشته باشید. اما شاید بخواهید موزیکهای خود را بر روی تلفن همراه یا MP3 Player داشته باشید. احتمالا در این حالت کیفیت بالای فایل برای شما اهمیت چندانی ندارد. بنابراین میتوانید فرمت FLAC را به MP3 تبدیل کنید. در این صورت یک فایل صوتی در اختیار دارید که قابل شنیدن است و حجم بالایی را بر گوشی همراه شما اشغال نمیکند. کیفیت فایل MP3 تولید شده از فرمت FLAC به خوبی فایل MP3 تولید شده از منبع اصلی خواهد بود.
نوع داده موجود در فایل نیز به شما میتواند بهترین نوع فشردهسازی را نشان دهد. زیرا فایلهای PNG از فشردهسازی نوع Lossless استفاده میکنند. اندازه فایل تصاویر فضای یکنواخت بیشتری همانند تصاویر اسکرین شات کامپیوتر را دارد. البته توجه کنید که فرمت PNG زمانیکه تعداد بالایی رنگ را در تصویر اصلی بخواهد نمایش دهد، حجم و فضای بیشتری را اشغال خواهد کرد.
نکات قابل توجه در فشرده سازی فایل
همانطور که اشاره شد تبدیل فرمت فشردهسازی Lossless به فرمت Lossy بسیار عالی است. البته باید توجه داشت که هیچ وقت یک فرمت Lossy را به فرمت Lossless تبدیل نکنید. در حقیقت تبدیل فرمتهای Lossy به Lossless اتلاف فضاست. در فرمتهای Lossy اطلاعات حذف میشوند و قابل بازیابی نیستند. به عنوان مثال اگر یک فایل 3MB فرمت MP3 دارید، تبدیل این فایل به فرمت FLAC ممکن است حجم فایل را به 30MB افزایش دهد. اما این حجم شامل همان فایلهای صوتی است که پیش از این در فرمت MP3 داشتید و تبدیل مجدد به فرمت Lossless موجب بازیابی اطلاعات که در حالت فشرده MP3 حذف شدهاند نمیشود.
نکته آخر اینکه تبدیل یک فایل در فرمت Lossy به فرمت دیگر(و ذخیرهسازی آن بصورت مرتب در همان فرمت) موجب کاهش کیفیت فایل به مرور زمان میشود. هر زمان که شما از فشردهسازی Lossy استفاده میکنید، در حقیقت جزییات بیشتری را از دست میدهید. این موضوع به تدریج موجب صدمه به فایل میشود.
کلام آخر
در این مقاله دو نوع فشردهسازی Lossy و Lossless مورد بررسی قرار گرفت. اکنون شما میدانید که چگونه یک فایل را در اندازههای کمتر به شکل اصلی خود ذخیره کنید و یا چگونه بهترین روش را متناسب با نیاز خود استفاده نمایید. البته الگوریتمهایی که تصمیم میگیرند چه دادههایی در روش فشردهسازی Lossy حذف شوند و یا اینکه چگونه دادههای همسان در فشردهسازی Lossless به بهترین شکل ذخیره میشوند، بسیار پیچیده است. در صورت نیاز میتوانید به مقالات مرتبط در این خصوص مراجعه نمایید.
ثبت ديدگاه