תוכן עניינים:
2025 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2025-01-13 06:57
מדריכים אלה מתארים כיצד להתקין מסגרות 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".