אינטרפולציה ביליניארית

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

במתמטיקה, אינטרפולציה ביליניארית היא הרחבה של אינטרפולציה ליניארית עבור פונקציות אינטרפולציה של שני משתנים (למשל, x ו - y) על מרובע מרושת בשני ממדים (2D).

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

אלגוריתם

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

ראשית נעשה אינטרפולציה ליניארית בכוון . זו מניבה:

נמשיך על ידי אינטרפולציה בכוון כדי להשיג את ההערכה הרצויה:

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

אלגוריתם חלופי

דרך חלופית לכתוב את הפתרון לבעיית האינטרפולציה:

כאשר המקדמים הם פתרון המערכת הליניארית:

אם פתרון מועדף מבחינת (f(Q אז אנחנו יכולים לכתוב:

שבו המקדמים הם פתרון של:

רבוע היחידה

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

או באופן שקול, לפעולה המטריציונית:

לא ליניארי

בניגוד למה שהשם מרמז, אינטרפולציה בילנארית, אינה ליניארית; אלא תוצר של שתי פונקציות ליניאריות.

לחלופין, ניתן לכתוב:

כאשר

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

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

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

הרחבה ברורה של אינטרפולציה ביליניארית לשלושה ממדים נקראת אינטרפולציה תרילינארית.

יישומים בעיבוד תמונה

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

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

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

Bilinear interpolation
דוגמה - אינטרפולציה ביליניארית על סולם הערכים האפשרי של הצגת "שחור-לבן"

כפי שניתן לראות בדוגמה משמאל, ערך העצמה בפיקסל שחושב להיות בשורה 20.2, וטור 14.5 יכול להיות מחושב על ידי אינטרפולציה ליניארית ראשונה בין הערכים בטור 14 ו-15 על כל שורות 20, 21, הנותנת:

ואז מבצעים אינטרפולציה באופן ליניארי בין ערכים אלה, הנותנת:

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

ראו גם

הערות שוליים

Logo hamichlol 3.png
הערך באדיבות ויקיפדיה העברית, קרדיט,
רשימת התורמים
רישיון cc-by-sa 3.0