מהו קובץ JP2?
JPEG 2000 (JP2) היא מערכת קידוד תמונה ותקן דחיסת תמונות מתקדם. הוא משתמש בטכנולוגיית wavelet כדי לקודד תוכן ללא אובדן בכל איכות בבת אחת. יתרה מכך, ללא כל עונש משמעותי ביעילות הקידוד, ל-JPEG 2000 יש את היכולת לגשת ולפענח את אותו תוכן בצורה יעילה למגוון רזולוציות ואיכויות אחרות. זרמי הקוד ב-JPEG 2000 ניתנים להרחבה באופן משמעותי עם אזורי עניין המספקים את המתקן לגישה אקראית מרחבית.
JPEG 2000 בולט כאחד הסטנדרטים הניתנים להרחבה ביותר. ניתן לאחסן חלקים שונים בתמונה באמצעות איכויות מגוונות. ניתן להשיג עליית ביצועים ראויה לציון על ידי הזמנת זרם הקוד במגוון דרכים. עם זאת, JP2 דורש מקודדים/מפענחים מורכבים ומאתגרים מבחינה חישובית, כתוצאה מהגמישות הזו. בהשוואה ל-JPEG, JPEG 2000 מייצר רק חפצי צלצול שיוצרים טבעות ליד קצה התמונה ויכולים להיות מטושטשים, בעוד ש-JPEG משתמש בלוקים של חפצים חזותיים בגודל 8×8 שיכולים להיות חפצי צלצול וחסימה כאחד. בעל עד 16384 רכיבים מגוונים עם המידות ב-terapixels, ודיוק שיכול להגיע ל-38 סיביות/דגימה.
היסטוריה
בשנת 2000, ועדת המומחים של Joint Photographic Experts תכננה את JP2 במטרה לשפר את תקן ה-JPEG המבוסס על טרנספורמציה קוסינוס דיסקרטי עם השיטה החדשה הזו מבוססת wavelet. ועדת ה-JPEG שמה לה למטרה לספק את שיטות הבסיס שלהם ללא עמלות רישיון. ברישיון JP2 שזכה לתחרות בין 20 חברות, הם ניצחו בשפם. JPEG 2000 הוכרז כתקן ISO, אם כי רוב דפדפני האינטרנט אינם מוכנים לתת יד ל-JPEG 2000 מאז 2017.
חלקים ממערכת קידוד תמונות JPEG 2000
להלן החלקים העיקריים המהווים את חבילת התקנים המלאה עבור JPEG 2000.
חלק | כותרת | תיאור | מספר |
---|---|---|---|
חלק 1 | מערכת קידוד ליבה | מגדיר תחביר של זרם הקוד. שלבים שונים המעורבים בפענוח תמונות JPEG 2000. מסביר את פורמט הקובץ הבסיסי JP2, מטא נתונים וזכויות IP שיש לספק. | ISO/IEC 15444-1 |
חלק 2 | הרחבות | מגדיר הרחבות לזרם קוד בפורמט קובץ ומאפשר הדגמות של דגימות HDR, מפרט מרחב צבע, חיתוך, טרנספורמציות גיאומטריות; אנימציות מגוונות, מטא נתונים וזרם קוד מרובה. | ISO/IEC 15444-2 |
חלק 3 | Motion JPEG 2000 (MJ2 או MJP2) | הצג פורמט קובץ לרצפי תנועה, קידוד תמונות בזרם קוד עצמאי. | ISO/IEC 15444-3 |
חלק 4 | התאמה | מציין טכניקות בדיקה לקידוד ופענוח ובודק קבצים הן עבור זרמי קוד חשוף והן עבור קבצי JP2. | ISO/IEC 15444-4 |
חלק 5 | תוכנת התייחסות | מורכבת משתי חבילות קוד מקור (Java, C) המטשמות מערכת קידוד Core וזמינות תחת רישיונות קוד פתוח. | ISO/IEC 15444-5 |
חלק 6 | פורמט קובץ תמונה מורכבת | מגדיר את פורמט הקובץ JPM ומאפשר הדמיה של מסמכים מרובי עמודים עבור יישומים דמויי פקס. תומך בשימוש ב-JBIG2 וב-JPEG. | ISO/IEC 15444-6 |
חלק 8 | JPEG 2000 Secured (JPSEC) | מבטיח את אבטחת העסקאות, התוכן והטכנולוגיות, ומאפשר זרמי JPEG 2000 bit מאובטחים. | ISO/IEC 15444-8 |
חלק 9 | JPIP | מגדיר כלים בסביבת רשת לגישה למטא נתונים ולדימויים, ומציין פרוטוקולים אינטראקטיביים ויעילים | ISO/IEC 15444-9 |
חלק 10 | JP3D | הרחבה וולומטרית של חלק 1 ומציגה את מימד ה-Z. מרחיב את הרעיון של אריחים, בלוקי קוד, מתחמים ותכונות נגישות של אזורי עניין תלת-ממדיים. | ISO/IEC 15444-10 |
חלק 11 | JPWL | עוסק בשידור מאורגן היטב ברשת אלחוטית המועדת לשגיאות. הרחבה זו תואמת למפענחים | ISO/IEC 15444-11 |
חלק 13 | מקודד ברמת הכניסה | מגדיר יישום מקודד ברמת הכניסה של מערכת קידוד ליבה. | ISO/IEC 15444-13 |
חלק 14 | JPXML | ייצוג ב-XML ומסביר קטעי סמן ושיטות לגישה לנתונים הפנימיים של תמונות. | ISO/IEC 15444-14 |
חלק 15 | HTJ2K (תחת פיתוח) | מציין אלגוריתם קידוד בלוק חלופי. אלגוריתם מציע תפוקה מוגברת פי עשרה וקידוד/פענוח ללא הפסדים. |
פורמט קובץ JP2
JPEG 2000 מגדיר את פורמט הקובץ כמו גם את זרם הקוד באותו אופן כמו JPEG-1. למרות שדגימות תמונה מתוארות באופן בלעדי על ידי JPEG 2000, אך JPEG-1 כולל מידע נוסף על מרחב הצבע והרזולוציה החיוניים לקידוד התמונה. אם תמונה מאוחסנת כקובץ JPEG 2000, ה-.jp2 משמש כתוספת. פורמט קובץ זה משתפר עוד יותר על ידי סיומת JPEG 2000 חלק-2, המגדירה מנגנוני אנימציה ותצורה של זרמי קוד רבים לתמונה אחת. סיומת .jpx משמשת כאשר תמונות נשמרות בפורמט קובץ מורחב זה. מכיוון שנתוני זרם קוד אינם נחשבים נשמרים בקבצים בעיקרם, לכן לא מוגדרת הרחבה סטנדרטית למטרה זו. למרות שלמטרות בדיקה, הוא מקבל לעתים קרובות את הסיומת .jpc או .j2k. בניגוד ל-JPEG-1, JPEG 2000 בוחר בדרך אחרת של קידוד מטא נתונים בפורמט XML. התקן 12234-1.4 (על ידי ועדת ISO TC42) משמש כהתייחסות בין תגי ה-Exif ורכיבי ה-XML. JPEG 2000 יכול להכיל תקן ISO, XMP בתוכו.
נתחים
קבצי JPEG 2000 מורכבים מנתחים רצופים. לכל נתח יש כותרת של 8 בתים: גודל נתח של 4 בתים (ביג-אנדיאן, בייט גבוה ראשון) וסוג נתח של 4 בתים - אחת מהחתימות המוגדרות מראש: “jP " או “jP2 “.
הנתח השני חייב להיות מסוג “ftyp” ויש לו תת-סוג בהיסט 8. JPEG 2000 מוגדר על ידי תת-סוג שחייב להיות אחד מהערכים: “jp2 “(סוג קובץ *.JP2), “jp20” (קובץ הקלד *.JPA), “jpm " (סוג קובץ *.JPM), “jpx " (סוג קובץ *.JPX).
חוזרים על נתחים, עד לזיהוי סוג לא ידוע, אנו יוצרים קובץ תמונה/וידאו JPEG 2000.
שינוי צבע
בתחילה, נדרשת הפיכת תמונות ממרחב צבע RGB למרחב צבע אחר. למטרה זו, קיימות שתי דרכים: שינוי צבע בלתי הפיך (ICT) ו-Reversible Color Transform (RCT). לשעבר משתמש במרחב הצבעים YC,,B,,C,,R,, ויש ליישם אותו ב-fix/floating –point בעוד מאוחר יותר מרחב צבע YUV שונה והפיך באופיו.// //לא מוגבל לדגם RGB, JPEG שפת 2000 משתמשת בטרנספורמציה מרובת רכיבים.
ריצוף
כאשר שינוי הצבע נעשה, התמונה הופכת לאזורים מלבניים הנקראים אריחים הניתנים לשינוי ולקידוד בנפרד. הגודל של כל האריחים יהיה זהה או שכל התמונה יכולה להיחשב כאריח בודד אחד. מפענח מנצל את היתרון של ריצוף וצורך פחות זיכרון או יכול לקודד חלקית חלק מהאריחים. למרות שלטכניקה זו יש חסרון של ירידה באיכות התמונה.
טרנספורמציה של גל
תמונה לאחר ריצוף עוברת טרנספורמציה של גלים שיכולים להיות בלתי הפיכים או הפיכים ומיושמת על ידי שימוש בפיתול או בשיטת ההרמה.
יחס דחיסה
בהתאם למאפיינים הפיזיים של תמונה, מתקבל רווח דחיסה של 20% חיזוי יתירות מרחבית של JPEG 2000 ממלא תפקיד חיוני בתהליך הדחיסה ותמונות ברזולוציה גבוהה נוטות להשיג את היתרון הרב ביותר.
יישומים המוגשים לפי התקן
- הקלטה, עריכה ואחסון של סרטוני HD מבוססי פריימים
- תמונות רפואיות וביומטריה
- תמונות לווין, חישה מרחוק וזיהוי תנועה
- תקשורת לקוח/שרת, הפצת רשת ואחסון.
- קולנוע דיגיטלי, תרומת עדכוני HDTV בשידור חי, דברים אודיו-ויזואליים דיגיטליים