בחר קורס יסודות בינה מלאכותית RB26-17 : נארף בינה מלאכותית NeRF (Neural Radiance Fields

בחר קורס יסודות בינה מלאכותית RB26-17 : נארף בינה מלאכותית NeRF (Neural Radiance Fields

 

NERF A.I –  NeRF (Neural Radiance Fields

NeRF (Neural Radiance Fields) היא טכניקה מתקדמת בתחום הבינה המלאכותית והראייה הממוחשבת, שנועדה ליצור מודל תלת־ממדי מציאותי מתמונות דו־ממדיות

NeRF משתמש ברשת נוירונים כדי ללמוד איך אור מתפזר ונפלט מנקודות שונות במרחב. הוא מאפשר לייצר הדמיה תלת־ממדית ריאליסטית מתוך כמה תמונות סטטיות בלבד

אפשר להגיד ש־NeRF עושה פרדיקציה (חיזוי) של מה שהפיקסל "היה רואה" מזווית חדשה שלא צולמה.

 איך זה קורה בפועל:

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

  • עכשיו, כשאנחנו "שואלים" אותה על פיקסל מזווית שלא קיימת –
    היא מדמה את התשובה לפי מה שלמדה → זה בדיוק פרדיקציה

מטרת הרשת NeRF:

לחזות צבע ו־שקיפות של נקודה במרחב לפי מיקומה וכיוון ההסתכלות.

קלט (Input) של הרשת:

  1. מיקום במרחב – נקודה תלת־ממדית:

    x=(x,y,z)\mathbf{x} = (x, y, z)

  2. כיוון ההסתכלות – וקטור שמייצג לאן המצלמה מסתכלת:

    d=(θ,ϕ)או (dx,dy,dz) \mathbf{d} = (\theta, \phi) \quad \text{או} \quad (dx, dy, dz)

כלומר: איפה אתה במרחב, ולאן אתה מסתכל משם.

וקטור כיווני בקרטזי (Cartesian):

d=(dx,dy,dz)\mathbf{d} = (dx, dy, dz)

  • מייצג את כיוון הקרן במרחב (3D direction vector).

  • זו הצורה הנפוצה בפועל באימון NeRF.

2. זוויות כדוריות (Spherical angles):

d=(θ,ϕ)\mathbf{d} = (\theta, \phi)

 


פלט (Output) של הרשת:

  1. צבע (RGB) – הצבע שהקרן "רואה" באותה נקודה:

    (r,g,b)(r, g, b)

  2. שקיפות / צפיפות (σ) – כמה "חומר" יש שם:

    σ=density\sigma = \text{density}

 

זה קורה אלפי פעמים:

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

 

למה צריך קרן אור?

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

מה זו קרן אור ב־NeRF?

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

 

הקרניים יוצאות מהמצלמה" – למה הכוונה?

ב־NeRF (ובגרפיקה בכלל), כשאומרים "קרניים יוצאות מהמצלמה", מתכוונים לזה:

  1. המצלמה היא נקודת המבט – כאילו אנחנו מסתכלים על הסצנה.

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

 כלומר, אנחנו לא מתחילים מתמונה קיימת, אלא ממיקום של מצלמה מדומיינת, ושואלים:

"אם הייתי עומד פה, ומסתכל לכיוון הזה – מה הייתי רואה שם?

מה האלגוריתם עושה עם הקרן?

  1. דוגם לאורך הקרן – כל כמה מילימטרים הוא בודק נקודה לאורך הקרן.

  2. שואל את הרשת הנוירונית:

    • מה הצבע בנקודה הזו (אם יש שם חומר)?

    • כמה שקיפות/חומר יש שם (density)?

  3. משקלל את כל התשובות לאורך הקרן:

    • אם הקרן עברה דרך אוויר → שקוף → ממשיכים.

    • אם הקרן עברה דרך חומר אטום → נוצר צבע → זה יהיה הפיקסל בתמונה.

  4. מה יוצא מזה?

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

דוגמה קטנה:

  • אתה מייצר תמונה מזווית חדשה.

  • הקרן יוצאת מפיקסל שמכוון לפינה של שולחן.

  • הרשת אומרת:

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

  • כך תבנה את התמונה כולה, פיקסל אחר פיקסל.

 שימושים:

  • יצירת סצנות תלת־ממדיות מציאותיות ממשלוש תמונות בלבד

  • אנימציה, AR/VR

  • סריקה תלת־ממדית ללא צורך בלידאר

  • משחקים, קולנוע, Google Maps (למשל בתוך המבנים)


🔧 כלים פופולריים:

  • Instant-NGP (NVIDIA) – מימוש מהיר של NeRF בזמן אמת

  • Colmap + NeRF – זיהוי מצלמות ואז בניית מודל

  • Luma AI – אפליקציה נוחה לטלפון ליצירת NeRF

אז איך זה קורה הכי מהר שיש

 

לא להתבלבל   Photogrammetry 3D

The Difference Between NeRF And Photogrammetry 3D Scan

 

 


 

 

LUMA שלב אחרי שלב 

 

 


 

 אימון  מודל NeRF:

✅ שלב 1: איסוף תמונות

  • מצלם את אותו אובייקט או סצנה מזוויות שונות.

  • כל תמונה חייבת לכלול:

    • מיקום המצלמה (position)

    • כיוון המצלמה (orientation / pose)

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


✅ שלב 2: הכנת דאטה לאימון

לכל תמונה:

  • מחשבים קרניים – Ray per pixel.

  • כל קרן היא:

    • נקודת התחלה (מצלמה)

    • כיוון (לפי הפיקסל)

  • לדוגמה: קרן שמתחילה מהמצלמה והולכת דרך הפיקסל ה־(x, y)


✅ שלב 3: דגימה לאורך הקרניים

לכל קרן:

  • דוגמים הרבה נקודות (במרחקים שונים לאורך הקרן)

  • לכל נקודה מזינים לרשת:

    • x,y,zx, y, z

    • כיוון הקרן dd

  • הרשת מחזירה:

    • (r, g, b) – צבע

    • σ (density) – שקיפות / כמות חומר


✅ שלב 4: חישוב צבע סופי לקרן

  • משקללים את כל הצבעים והשקיפויות לאורך הקרן לפי מודל אופטיקה (volume rendering).

  • מקבלים צבע סופי של פיקסל.


✅ שלב 5: חישוב שגיאה (Loss)

  • משווים את הצבע שחזה המודל לצבע האמיתי בתמונה.

  • מחשבים Loss (MSE) בין הפיקסלים.

  • משתמשים ב־Backpropagation כדי לעדכן את המשקלים של הרשת.


✅ שלב 6: חוזרים על זה…

  • חוזרים על התהליך הזה עבור עשרות אלפי קרניים מכל התמונות.

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


COLMAP –  אם חסרות זוויות (למשל אין תמונות מהצד האחורי), התוצאה תהיה חלקית או חסרה

 COLMAP צריך תמונות מכל הצדדים:

כדי ש-COLMAP יוכל לבנות מודל תלת־ממדי מלא, הוא צריך:

  1. תמונות מזוויות רבות ושונות – לפחות 3–5 מכל צד.

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

  3. תאורה עקבית תורמת לדיוק, אבל לא חובה.

הבדלים   COLMAP VS  NeRF

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

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

 


העשרה :

Understanding 3D Reconstruction with COLMAP


תוכנות  לשימוש ב NERF

כלים אונליין להתנסות ב-NeRF:

1. Luma AI – יצירת מודל תלת־ממדי בצורה קלה ומהירה:
🔗 https://lumalabs.ai

2. Nerfstudio בגוגל קולאב – הרצת NeRF דרך Colab עם GPU חינמי:
🔗 https://colab.research.google.com/github/nerfstudio-project/nerfstudio/blob/main/examples/notebooks/Nerfstudio-COLMAP.ipynb

3. Kiri Engine – אפליקציית מובייל לסריקה תלת־ממדית:
🔗 https://www.kiriengine.app


 

 

חלק ב

 

 

 

 

 

 

 

YOLO

חלק 2 :

ספירה של אנשים בתמונה

ספירה של אנשים מתקדם

זיהוי בוידאו :

 

כתיבת תגובה