Basics
Necessary math for taking these tutorials
לכל חלק במדריכים אשתדל לכוון אילו קורסים מתמטיים אקדמאיים תצטרכו עבורו.- Image Processing: Affine Transformations - הקורס אלגברה לינארית 1 אמור להספיק אך רצוי להיות לאחר אלגברה 2.
- Image Processing: Histogram Equalization - אינפי/חדווא 1-2, הסתברות/מבוא להסתברות למדעי המחשב.
- Computer Vision: Optical Flow - TODO
Basics methods and objects of OpenCV
כדי להתמקד בחלקים הרלוונטים בכל מדריך בבלוג, שחלקם גם ככה לא פשוטים, נשתמש בפונקציות בסיסיות ואובייקטים בסיסיים של OpenCV.בכל מדריך אמנע משימוש ב- using namespace cv; זאת על מנת להקל עליכם להבין מתי אנחנו משתמשים באובייקטים ובפונקציות של הספרייה ומתי אנו רושמים קוד אותנטי שלנו.
הערה: אל תטעו, תהיה לנו מספיק עבודה קשה גם במתמטיקה וגם בקוד כדי לבצע את הנדרש.
האובייקטים:
- Mat- למעשה זוהי המטריצה שתאכסן לנו את התמונה. בהתאם לסוג התמונה שנרצה לאחסן, נצטרך להגדיר את המטריצה שלנו בהתאם. לדוגמה אם המטריצה מכילה תמונת Grayscale, כלומר לכל פיקסל-תא במטריצה, יש ערך אחד ויחיד של עוצמת הצבע בין 0-255, אך אם היא תכיל תמונת BGR/RGB כל תא במטריצה יכיל וקטור באורך 3 שכל מקום בו יאחסן את הערך המתאים של עוצמת הצבע הכחול/אדום/ירוק לכל פיקסל.
- imread(ImgPath) - פונקציית קריאת התמונה שלנו מהמחשב. היא תמיד תקבל את מיקום התמונה במחשב אותה אנחנו רוצים לקרוא ובאופן דיפולטיבי, היא תקרא את התמונה בפורמט
BGR.
- imread(ImgPath,IMREAD_GRAYSCALE)- קריאת התמונה ב GrayScale
- imshow("Window Name",img) - פונקציית הצגת התמונה שלנו במסך. היא תמיד תקבל את שם החלון החדש הנפתח במחשב עבור התמונה ואובייקט מסוג
Mat
שמכיל לנו את התמונה אותה אנחנו רוצים להציג.
- waitKey(time) - כדי להצליח להציג את התמונה, נצטרך להשתמש בפונקציה הזאת לאחר
imshow.
המשתנה
time
בעצם קובע לכמה זמן להציג את התמונה במילי-שניות.
אם נרצה להציג את התמונה ללא מגבלת זמן עד לחיצת מקש במקלדת נזין את הערך 0. אם נרצה להציג למשך מילי-שנייה את התמונה אז נשים את הערך 1. (יהיה רלוונטי כאשר נעבוד על סרטונים בהם נצטרך להציג כל את הפריימים של הסרטון אחד לאחר השני כדי למעשה להציג את הסרטון עצמו.
- waitKey(time) - כדי להצליח להציג את התמונה, נצטרך להשתמש בפונקציה הזאת לאחר
imshow.
המשתנה
time
בעצם קובע לכמה זמן להציג את התמונה במילי-שניות.
- wait - פונקציית הצגת התמונה שלנו במסך. היא תמיד תקבל את שם החלון החדש הנפתח במחשב עבור התמונה ואובייקט מסוג Mat שמכיל לנו את התמונה אותה אנחנו רוצים להציג.
- Computer Vision: Optical Flow*- TODO