תוכן עניינים:
- שלב 1: דרישות
- שלב 2: הרכבת כרטיס ה- MicroSD (רק ב- W/ DB410c)
- שלב 3: התקנת מסגרות חובה
- שלב 4: הפעלת ה- API לזיהוי אובייקטים
וִידֵאוֹ: זיהוי אובייקטים W/ Dragonboard 410c או 820c באמצעות OpenCV ו- Tensorflow .: 4 שלבים
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:15
מדריכים אלה מתארים כיצד להתקין מסגרות OpenCV, Tensorflow ולמידת מכונה עבור Python 3.5 להפעלת היישום זיהוי אובייקטים.
שלב 1: דרישות
תזדקק לאיטנים הבאים:
- DragonBoard ™ 410c או 820c;
-
התקנה נקייה של Linaro-alip:
- DB410c: נבדק בגרסה v431. קישור:
- DB820c: נבדק בגרסה v228. קישור:
- כרטיס MicroSD בנפח 16GB לפחות (אם משתמשים ב- 410c);
הורד את הקובץ (בסוף שלב זה), פרק והעתק לכרטיס ה- MicroSD; שימו לב: אם אתה משתמש ב- DB820c, הורד את הקובץ, פרק ועבור אל/הבית/*USER*/כדי להקל על השימוש בפקודות.
- רכזת USB;
- מצלמת USB (תואמת לינוקס);
- עכבר ומקלדת USB;
- חיבור לאינטרנט.
הערה: עקוב אחר הוראות אלה בדפדפן DragonBoard במידת האפשר, והקל על העתקת הפקודות
שלב 2: הרכבת כרטיס ה- MicroSD (רק ב- W/ DB410c)
- פתח את הטרמינל ב- Dragonboard;
- במסוף הפעל fdisk:
$ sudo fdisk -l
- הכנס את כרטיס ה- MicroSD לחריץ כרטיס ה- MicroSD של DragonBoard;
- הפעל שוב את fdisk, מחפש את השם (והמחיצה) של המכשיר החדש ברשימה (למשל mmcblk1p1)
$ sudo fdisk -l
עבור לספריית השורש:
$ cd ~
צור תיקיה:
$ mkdir sdfolder
הרכיבו את כרטיס ה- MicroSD:
$ mount / dev / sdfolder
שלב 3: התקנת מסגרות חובה
- פתח את הטרמינל ב- Dragonboard;
- במסוף, עבור לספרייה שנבחרה (באמצעות "~" עבור 820c ו- SDCard המותקן עבור 410c):
(820c) $ cd ~
(410c) $ cd ~/sdfolder
עבור לתיקיה סקריפטים של גלאי אובייקטים:
$ cd object_detector_tensorflow_opencv/scripts/
הפעל את סקריפט הגדרת הסביבה:
$ sudo bash set_Env.sh
עדכן את המערכת:
עדכון $ sudo apt
התקן את החבילות הבאות:
$ sudo apt install -y protobuf-compiler gcc-aarch64-linux-gnu
g ++-aarch64-linux-gnu debootstrap schroot git curl pkg-config zip unzip python python-pip g ++ zlib1g-dev default-jre libhdf5-dev libatlas-base-dev gfortran v4l-utils hdf5* libhdf5* libpng-dev build-essential cmake libreadline-gplv2-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev libjpeg-dev libtiff5-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libxvidcore libgtk2.0-dev libgtk-3-dev ffmpeg python-opengl
עבור לספרייה זו:
$ cd /usr /src
הורד את פייתון 3.5:
$ sudo wget
חלץ את החבילה:
$ sudo tar xzf Python-3.5.6.tgz
מחק את החבילה הדחוסה:
$ sudo rm Python-3.5.6.tgz
עבור לספריית Python 3.5:
$ cd Python-3.5.6
אפשר אופטימיזציות עבור אוסף Python 3.5:
$ sudo./configure-אפשר-אופטימיזציות
הידור Python 3.5:
$ sudo לעשות altinstall
שדרג כלי פיפ והתקנה:
$ sudo python3.5 -m pip להתקין -שדרוג pip && python3.5 -m pip התקנת -שדרוג setuptools
התקן numpy:
$ python3.5 -m pip להתקין numpy
עבור לספרייה שנבחרה:
(820c) $ cd ~
(410c) $ cd ~/sdfolder
הורד את Tensorflow 1.11 whl:
$ wget
התקן tensorflow:
$ sudo python3.5 -m pip להתקין tensorflow-1.11.0-cp35-none-linux_aarch64.whl
שיבוט מאגרי OpenCV ו- OpenCV Contrib:
שיבוט $ sudo git -b 3.4 https://github.com/opencv/opencv.git && sudo git שיבוט -b 3.4
עבור לספרייה:
$ cd opencv
צור ספרית build ועבור אליה:
$ sudo mkdir build && build build
הפעל CMake:
$ sudo cmake -D CMAKE_BUILD_TYPE = RELEASE -D CMAKE_INSTALL_PREFIX =/usr/local -D BUILD_opencv_java = OFF -D BUILD_opencv_python = OFF -D BUILD_opencv_python3 = PYTHON3D_PETH_3 איזה python3.5) -D PYTHON_INCLUDE_DIR =/usr/local/include/python3.5m/-D INSTALL_C_EXAMPLES = OFF -D INSTALL_PYTHON3_EXAMPLES = OFF -D BUILD_EXAMPLES = OFF -D WITH_CUDA = OFF -D BUIL_ -DBUILD_TBB = ON -D OPENCV_ENABLE_NONFREE = ON -DBUILD_opencv_xfeatures2d = OFF -D OPENGL = ON -D OPENMP = ON -D ENABLE_NEON = ON -D BUILD_PERF_TESTS = OFF -D BUILD_OPENCVD_OPNC_DOWN_ENU מודולים..
הידור OpenCV עם 4 ליבות:
$ sudo make -j 4
התקן את OpenCV:
$ sudo עשה התקנה
עבור לספרייה שנבחרה:
(820c) $ cd ~
(410c) $ cd ~/sdfolder
עבור לספריית הסקריפטים:
$ cd object_detector_tensorflow_opencv/scripts/
התקן דרישות Python3.5:
$ sudo python3.5 -m pip install -r requirements.txt --no -cache -dir
בדיקת יבוא:
$ python3.5
> יבוא cv2 >> יבוא tensorflow
הערה: אם cv2 מחזיר שגיאת ייבוא, הפעל את ההתקנה בתיקיית Build של OpenCV ונסה שוב
עבור לספרייה שנבחרה:
(820c) $ cd ~
(410c) $ cd ~/sdfolder
הורד את מאגר cocoapi:
שיבוט $ git
הורד מאגר מודלים של Tensorflow:
שיבוט $ git
עבור לספרייה זו:
$ cd cocoapi/PythonAPI
ערוך את הקובץ Makefile, שנה את פייתון ל- python3.5 בשורה 3 ו -8 ולאחר מכן שמור את הקובץ (באמצעות ננו כדוגמה):
$ nano Makefile
ערכו את הקוקופי:
$ sudo לעשות
שימו לב: אם הפקודה 'make' אינה מהדרת, נסה להתקין מחדש את הציתון באמצעות:
$ sudo python3.5 -m pip להתקין ציטון
העתק pycocotools לספריית tensorflow /models /research:
(820c) $ cp -r pycocotools ~/models/research/
(410c) $ cp -r pycocotools ~/sdfolder/models/research/
עבור לספרייה שנבחרה:
(820c) $ cd ~
(410c) $ cd ~/sdfolder
עבור לספריית מודלים/מחקר:
מודלים/מחקר של $ cd
הידור עם פרוטוקול:
$ protoc object_detection/protos/*. proto --python_out =.
משתנה סביבת ייצוא:
$ ייצוא PYTHONPATH = $ PYTHONPATH: `pwd`:` pwd`/slim
בדוק את הסביבה:
$ python3.5 object_detection/builders/model_builder_test.py
שימו לב: הוא חייב לחזור בסדר, אחרת היישום לא יפעל. אם לא, חפש בזהירות כל טעות בתהליך התקנת המסגרות הנדרשות
שלב 4: הפעלת ה- API לזיהוי אובייקטים
כאשר כל המסגרות מוגדרות, כעת ניתן להריץ את ממשק ה- API לזיהוי אובייקטים המשתמש ב- OpenCV יחד עם Tensorflow.
עבור לספרייה שנבחרה:
(820c) $ cd ~
(410c) $ cd ~/sdfolder
עבור לספריית זיהוי האובייקטים:
$ cd object_detector_tensorflow_opencv/
כעת הפעל את היישום:
$ python3.5 app.py
כעת Dragonboard יזרם את הסרטון דרך הרשת. כדי לראות את סרטון הפלט פתח את הדפדפן ב- DB ועבור אל "0.0.0.0: 5000".
מוּמלָץ:
זיהוי אובייקטים עם לוחות Sipeed MaiX (Kendryte K210): 6 שלבים
זיהוי אובייקטים עם לוחות Sipeed MaiX (Kendryte K210): בהמשך למאמר הקודם שלי בנושא זיהוי תמונות עם לוחות Sipeed MaiX, החלטתי לכתוב הדרכה נוספת, המתמקדת בזיהוי אובייקטים. לאחרונה צצה חומרה מעניינת עם שבב Kendryte K210, כולל S
מעקב אחר אובייקטים מבוססי זיהוי צבעים: 10 שלבים
מעקב אחר אובייקטים מבוססי זיהוי צבעים: סיפור עשיתי את הפרויקט הזה כדי ללמוד עיבוד תמונות באמצעות פטל PI ולפתוח קורות חיים. כדי להפוך את הפרויקט למעניין יותר השתמשתי בשני מנועי סרוו SG90 ועליו מצלמת הר. מנוע אחד נהג לנוע אופקית ומנוע שני נהג לתנועה אנכית
מנתח תבניות תנועה באמצעות זיהוי אובייקטים חיים: 11 שלבים (עם תמונות)
מנתח תבניות תנועה באמצעות זיהוי אובייקטים חיים: בעולם של היום, רמזורים חיוניים לכביש בטוח. עם זאת, פעמים רבות, רמזורים יכולים להטריד במצבים בהם מישהו מתקרב אל האור בדיוק כשהוא הופך לאדום. זה מבזבז זמן, במיוחד אם האור הוא מוקדם
זיהוי אובייקטים חזותיים באמצעות מצלמה (TfCD): 15 שלבים (עם תמונות)
זיהוי אובייקטים חזותיים באמצעות מצלמה (TfCD): שירותים קוגניטיביים שיכולים לזהות רגשות, פנים של אנשים או אובייקטים פשוטים נמצאים עדיין בשלב מוקדם של התפתחות, אך עם למידת מכונה הטכנולוגיה הזו הולכת ומתפתחת. אנו יכולים לצפות לראות יותר מהקסם הזה ב
זיהוי פנים+זיהוי: 8 שלבים (עם תמונות)
זיהוי פנים+זיהוי: זוהי דוגמה פשוטה לריצת זיהוי פנים וזיהוי באמצעות OpenCV ממצלמה. הערה: הכנתי את הפרויקט הזה לתחרות חיישנים והשתמשתי במצלמה כחיישן לאיתור מעקב והכרה. אז, המטרה שלנו בפגישה זו, 1. התקן את אנקונדה