ספריית Potree: הדרך להכניס ענן נקודות ל- Web להצגת תלת מימד

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

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

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

כל נקודה ב- Point Cloud מקבלת ערכים של מיקום X, Y ו- Z וכן צבע RGB. לרוב, ענן הנקודות יורכב מתוך רצף של תמונות. שימוש נפוץ בענן נקודות מתקבל כאשר מעלים רחפן כדי לסרוק אתר תיירות, אתר בנייה או כל תא שטח אחר. הרחפן יצלם את השטח ממספר זוויות, ועל פי נתוני הזווית והמיקום של תמונה, ייבנה הענן. באופן דומה ניתן לסרוק בשיטה זו חדרים, רכבים, מטוסים, או כל אובייקט גדול אחר.

בעיית הביצועים: מתמודדים עם ענן של מיליוני נקודות במרחב

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

Potree עומדת במשימה

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

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

Potree, שנבנתה כספריית קוד פתוח מבוססת WebGL,  נתמכת בעיקר על ידי חברת Rapidlasso ומספר תורמים נוספים. בניגוד להרבה ספריות שקיימות בשוק שיש להן API נגיש וברור, Potree אינה כזו. בכדי לקבל ביצועים טובים ולנצל בצורה מיטבית את היכולות שלה לעיבוד והצגת Point cloud יש צורך  בידע מעמיק בגרפיקה תלת ממדית בכלל ובמנוע THREE.js בפרט.

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

בוידאו: כלים למדידת מרחקים במודל תלת מימד ב- WEB. באמצעות Potree ניתן עם שכבות ידע וכלים שונים על גבי אזורים גיאוגרפיים נרחבים

 לסיכום, כאשר ניגשים להתמודד עם האתגר של הצגת תלת מימד וענני נתונים ברשת, Potree מספקת את הגישה היעילה ביותר, שתומכת בדרישות ל- Cross Platform ובהצגה היברידית של Point Cloud בכל מכשיר.

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

Summary
ספריית Potree: הדרך להכניס ענן נקודות ל- Web להצגת תלת מימד
Article Name
ספריית Potree: הדרך להכניס ענן נקודות ל- Web להצגת תלת מימד
Description
הספריה Potree מאפשרת להציג ענני נקודות באפליקציות ווב ולספק למשתמשים תצוגה תלת ממדית של אזורים גדולים (אפילו עד מספר קילומטרים).
Author
Publisher Name
OneCode

Comments (0)