החסרונות של טכניקות קידוד ללא אובדן

...

טכניקות קידוד ללא אובדן מפחיתות את גודל הקבצים הדיגיטליים.

קידוד ללא אובדן, או דחיסה ללא אובדן, מתייחס לתהליך של קידוד נתונים בצורה יעילה יותר כך שהם תופסים פחות ביטים או בתים אבל בצורה כזו שניתן לשחזר את הנתונים המקוריים, סיביות לסיביות, כאשר הנתונים הם דחוס. היתרון של טכניקות קידוד ללא אובדן הוא בכך שהן מייצרות כפילות מדויקת של הנתונים המקוריים, אך יש להן גם כמה חסרונות בהשוואה לטכניקות קידוד חסרות אובדן.

יחס דחיסה

טכניקות קידוד ללא אובדן אינן יכולות להשיג רמות גבוהות של דחיסה. מעט טכניקות קידוד ללא אובדן יכולות להשיג יחס דחיסה גבוה מ-8:1, אשר משתווה באופן שלילי לטכניקות קידוד כביכול אובדניות. טכניקות קידוד מאבדות -- המשיגות דחיסה על ידי השלכת חלק מהנתונים המקוריים -- יכולות להשיג יחסי דחיסה של 10:1 עבור אודיו ו-300:1 עבור וידאו עם אובדן מועט או לא מורגש של איכות. לפי New Biggin Photography Group תמונה צבעונית של 1,943 על 1,702 פיקסלים 24 סיביות RGB בגודל מקורי של 9.9 מגה-בייט ניתן להקטין ל-6.5 מגה-בייט בלבד באמצעות פורמט PNG ללא אובדן, אך ניתן להקטין ל-1 מגה-בייט בלבד באמצעות JPEG האובדן פוּרמָט.

סרטון היום

זמן העברה

כל יישום הכולל אחסון או הפצה של תמונות דיגיטליות, או שניהם, מניח שניתן להשלים את הפעולות הללו תוך פרק זמן סביר. הזמן הדרוש להעברת תמונה דיגיטלית תלוי בגודל התמונה הדחוסה וביחסי הדחיסה שניתן להשיג על ידי טכניקות קידוד ללא אובדן נמוכות בהרבה מטכניקות קידוד חסרות אובדן, טכניקות קידוד ללא אובדן אינן מתאימות ליישומים אלו.

קידוד האפמן

טכניקות קידוד ללא אובדן רבות, כולל PNG, משתמשות בצורת קידוד המכונה קידוד Huffman. בקידוד האפמן ככל שסמל מופיע בתדירות גבוהה יותר בנתונים המקוריים כך המחרוזת הבינארית המשמשת לייצג אותו בנתונים הדחוסים קצרה יותר. עם זאת, קידוד האפמן דורש שני מעברים אחד כדי לבנות מודל סטטיסטי של הנתונים ושני כדי לקודד אותם ולכן תהליך איטי יחסית. זה בתורו אומר שטכניקות קידוד ללא אובדן המשתמשות בקידוד Huffman הן איטיות יותר מטכניקות אחרות בעת קריאה או כתיבה של קבצים.

פִּעַנוּחַ

חסרון נוסף של קידוד האפמן הוא שהמחרוזות או הקודים הבינאריים בנתונים המקודדים הם כולם באורכים שונים. זה מקשה על תוכנת הפענוח לקבוע מתי היא הגיעה לסיבית הנתונים האחרונה ואם הנתונים המקודדים הם פגום -- במילים אחרות הוא מכיל ביטים מזויפים או חסר ביטים -- הוא יפוענח באופן שגוי והפלט יהיה שְׁטוּיוֹת.