Phát hiện và theo dõi đối tượng TensorFlow qua Bluetooth cho các dự án Arduino

Phiên bản mới nhất

Phiên bản
Cập nhật
22 thg 2, 2020
Nhà phát triển
Thể loại
Lượt cài đặt
10.000+

App APKs

Arduino Object Detection Track APP

Ứng dụng này được thiết kế dành riêng cho sinh viên và các kỹ sư điện tử và người có sở thích làm việc với bộ điều khiển vi Arduino và Raspberry Pi. Nó sử dụng các ứng dụng khai thác OpenCV để phát hiện và phân loại thị giác máy tính bao gồm cả máy học Google Tensorflow Lite.

Ứng dụng có thể phát hiện và theo dõi các loại đối tượng khác nhau từ camera của điện thoại như đường kẻ, đốm màu, hình tròn, hình chữ nhật và con người. Các loại đối tượng và vị trí màn hình được phát hiện sau đó có thể được gửi đến thiết bị nhận Bluetooth, chẳng hạn như HC-05.

Nếu sử dụng bộ điều khiển vi mô thích hợp, ví dụ: Người dùng Arduino hoặc Raspberry Pi có thể phân tích các đối tượng được phát hiện cho các dự án dựa trên robot. Một ví dụ điển hình có thể là gắn điện thoại vào bộ robot 2 hoặc 4W, sau đó có thể theo dõi / theo dõi một quả bóng hoặc người.

Các tính năng chính của ứng dụng:
1. Phát hiện và theo dõi Blob màu
2. Phát hiện và theo dõi vòng tròn
3. Phát hiện đường
4. Mọi người phát hiện và theo dõi bằng biểu đồ của học sinh (HoG)
5. Phát hiện các đối tượng nhãn Coco của TensorFlow Lite (Ví dụ: Người, Mèo, Ô tô, TV, v.v.)
6. Sử dụng các mô hình Tensorflow tùy chỉnh.
7. Gửi các tham số đối tượng được phát hiện qua Bluetooth.

Lưu ý rằng tất cả các hoạt động xử lý hình ảnh hoạt động tốt nhất trong điều kiện ánh sáng tốt. Nếu bạn không thể phát hiện các đối tượng, vui lòng thử thay đổi một số cài đặt cấu hình. Cũng lưu ý rằng các thuật toán theo dõi được triển khai rất đơn giản và do đó sẽ không hoạt động đáng tin cậy khi nhiều đối tượng chồng chéo lẫn nhau.

Để sử dụng các mô hình Tensorflow tùy chỉnh, hãy tải một mô hình tfile Mobilenet tương thích. Một ví dụ cho điều này là pet_detect.tflite và pet_labels.txt. Tuy nhiên, bạn cần đổi tên chúng thành custom.tflite và custom.txt và đặt chúng vào thư mục tài liệu công cộng lưu trữ nội bộ trên điện thoại của bạn. Ngoài ra, vui lòng đảm bảo bạn cho phép ứng dụng Android để truy cập bộ nhớ.

Định dạng truyền dữ liệu Bluetooth:

Tất cả các giao tiếp dữ liệu được gửi dưới dạng văn bản ASCII theo định dạng sau:

"Loại đối tượng": "ID": "XPos", "YPos", "Chiều rộng", "Chiều cao"
  
  Ví dụ Đối tượng Blob màu: "CO: 0: -40,60,0,0"
  Trong đó ID là một số từ 0 đến 4 không có theo dõi hoặc bất kỳ số ID theo dõi số nguyên duy nhất nào có tùy chọn theo dõi.
  Vị trí x và y liên quan đến trung tâm của đốm màu với 0,0 nằm ở giữa màn hình xem trước của máy ảnh.
   
  Ví dụ đối tượng vòng tròn Không theo dõi: "CC: 0: -40,60,20,0"
  Trong đó các vị trí x, y cho tâm đường tròn và chiều rộng cho bán kính đường tròn.
  Trong chế độ theo dõi, x, y, w, h cung cấp hình chữ nhật bên trong của hình tròn.

  Ví dụ đối tượng hình tròn có bộ lọc màu: "FC: 0: -40,60,20,0"
  Trong đó các vị trí x, y cho tâm đường tròn và chiều rộng cho bán kính đường tròn.
  
  Đối tượng dòng ví dụ: "LO: 0: -40,60,20,200"
  Trong đó các vị trí x, y cho điểm dòng thứ nhất và w, h givds điểm dòng thứ hai.
  
  Ví dụ Đối tượng người không theo dõi: "PO: 0: -40,60,20,0"
  Trong đó các vị trí x, y cho phía trên bên trái của hình chữ nhật và w, h cho chiều rộng và chiều cao.
  
  Ví dụ đối tượng People với Bộ lọc màu: "FP: 0: -40,60,20,0"
  Trong đó các vị trí x, y cho phía trên bên trái của hình chữ nhật và w, h cho chiều rộng và chiều cao của hình chữ nhật.

Tất cả các đối tượng được theo dõi: "TO: 0: -40,60,20,40".
trong đó các vị trí x, y cho tâm hình chữ nhật và w, h cho chiều rộng và chiều cao từ tâm hình chữ nhật. Lưu ý rằng nếu lọc theo vòng tròn và người, id đối tượng được theo dõi sẽ đặt lại về 0 cho các đối tượng màu chồng chéo.

Các đối tượng TensorFlow: "ObjectTitle: 0: -40,60,20,40"
Trong đó ObjectTitle là bất kỳ đối tượng TensorFlow được phân loại, ví dụ: "Người", "Cốc", "Chai", vv .. Các vị trí X, Y cho tâm hình chữ nhật và w, h cho chiều rộng và chiều cao từ tâm trực tràng. Lưu ý rằng nếu lọc trên giao lộ blob màu, đảm bảo rằng theo dõi blob màu được bật.

Định dạng cho Bộ lọc trên TensorFlow: "FTF: Person: -40,60,20,40". Trong đó "Person" có thể là bất kỳ loại đối tượng TensorFlow nào được phát hiện có sẵn được xác định trong coco_labels_list.txt (Xem Google TensorFlowLite).
 
Trợ giúp trực tuyến đầy đủ tại Git Hub: /
https://github.com/GemcodeStudios/ObjectDetectionTracking

Bản quyền Gemcode Studios 2019
Đọc thêm

Quảng cáo