עיבוד תמונה

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

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

עיבוד תמונה נעשה לשתי מטרות עיקריות:

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

לעיבוד תמונה שימושים רבים:

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

יישומים[עריכת קוד מקור | עריכה]

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

היפוך תמונה אוטומטי

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

עקרון[עריכת קוד מקור | עריכה]

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

תוכנות עיבוד תמונה נפוצות[עריכת קוד מקור | עריכה]

  • פוטושופ - תוכנה מקצועית לעיבוד תמונה
  • פיינטשופ פרו - תוכנת עיבוד תמונה הדומה במקצת לפוטושופ
  • פוטו אדיטור - תוכנה לעיבוד תמונה שמשולבת באופיס
  • פוטו פיינט - תוכנה מקצועית לעיבוד תמונה המשולבת בתוכנה קורל דרו
  • Microsoft Office Picture Manager‎ הנמצאת בחבילות אופיס 2003
  • GIMP - תוכנה חופשית תחת רישיון GPL הנתמכת על ידי מערכות הפעלה נוספות מלבד חלונות

ביצוע עיבוד תמונה[עריכת קוד מקור | עריכה]

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

התמונה הנדגמת תופיע בזיכרון בצורת מטריצה דו ממדית \ p[x][y] , כל איבר במטריצה הוא פיקסל. כל פיקסל מכיל אינפורמצייה על רמת האור שהפיקסל הזה נחשף לה בזמן הצילום. הרזולוצייה נקבעת על ידי צפיפות הפיקסלים על סנסור המצלמה, ואם דוגמים ומייצגים פיקסל בבייט (8 ביט) זה אומר שכל פיקסל מייצג אחד מ־256 רמות אפור.

במקרה של טיפול בתמונה צבעונית משתמשים לרוב ב־RGB ‏(Red Green Blue) ואז ישנן שלוש מטריצות: \ p_\text{red}[x][y], p_\text{green}[x][y], p_\text{blue}[x][y]

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

צריך לשים לב לכך שמטריצת היציאה קטנה בממדיה מהתמונה, אם גודל התמונה הוא X,Y וגודל הפילטר M,N אזי גודל מטריצת היציאה יהיה 1+X-M+1 ,Y-N.

פילטרים לדוגמה[עריכת קוד מקור | עריכה]

פילטר המחליק רעש לבן (רעש בתדר מרחבי גבוה)[עריכת קוד מקור | עריכה]


\begin{pmatrix}
  0.25 & 0.25 \\
  0.25 & 0.25 
\end{pmatrix}

פיקסל במקום x,y במטריצת היציאה יהיה: \  Out[x][y]=(p[x][y]+p[x+1][y]+p[x][y+1]+p[x+1][y+1])/4

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

פילטר המבליט רק את השינויים בתמונה[עריכת קוד מקור | עריכה]


\begin{pmatrix}
1 & 1 & 1 \\
1 & -8 & 1 \\
1 & 1 & 1 
\end{pmatrix}

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

פילטר זה הינו פילטר מאוד מפורסם והוא ידוע בכינויו "לפלסיאן" (laplacian).

פילטר לזיהוי תנועה[עריכת קוד מקור | עריכה]

  1. בכל זמן נתון דוגמים תמונה לתוך מטריצה \ p[x][y][t].
  2. יוצרים מטריצת יציאה \ p_{\text{out}}[x][y]=\left |p[x][y][t]-p[x][y][t-1]\right|. השימוש בערך המוחלט הוא מטעמים מעשיים, מערכות עיבוד תמונה עובדות עם מספרים חיוביים (אין משמעות לערך פיקסל שלילי).
  3. חוסר תזוזה גורם למטריצה יציאה שכולה אפסים, תוצאות אחרות מתקבלות רק כאשר יש תנועה.

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

ראו גם[עריכת קוד מקור | עריכה]