יום רביעי, 17 באוקטובר 2018

תחילת עבודה ב Octave ופרויקט לדוגמא - עיבוד תמונה

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

בחיפושי התחלתי לבדוק את Matlab שעושה רושם שמיועדת בדיוק לדברים האלו אולם הסתבר שמחיר של רשיון לצרכן הפרטי הוא בסביבות 2500$ לרשיון בודד... :-(למוסדות לימוד יש הנחה...). התחלתי לבחון חלופות ומצאתי את Octave. Octave אמורה להיות כמעט כפילה של Matlab. אני משוכנע של Matlab תהיינה המון הסתייגויות מההשוואה אבל לצורך העניין - לקחתי פרויקט Matlab והרצתי אותו על Octave והוא רץ עם שינויים קטנטנים (פרטים בהמשך). המטרה היתה להתחיל להכיר את Octave ולראות איך עושים בו שימוש למטרות של עיבוד מסד נתונים גדול כמו גלי מוח.

בפרויקט הזה תוכלו לראות את היכולות של ה Matlab / Octave. מקווה שבהמשך הידע שלי יבשיל לכדי התמודדות על פרויקט עיבוד גלי מוח וחיבור של זה לארדואינו...

נתחיל?...

בשלב הראשון יש להוריד את ה Octave מכאן. אני בחרתי באפשרות Windows - בחרו במערכת ההפעלה שמתאימה לכם. ההתקנה של ה Octave די פשוטה (ביחס להתקנה של ה Matlab בה אתם נדרשים לחתום ולהצהיר על כל מיני דברים - על מנת להתקין גרסת נסיון ל 30 יום...) ולאחר ההתקנה תראו שתי תוכנות: Octave CLI ו Octave GUI. הכנסו בבקשה ל Octave GUI.

בחלון שיפתח לכם תוכלו לראות את הממשק של Octave הכולל את שורת הפקודה - Command window ואת חלונית הקוד - Editor. בלשוניות שבתחתית העמוד תוכלו להחליף ביניהם.


נסו לשחק מעט בחלונית הפקודה:

כתבו "1" והקישו Enter
נסו "1+1" ולחצו על Enter
נסו להגדיר משתנים שונים ולחשב איתם. הגדרה תסתיים ב ; לפני ההקשה על ה Enter.

ראו כמה דוגמאות קטנטנות בסרטון:



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

עכשיו תשמרו רגע על פוקוס - צריך להתקין את הספריה וגם לטעון אותה כדי שהכל יעבוד:

1. אל תחלצו את הספריה - העבירו אותה אל שולחן העבודה (סתם בשביל הנוחות).

2. חפשו את הספריה על שולחן העבודה דרך החלון שבצד שמאל של ה Octave.


3. התקינו את הספריה: בשורת הפקודה הקישו pkg install ולאחר מכן את השם של הספרייה במדויק בתוך גרשיים בודדים. אצלי זה נראה ככה:

pkg install 'image-2.8.0.tar.gz' 

אצלכם זה עשוי להראות קצת שונה בהתאם לגירסה של ה image שהורדתם.

לאחר ההורדה - חכו מעט, זה עשוי לקחת דקה או קצת יותר. לאחר שה command window ישחרר לכם את הבמה כדי לכתוב משהו חדש - כתבו pkg load image.

כעת, התכנה אמורה להיות מוכנה עבור עיבוד התמונה. נחפש תמונה בגוגל או נצלם את הרכב שלנו. את התמונה נשים על שולחן העבודה ונכנה אותה בשם CAR2. נדאג שהתמונה שלנו תהיה מסוג JPG.

בשביל הדוגמא, לקחתי תמונה מהאתר הזה וחתכתי אותה באמצעות "צייר". התמונה שהתקבלה היא:


האם ה Octave יצליח להוציא את המידע הרלוונטי מהתמונה?...

העליתי את הקוד של ה Octave  לחלונית העורך - ה Editor:




את הקוד לקחתי מהאתר הזה (תודה!!) אבל התברר ששתי שורות - השורה הרביעית והשורה החמישית - אינן נתמכות ב Octave אלא רק ב Matlab. לשמחתי, הן לא היו קריטיות. הן שורות שנועדו למחוק נתונים קודמים על מנת שהתכנה תרוץ חלק ללא תקלות מיותרות. בפועל, סימנתי את שתי השורות ב %%, כלומר, "אני לא מעוניין להשתמש בכן" והתכנה רצה מצוין.

לחצתי על RUN (חיכיתי קצת בסבלנות...) והתכנה הציגה בפני את שמונת שלבי העיבוד של התמונה עד לתוצאה הסופית. בשלב הראשון, התכנה מציגה את התמונה המקורית שהתקבלה:




בשלב השני, התכנה מנקה מתוך התמונה פרטים של צבע והופכת אותה לגווני אפור: 




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



זהו להיום...

זו התנסות ראשונית ב Octave ויש עוד המון מה ללמוד אבל זו ההתחלה...

בהצלחה!

אין תגובות:

הוסף רשומת תגובה

הערות? הארות? יש לך משהו חשוב לספר לכולם? שאלות?

נשמח לשמוע!

(התגובה תפורסם בהקדם בכפוף לאישור מערכת מייקינג)