Mục lục:
2025 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2025-01-13 06:58
Tài liệu hướng dẫn này mô tả cách cài đặt OpenCV, Tensorflow và các khuôn khổ học máy cho Python 3.5 để chạy ứng dụng Phát hiện đối tượng.
Bước 1: Yêu cầu
Bạn sẽ cần các bước lặp sau:
- Một DragonBoard ™ 410c hoặc 820c;
-
Một bản cài đặt sạch của Linaro-alip:
- DB410c: được thử nghiệm trong phiên bản v431. Liên kết:
- DB820c: được thử nghiệm trong phiên bản v228. Link:
- Thẻ MicroSD dung lượng ít nhất 16GB (Nếu sử dụng 410c);
Tải xuống tệp (Ở phần cuối của bước này), giải nén và sao chép vào thẻ MicroSD; Hạn chế: Nếu sử dụng DB820c, hãy tải tệp xuống, giải nén và chuyển đến / home / * USER * / để dễ sử dụng các lệnh.
- Một trung tâm USB;
- Một máy ảnh USB (tương thích Linux);
- Một con chuột và bàn phím USB;
- Kết nối Internet.
Obs: Làm theo hướng dẫn này trong trình duyệt DragonBoard nếu có thể, tạo điều kiện thuận lợi cho việc sao chép các lệnh
Bước 2: Gắn thẻ MicroSD (chỉ W / DB410c)
- Mở thiết bị đầu cuối trong Dragonboard;
- Trong thiết bị đầu cuối chạy fdisk:
$ sudo fdisk -l
- Cắm thẻ MicroSD vào khe cắm thẻ DragonBoard MicroSD;
- Chạy lại fdisk, tìm kiếm tên (và phân vùng) của thiết bị mới trong danh sách (ví dụ: mmcblk1p1)
$ sudo fdisk -l
Đi tới thư mục gốc:
$ cd ~
Tạo một thư mục:
$ mkdir sdfolder
Gắn thẻ MicroSD:
$ mount / dev / sdfolder
Bước 3: Cài đặt các khung bắt buộc
- Mở thiết bị đầu cuối trong Dragonboard;
- Trong thiết bị đầu cuối, hãy chuyển đến thư mục đã chọn (sử dụng "~" cho 820c và thẻ SDCard được gắn cho 410c):
(820c) $ cd ~
(410c) $ cd ~ / sdfolder
Đi tới thư mục tập lệnh của Trình dò tìm đối tượng:
$ cd object_detector_tensorflow_opencv / scripts /
Chạy tập lệnh thiết lập môi trường:
$ sudo bash set_Env.sh
Cập nhật hệ thống:
Cập nhật $ sudo apt
Cài đặt các gói này:
$ 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 libv libgtk2.0-dev libgtk-3-dev ffmpeg python-opengl
Đi tới thư mục này:
$ cd / usr / src
Tải xuống Python 3.5:
$ sudo wgetGiải nén gói:
$ sudo tar xzf Python-3.5.6.tgz
Xóa gói nén:
$ sudo rm Python-3.5.6.tgz
Đi tới thư mục Python 3.5:
$ cd Python-3.5.6
Bật tối ưu hóa cho biên dịch Python 3.5:
$ sudo./configure --enable-Optimizations
Biên dịch Python 3.5:
$ sudo make altinstall
Nâng cấp pip và các công cụ thiết lập:
$ sudo python3,5 -m pip cài đặt - nâng cấp pip && cài đặt python3,5 -m pip - nâng cấp công cụ thiết lập
Cài đặt numpy:
$ python3,5 -m pip cài đặt numpy
Đi tới thư mục đã chọn:
(820c) $ cd ~
(410c) $ cd ~ / sdfolder
Tải xuống Tensorflow 1.11 whl:
$ wgetCài đặt tensorflow:
$ sudo python3,5 -m pip cài đặt tensorflow-1.11.0-cp35-none-linux_aarch64.whl
Kho lưu trữ Clone OpenCV và OpenCV Contrib:
$ sudo git clone -b 3.4 https://github.com/opencv/opencv.git && sudo git clone -b 3.4Đi tới thư mục:
$ cd opencv
Tạo thư mục xây dựng và truy cập vào nó:
$ sudo mkdir build && cd build
Chạy 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 = ON -D PYTHON3_DEFAULT_EXECUTABLE.5 = $ python mà 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 BUILD_TESTS = OFF -D WITH_TBB = ON -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_OPENCV_DNN = ON -D OPENCV_EXTRA_MODULES../PATH mô-đun..
Biên dịch OpenCV với 4 lõi:
$ sudo make -j 4
Cài đặt OpenCV:
$ sudo thực hiện cài đặt
Đi tới thư mục đã chọn:
(820c) $ cd ~
(410c) $ cd ~ / sdfolder
Đi tới thư mục script:
$ cd object_detector_tensorflow_opencv / scripts /
Cài đặt các yêu cầu của Python3.5:
$ sudo python3.5 -m pip install -r request.txt --no-cache-dir
Nhập thử nghiệm:
$ python3,5
> nhập cv2 >> nhập tensorflow
Ám ảnh: Nếu cv2 trả về lỗi nhập, hãy chạy thực hiện cài đặt trong thư mục xây dựng OpenCV và thử lại
Đi tới thư mục đã chọn:
(820c) $ cd ~
(410c) $ cd ~ / sdfolder
Tải xuống kho cocoapi:
$ git cloneTải xuống kho lưu trữ mô hình Tensorflow:
$ git cloneĐi tới thư mục này:
Đi tới thư mục này:
$ cd cocoapi / PythonAPI
Chỉnh sửa tệp Makefile, thay đổi python thành python3.5 ở dòng 3 và 8, sau đó lưu tệp (sử dụng nano làm ví dụ):
$ nano Makefile
Biên dịch cocoapi:
$ sudo make
Ám ảnh: Nếu lệnh ‘make’ không biên dịch, hãy thử cài đặt lại cython bằng:
$ sudo python3,5 -m pip cài đặt cython
Sao chép pycocotools vào thư mục tensorflow / models / research:
(820c) $ cp -r pycocotools ~ / models / research /
(410c) $ cp -r pycocotools ~ / sdfolder / models / research /
Đi tới thư mục đã chọn:
(820c) $ cd ~
(410c) $ cd ~ / sdfolder
Đi tới thư mục mô hình / nghiên cứu:
$ cd mô hình / nghiên cứu
Biên dịch với protoc:
$ protoc object_detection / protos / *. proto --python_out =.
Biến môi trường xuất khẩu:
$ export PYTHONPATH = $ PYTHONPATH: `pwd`:` pwd` / slim
Kiểm tra môi trường:
$ python3.5 object_detection / builders / model_builder_test.py
Obs: Nó phải trả về OK, nếu không thì ứng dụng sẽ không hoạt động. Nếu không, hãy cẩn thận tìm kiếm bất kỳ lỗi nào trong quá trình cài đặt các khuôn khổ được yêu cầu
Bước 4: Chạy API phát hiện đối tượng
Với tất cả các khung được định cấu hình, giờ đây có thể chạy API phát hiện đối tượng sử dụng OpenCV cùng với Tensorflow.
Đi tới thư mục đã chọn:
(820c) $ cd ~
(410c) $ cd ~ / sdfolder
Đi tới thư mục phát hiện đối tượng:
$ cd object_detector_tensorflow_opencv /
Bây giờ hãy chạy ứng dụng:
$ python3.5 app.py
Bây giờ Dragonboard sẽ truyền video qua mạng. Để xem video đầu ra, hãy mở trình duyệt trong DB và đi tới "0.0.0.0: 5000".