سُورس کُد فشردهسازی تصویر
فشردهسازی تصویر فرایندی است که به کاهش حجم فایلهای تصویری کمک میکند. این فرایند میتواند به دو دسته کلی تقسیم شود: فشردهسازی بدون افت کیفیت و فشردهسازی با افت کیفیت. در ادامه، به توضیح کامل و جامع سورس کد فشردهسازی تصویر میپردازیم.
فشردهسازی بدون افت کیفیت
این روش به حفظ کیفیت تصویر کمک میکند. یکی از روشهای رایج در این دسته، الگوریتم PNG است. این الگوریتم به فشردهسازی بدون افت کیفیت میپردازد. در واقع، دادهها بهگونهای فشرده میشوند که پس از بازگشایی، تصویر دقیقاً مشابه تصویر اصلی باشد.
فشردهسازی با افت کیفیت
در این روش، حجم فایل کاهش مییابد، اما کیفیت تصویر ممکن است کاهش یابد. الگوریتم JPEG یکی از معروفترین روشها در این دسته است. این الگوریتم با استفاده از تبدیلهای ریاضی، اطلاعات غیرضروری را حذف میکند. بهعنوان مثال، از تبدیل کسینوس گسسته (DCT) استفاده میکند.
سورس کد نمونه
در زیر، یک کد ساده برای فشردهسازی تصویر با استفاده از کتابخانه OpenCV و پیادهسازی الگوریتم JPEG آورده شده است:
```python
import cv2
# بارگذاری تصویر
image = cv
- imread('input_image.jpg')
# فشردهسازی با کیفیت 90
cv
- imwrite('compressed_image.jpg', image, [int(cv2.IMWRITE_JPEG_QUALITY), 90])
توضیحات کد
در خط اول، کتابخانه OpenCV وارد میشود. سپس، تصویر اصلی بارگذاری میشود. در نهایت، با استفاده از تابع `imwrite`، تصویر فشردهشده ذخیره میشود. عدد 90 نشاندهنده کیفیت تصویر است که میتوان آن را بین 0 تا 100 تنظیم کرد.
نتیجهگیری
فشردهسازی تصویر ابزاری حیاتی برای کاهش حجم فایلها و بهبود سرعت بارگذاری در وب و ذخیرهسازی است. استفاده از الگوریتمهای مناسب و بهینهسازی کیفیت تصویر میتواند تجربه کاربری بهتری را فراهم آورد.