דרישות הפרויקט לקורס הראייה
המחקר בארבעה שלבים
כל צירוף של משימה ומאגר נתונים עובר דרך אותו pipeline. הפרויקט הוא אותו ניסוי החוזר על עצמו על פני משימות ועיוותים.
שלב 1בסיס ייחוס נקי
הריצו כל שיטה על תמונות נקיות ומדדו את הביצועים מול אמת המידה.
שלב 2עיוות
הפעילו עיוותים בעוצמות מכוילות ומדדו את ההידרדרות מול ה-SNR.
שלב 3שחזור
שפרו את התמונות המעוותות (הפחתת רעש, הסרת גשם, תאורה חלשה) ומדדו שוב.
שלב 4כיוונון עדין
התאימו את המודלים העמוקים לעיוותים והשוו מול השחזור.
שלב א. היקף ובחירה
מה אתם חוקרים ולמה. קבעו זאת לפני כתיבת הקוד; תעדו כל בחירה, עם קישורים, ב-README.
דרישה 1
מאגר נתונים ציבורי עם אמת מידה (ground truth)
בחרו מאגר נתונים ציבורי (KITTI, Cityscapes, COCO, ADE20K, Oxford-IIIT Pet, DOTA, מאגר רפואי וכדומה) שנושא תיוגי אמת מידה לפחות עבור אחת מהמשימות שלכם. טענו תת-קבוצה קבועה עם seed כך שהתוצאות יהיו ניתנות לשחזור.
אנטי-דפוסים נפוצים
- היעדר אמת מידה, כך שאי אפשר למדוד את ההידרדרות.
- תת-קבוצה ללא seed או משתנה שמשתנה בין ריצות.
- מאגר נתונים קטן ופשוט מדי, קטן מכדי להראות מגמות אמיתיות.
דרישה 2
שלוש משימות, ברמה נמוכה וגבוהה
בחרו לפחות שלוש משימות ראייה שמכסות במכוון רמות הפשטה שונות: משימה קלאסית ברמה נמוכה (זיהוי קצוות/פינות/נקודות עניין, התאמת תכונות) ומשימה ברמה גבוהה (זיהוי עצמים, סגמנטציה, סיווג, תנוחה). זה מה שהופך את סיפור העמידוּת למעניין.
אנטי-דפוסים נפוצים
- שלוש וריאציות של אותה משימה.
- מודלים עמוקים בלבד, ללא משימה קלאסית ברמה נמוכה.
- משימות שאין להן מדד אמת מידה זמין.
דרישה 3
שלוש שיטות עיוות
בחרו לפחות שלושה עיוותים שריאליסטיים לתחום שלכם: רעש (גאוסי, speckle, מלח-ופלפל), תאורה חלשה, טשטוש תנועה, גשם, ערפל, דחיסת JPEG וכדומה. כל עיוות חייב להיות מופעל בכמה רמות עוצמה מכוילות.
אנטי-דפוסים נפוצים
- עוצמה יחידה, כך שלא קיימת עקומת הידרדרות.
- עיוותים שאינם רלוונטיים לתחום שנבחר.
- עוצמה שאינה מכומתת (ראו דרישה 6).
דרישה 4
מודל או אלגוריתם לכל משימה
שייכו שיטה קונקרטית לכל משימה, וכללו לפחות מודל למידה עמוקה אחד (למשל YOLO לזיהוי, SegFormer/DeepLab לסגמנטציה, ResNet לסיווג). שיטות קלאסיות (ORB, Canny, Lucas-Kanade) מכסות את המשימות ברמה הנמוכה.
אנטי-דפוסים נפוצים
- היעדר כל מודל למידה עמוקה.
- מודל שלא ניתן לכוונן בהמשך (חוסם את שלב 4).
- גרסת מודל או משקלים לא מתועדים.
שלב ב. בסיס ייחוס והידרדרות
בססו את האמת על תמונות נקיות, ואז כמתו כמה כל שיטה צונחת ככל שהאיכות יורדת.
דרישה 5
בסיס ייחוס על תמונות נקיות
הריצו כל שיטה על תמונות נקיות ותעדו את ביצועיה מול אמת המידה. בסיס ייחוס זה הוא הרפרנס שכל מספר מאוחר יותר מושווה אליו, ולכן עליו להשתמש במדד הנכון והמתאים למשימה (IoU/mAP לזיהוי, mIoU/Dice לסגמנטציה, יחס התאמות לתכונות).
אנטי-דפוסים נפוצים
- דיווח פלט הדגמה במקום מדד מדוד.
- מדד שאינו תואם למשימה.
- היעדר בסיס ייחוס, כך שההידרדרות אינה ניתנת לפרשנות.
דרישה 6
הידרדרות נמדדת מול SNR
מַפּוּ את עוצמת העיוות לציר פיזיקלי משותף (SNR או PSNR ב-dB) ודווחו את הביצועים כעקומה על פני הציר הזה. כך ניתן להשוות עיוותים מסוגים שונים בסקאלה אחת, ומתגלה היכן כל שיטה נשברת.
אנטי-דפוסים נפוצים
- עוצמה שמדווחת כערך שרירותי של כפתור.
- זוג לפני/אחרי בודד במקום עקומה.
- עיוותים שונים המשורטטים על צירים שאינם ברי-השוואה.
דרישה 7
דיווח לפי מחלקה ולפי SNR
פרקו את הביצועים לפי מחלקה ולפי רמת SNR, ולא רק כמספר מצרפי יחיד. ממוצע מסתיר את העובדה שמחלקות קטנות או נדירות קורסות לרוב ראשונות תחת עיוות; המבט לפי מחלקה הוא המקום שבו נמצאים הממצאים האמיתיים.
אנטי-דפוסים נפוצים
- מספר מצרפי יחיד עבור כל מאגר הנתונים.
- מיצוע שמעלים את הקריסה לפי מחלקה.
- היעדר טבלה שמקשרת בין המדד למחלקה ול-SNR.
שלב ג. שחזור
שתי דרכים להילחם בהידרדרות: לתקן את התמונה, או להתאים את המודל. עשו את שתיהן והשוו ביניהן בהוגנות.
דרישה 8
שיפור / שחזור תמונה
עבור כל עיוות, הפעילו שלב עיבוד-מקדים קלאסי תואם (הפחתת רעש בשיטת non-local-means או bilateral, gamma/CLAHE לתאורה חלשה, deblocking ל-JPEG, deconvolution לטשטוש) ומדדו מחדש כל משימה על התמונות המשוחזרות.
אנטי-דפוסים נפוצים
- מסנן גנרי יחיד המופעל על כל עיוות.
- שיפוט השחזור לפי איך שהתמונה נראית, ולא לפי המדד במורד הזרם.
- אי-הרצה מחדש של המשימות לאחר השיפור.
דרישה 9
כיוונון עדין של המודל
עבור שיטות הלמידה העמוקה, כווננו על נתונים מעוותים (או נקיים-בתוספת-מעוותים) ומדדו כמה מהביצועים חוזרים. במקום שבו קיימים תיוגי אמת נקיים, תוכלו לייצר תיוגי אימון מתמונות נקיות ולעשות בהם שימוש חוזר עבור המערך המעוות.
אנטי-דפוסים נפוצים
- כיוונון והערכה על אותן תמונות.
- היעדר checkpoint או config שמורים, כך שאי אפשר לשחזר.
- טענת שחזור ללא השוואה מול בסיס הייחוס הנקי.
דרישה 10
השוואה הוגנת בין שיפור לכיוונון עדין
העמידו את השחזור ואת הכיוונון העדין זה לצד זה על אותן משימות, עיוותים ורמות SNR, וקבעו מי מנצח והיכן. התוצאה המעניינת היא לרוב שהתשובה תלויה ברמת ההפשטה של המשימה.
אנטי-דפוסים נפוצים
- ניסיון באסטרטגיית שחזור אחת בלבד.
- השוואה ביניהן על תת-קבוצות או מדדים שונים.
- הסתרת המקרים שבהם השחזור נכשל.
שלב ד. הנדסה ותיעוד
קורא אמור להיות מסוגל להבין ולשחזר את המחקר מתוך הריפוזיטורי בלבד.
דרישה 11
ריפוזיטורי ניתן לשחזור
מסרו ריפוזיטורי GitHub עם קוד העיוות, קוד הפעלת המודלים, הפלטים והתיוגים השמורים, checkpoints או configs, ו-README מתועד שרושם כל בחירה עם קישורים. ראו את המדריך הגשה ב-GitHub לרשימת הבדיקה המלאה.
אנטי-דפוסים נפוצים
- תוצאות במצגת שאין קוד בריפוזיטורי שמייצר אותן.
- נתיבים מקומיים מקודדים קשיח וללא קובץ סביבה.
- README שמפרט צעדים אך לא החלטות.
דרישה 12
ויזואליזציה: לפני/אחרי ועקומות
תעדו את ה-pipeline באופן חזותי: תמונות עם תיוגים מונחים מעליהן, רשתות של לפני/אחרי עיוות ושחזור, ותרשימי מדידה (תרשימי עמודות, עקומות לפי SNR, השוואות לפי מחלקה). החזותיים הם האופן שבו הממצא מתקשר, ולא קישוט.
אנטי-דפוסים נפוצים
- טבלאות של מספרים ללא איור תומך.
- צילומי מסך ללא תוויות, צירים או כיתובים.
- היעדר לפני/אחרי שיראה מה העיוות באמת עשה.
דרישה 13
מצגת והגשה סופית
הגישו את הריפוזיטורי המלא לצד מצגת (PPT ו-PDF). המצגת מספרת את סיפור העמידוּת מקצה לקצה: הבחירות, בסיס הייחוס הנקי, ההידרדרות, השחזור והמסקנות.
אנטי-דפוסים נפוצים
- מצגת שמראה פלטים אך לעולם לא את הסיפור המדוד.
- מספרים במצגת שאינם עולים בקנה אחד עם הריפוזיטורי.
- היעדר מסקנה לגבי מה משחזר ביצועים ומתי.
תוכנית שבועית מוצעת
קצב עבודה בר-ביצוע מהקמת הצוות ועד ההגשה הסופית. כל שבוע מפיק תוצר קונקרטי בריפוזיטורי.
| שבוע | משימה | תוצר |
| 1 | הרכבת צוות, פתיחת Git, רישום | ריפוזיטורי GitHub פתוח; שורה בטבלת פרויקטי הקורס |
| 2 | חקר ובחירה של מאגר נתונים, עיוותים ומשימות | טבלת החלטות עם קישורים, משובצת ב-README |
| 3 | חקר ובחירה של שיטות ושיפורים | טבלת החלטות עם קישורים, משובצת ב-README |
| 4 | הורדת נתונים; ויזואליזציה של תמונות ותיוגים | קוד הורדה ו-EDA; רשת תמונות לדוגמה עם תיוגים ב-README |
| 5 | הרצת שיטות/מודלים על נתונים נקיים; שמירת פלטים | תיקייה עם פלטים/תיוגים בריפוזיטורי |
| 6 | מדידת ביצועים על נתונים נקיים באמצעות אמת מידה | טבלת תוצאות; ויזואליזציה לפי מחלקה |
| 7 | הפעלת עיוותים; שמירת נתונים | קוד עיוות; תיקיית תמונות מעוותות; ויזואליזציית לפני/אחרי |
| 8 | הרצת מודלים; מדידת הידרדרות | קוד הפעלה; טבלאות ביצועים; חזותיי השוואה מתויגים |
| 9 | הפעלת שיפורים; מדידת ביצועים | רשתות זו-לצד-זו; חזותיי השוואת ביצועים |
| 10 | כיוונון עדין של המודל/ים | קוד כיוונון עדין; checkpoints / משקלי מודל |
| 11 | מדידת ביצועי המודל המכוונן | טבלת תוצאות ב-Git; ויזואליזציה |
| 12 | סקירת ה-README; שיפור חזותיים, טקסט וטבלאות | README עשיר ומפורט עם כל ההחלטות והויזואליזציה |
| 13 | הכנה והעלאה של המצגת; סקירת הריפוזיטורי | ריפוזיטורי מלא; מצגת (PPT ו-PDF) |