שאלות נפוצות#

שאלות כלליות#

מה ייחודי ב-CMUcam1?#

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

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

מהו קצב הפריימים של ה-CMUcam1?#

קצב המסגרות המהיר ביותר הוא 16.7 מסגרות לשנייה. משמעות הדבר היא שה-CMUcam1 יכול לומר לכם את מיקום העצם כ-17 פעמים בשנייה. באמצעות פרוטוקול התוכנה הטורי תוכלו להאט זאת אם תרצו.

באילו קצבי באוד תומכת ה-CMUcam1?#

החל מהגרסה האחרונה של הקושחה (v1.12) ה-CMUcam1 יכולה לתקשר בקצבי באוד של 9600, 19200, 38400 או 115200. קצב הבאוד נבחר באמצעות הגדרות מגשרים על הלוח.

כיצד אני משדרג את הקושחה של ה-CMUcam1?#

אם אתה משתמש כעת בקושחה v1.11 אין סיבה לשדרג אלא אם אתה זקוק לתמיכה בקצבי הבאוד הנמוכים יותר. גרסה 1.11 תומכת בקצבי באוד 38400 ו-115200. גרסה 1.12 תומכת בקצבי באוד אלה ומוסיפה תמיכה ב-9600 וב-19200 באוד. כדי לשדרג את הקושחה שלך תצטרך לתכנת מחדש את זיכרון ה-flash בשבב המעבד שלך. אם יש לך מתכנת תוכל להוריד את הגרסה הנוכחית מעמוד ה-הורדות שלנו ולצרוב מחדש את המעבד בעצמך.

האם ה-CMUcam1 עובדת בחוץ?#

ה-CMUcam1 עובד בחוץ אך לא באור שמש ישיר. למצלמת ה-CMOS שאנו משתמשים בה אין מסנן IR באיכות גבוהה, ולכן אור השמש רווה את הפיקסלים האדומים והתמונה הופכת, בעיקרון, למונוכרומטית באור שמש ישיר. אפשר להוסיף מסנן חיצוני כדי לשפר את הפעולה בחוץ. יש לנו כתבה קצרה המראה לכם כיצד תנאי תאורה משפיעים על ה-CMUcam1 שתוכלו להוריד כאן.

האם אני יכול לכתוב קוד מותאם אישית ל-CMUcam1?#

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

כמה חשמל צורכת ה-CMUcam1?#

המערכת המלאה צורכת כ-200 מיליאמפר.

מהו שדה הראייה של ה-CMUcam1?#

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

באיזה מעבד משתמשת ה-CMUcam1?#

קוד עיבוד התמונה שלנו שוכן בשבב מיקרו-בקר של Ubicom הפועל בתדר 75 MHz, ה-SX28AC. שבב זה קורא את כל הפיקסלים ממצלמת ה-CMOS דרך ממשק מקבילי ומבצע את כל העיבוד בזמן אמת. לאחר מכן הוא מעביר את התוצאות למיקרו-בקר או למחשב שלכם דרך ממשק יציאה טורית.

באיזו מצלמת CMOS משתמשת ה-CMUcam1?#

אנו משתמשים במצלמת CMOS המנצלת את מצלמת ה-CMOS על שבב OmniVision OV6620. אנו משתמשים בלוח מצלמת CMOS דגם C3088 שעליו מורכבים החיישן, מחבר ועדשה.

האם ה-CMUcam1 עובדת עם מצלמות CMOS אחרות?#

לא. כרגע מערכת החומרה והתוכנה תוכננה לעבוד באופן ספציפי עם מצלמת ה-CMOS OV6620 של OmniVision. יהיה צורך לתכנן מחדש לחלוטין את המערכת כדי לעבוד עם מצלמה אחרת.

האם יש מקום כלשהו שבו אני יכול למצוא תשובות לשאלות נוספות שיש לי?#

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

היכן אני יכול לגלות עוד על ראייה ממוחשבת באופן כללי?#

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

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

שאלות טכניות#

מהו הרצף המדויק של השלבים המבוצעים בהפעלה על ידי מצב הדגמה?#

הנה הרצף המדויק שמצב ההדגמה מבצע בהפעלה:

  1. אפסו את המצלמה.

  2. המתן 5 שניות עד שההתאמה האוטומטית של פרמטרי המצלמה תתייצב.

  3. שלחו את מחרוזת רגיסטר המצלמה: CR 18 32 19 32 הבוחרת במצב YCrCb ומכבה את ה-auto gain.

  4. בצע את הפקודה TW.

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

מהו הרצף המדויק של השלבים המבוצעים על ידי הפקודה ”TW“?#

הנה הרצף המדויק שהפקודה TW מבצעת:

  1. כווצו את החלון ל-1/4 מהגודל (בכל ממד) של החלון הנוכחי לחלון חדש הממורכז במרכז החלון הנוכחי.

  2. קרא ל-get mean.

  3. שחזרו את החלון לגודל התמונה המלא.

  4. הגדירו את הערך המקסימלי והמינימלי עבור כל ערוץ צבע להיות הממוצע עבור אותו ערוץ +/- 30.

לאחר מכן, המצלמה תתחיל להזרים חבילות מסוג C, M, או N.

באילו תנאים נורית המעקב נדלקת כאשר מצב אוטומטי מופעל?#

ה-LED יידלק כאשר ה-pixel_count >= 2 המוחזר. ה-pixel_count = (actual_pixel_count + 4) / 8 המוחזר.

אם למצלמת ה-CMOS יש רזולוציה של 352 x 288 פיקסלים, מדוע רזולוציית ה-CMUcam1 היא רק 80 x 143?#

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

Mosaic

(הדיאגרמה באדיבות Foveon, Inc.)

אז מה שתוכלו לראות הוא שפיקסלים יכולים להיחשב כמסודרים בקבוצות של ארבעה, כאשר יש שתי מדידות G ומדידת R אחת ומדידת B אחת לכל קבוצה. אם תשליכו אחת ממדידות ה-G (מה שאנו עושים) תראו שהרזולוציה האמיתית של מצלמת 352x288 קרובה יותר ל-176x144. אנו מפעילים את המצלמה במצב חצי רזולוציה המדלג על כל בלוק שני של 2x2 אופקית, מה שנותן לכם 88x144. בשל מגבלות זיכרון במעבד אנו משליכים 8 עמודות אופקית ושורה אחת אנכית, המכילות תבנית בדיקה, מה שנותן לכם 80x143 כרזולוציה הסופית.

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

כיצד אני יכול למקד את ה-CMUcam1 בצורה מדויקת?#

כמובן, הדרך הטובה ביותר להמשיך במיקוד היא ללכוד frame dumps באמצעות הממשק הגרפי. ייתכן שאין לכם מחשב בהישג יד, או שאתם משתמשים ב-BotBall CMUcam1, שאין לו רזולוציה מספקת בקצב השידור הקבוע של 9600 באוד כדי שזה יעבוד היטב.

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

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