Mục lục:

MyPetBot (Một Bot Theo dõi Bạn): 10 Bước (Có Hình ảnh)
MyPetBot (Một Bot Theo dõi Bạn): 10 Bước (Có Hình ảnh)

Video: MyPetBot (Một Bot Theo dõi Bạn): 10 Bước (Có Hình ảnh)

Video: MyPetBot (Một Bot Theo dõi Bạn): 10 Bước (Có Hình ảnh)
Video: Những Morphle Hỗn Loạn | My Pet Morphle | Morphle Tiếng Việt | Phim hoạt hình giáo dục thiếu nhi 2024, Tháng bảy
Anonim
Image
Image
MyPetBot (Một Bot theo dõi bạn)
MyPetBot (Một Bot theo dõi bạn)
MyPetBot (Một Bot theo dõi bạn)
MyPetBot (Một Bot theo dõi bạn)

Ai là một trong những ứng dụng đẹp nhất của toán học. Về cơ bản, đó là một loạt các hoạt động ma trận được tối ưu hóa để phù hợp với kết quả bạn đang tìm kiếm. May mắn thay, có rất nhiều công cụ mã nguồn mở cho phép chúng ta sử dụng nó.

Tôi đã có ý tưởng ban đầu từ lâu khi tôi làm việc trên một thác nước được khử kích hoạt bởi những người đi ngang qua. Tôi đã sử dụng cảm biến siêu âm và phát hiện ra quá muộn rằng chúng không hoạt động nhiều khi bị ướt… Đó không phải là một trải nghiệm thú vị. Cuối cùng, chúng tôi đã sử dụng một nút lớn mà mọi người sẽ nhấn nếu họ muốn vượt qua. Hóa ra là ổn vì trời nóng và mọi người thích bị ướt, nhưng vấn đề vẫn tồn tại trong đầu tôi… Làm thế nào để phát hiện người và kích hoạt phản ứng.

Tôi kể câu chuyện này bởi vì tôi muốn chỉ ra rằng nguyên tắc này có thể được sử dụng cho rất nhiều ứng dụng khác! Theo dõi khuôn mặt của bạn với một món đồ chơi chỉ là một trong số chúng. Đối với cài đặt tương tác, bạn có thể làm bất kỳ điều gì. Bạn có thể sử dụng một mô hình để phát hiện xem một khuôn mặt có đang cười hay không. Bạn có thể đếm số lượng chó trong công viên. Bạn có thể đóng rèm khi mọi người đi ngang qua. Hoặc… tạo một bộ điều khiển cho nintendo của bạn dựa trên vị trí cơ thể của bạn…. Bạn có thể tải xuống nhiều mô hình Ai khác làm bất kỳ loại công cụ nào.

Có một vài hướng dẫn về cách làm cho phép suy luận Ai hoạt động với raspberry pi. Tôi ở đây để dạy bạn cách tích hợp lỗ vào một đơn vị tự làm việc. Ngay sau khi robot của bạn khởi động, nó sẽ khởi động các chương trình cần thiết.

Quân nhu

  • Rô bốt thị sai: Tôi chọn rô bốt này vì tôi đã đặt nó xung quanh, nhưng bất kỳ rô bốt nào có thể được điều khiển bằng arduino sẽ làm được việc đó.
  • Raspberry pi: Tôi khuyên bạn nên dùng ít nhất là Raspberry pi 3B +.
  • Intel Neural Stick: Tỷ lệ suy luận tăng từ một trên giây lên 8. Bạn thực sự cần một thanh nếu muốn thực hiện Ai trong một pi raspberry.
  • Ngân hàng điện: Cách dễ dàng nhất để quản lý nguồn điện. Hoạt động với raspberry pi 3B +, bạn có thể muốn kiểm tra xem nó có hoạt động với pi 4 không.
  • Picamera: Tôi thích sử dụng picamera thay vì usb.

Bước 1: Lắp ráp Rover

Rover Assembly
Rover Assembly
Rover Assembly
Rover Assembly
Rover Assembly
Rover Assembly

Điểm của hướng dẫn chủ yếu là về phần mềm, vì vậy tôi không muốn đi quá nhiều vào chi tiết của rover. Nó hoạt động với robot này, nhưng nó có thể hoạt động thực sự với bất kỳ phần cứng nào khác. Thậm chí không cần phải dành cho người lái xe, bạn có thể sử dụng điều này cho máy ảnh cảm biến chuyển động.

  1. Tìm cho mình một phương tiện điều khiển Arduino.
  2. Hãy quấn chặt một cục sạc dự phòng vào nó.
  3. Bọc chặt một pi raspberry vào nó.
  4. Keo picamera ở một góc nhỏ về phía trên.
  5. Kết nối mọi thứ với nhau.
  6. Thì đấy!

Bước 2: Raspbian

Raspbian
Raspbian
Raspbian
Raspbian

Tôi đang sử dụng một pi raspberry, nhưng không có lý do gì để không sử dụng một linux khác… tùy thuộc vào bạn. Tôi có thể phát hành một hình ảnh plug and play để ghi thẻ sd, tôi sẽ tiếp cận nó nếu có đủ người quan tâm.

Cài đặt Raspbian: Bạn có thể cài đặt Raspbian Buster Lite. Chúng tôi sẽ không sử dụng máy tính để bàn… Chỉ có kết nối ssh Secure Shell.

Kết nối với Pi của bạn: Trước tiên, bạn có thể kết nối với pi raspberry của mình bằng kết nối Ethernet

Đặt wifi của bạn: Bây giờ bạn có thể định cấu hình kết nối không dây của mình

Bước 3: OpenVino

OpenVino
OpenVino

OpenVino là một thư viện tuyệt vời được hỗ trợ bởi Intel. Họ đã làm rất tốt trong việc biên dịch các mô hình mẫu và họ đã làm cho hầu hết các khuôn khổ ai tương thích. Bạn cần thư viện này cho Intel Neural Stick.

Cài đặt Python3: Bạn cần cài đặt python 3.

Cài đặt OpenVino: Sau khi hoàn tất, bạn sẽ thấy dòng "[setupvars.sh] OpenVINO environment initialized" mỗi khi bạn kết nối với raspberry pi.

OpenVino là một phần mở rộng của opencv. Để kiểm tra nó, bạn có thể khởi chạy python3 và nhập cv2.

gõ vào vỏ:

python3

gõ vào python:

  • nhập cv2
  • cv2._ phiên bản_

Dòng cuối cùng phải trả về '4.1.2-openvino' hoặc bất kỳ phiên bản nào của openvino. nếu nếu opencv nói rằng cài đặt của bạn không hoạt động…

Bước 4: Tải xuống mã

Tải xuống mã
Tải xuống mã

Đầu tiên, chúng tôi cài đặt git. Nhập vào vỏ:

sudo apt-get install git

Sau đó, chúng ta có thể di chuyển đến thư mục Documents và tải xuống mã:

  • cd ~ / Documents /
  • git clone

Bước 5: FollowMe (Python)

FollowMe (Python)
FollowMe (Python)

Đây là phần bạn muốn chơi cùng. Thực hiện nếu theo bạn! Làm cho nó sợ bạn! Theo dõi con chó của bạn! Làm cho nó nhận ra các biểu cảm khuôn mặt !! Harase con mèo của bạn !!! Bất cứ thứ gì bạn muốn.

Bạn sẽ tìm thấy bốn thư mục chính: Arduino, Deployment, Player và FollowMe:

Arduino: Tìm hiểu thêm về điều đó trong phần tiếp theo

Triển khai: Đây là nơi tôi đặt giao diện người dùng. Ngay bây giờ, tôi đã viết mã một nút khởi động / dừng đơn giản và một trình xem camera nhỏ với khả năng điều khiển rất thú vị.

Trình phát: Có nghĩa là được sử dụng trong máy tính để bàn của bạn. Để xem lại đầu ra của bot!

FollowMe: Mô-đun thực sự thú vị

Tôi sẽ đưa thêm chi tiết trên github, vì vậy chỉ có một nơi để cập nhật. Đây là nơi dành cho mã

Bước 6: Tải xuống mô hình

Các mô hình để suy luận không được bao gồm trong mã vì chúng khá lớn. Nhưng bạn có thể tìm thấy rất nhiều ví dụ bằng cách sử dụng OpenVino model Zoo

Bạn có thể sử dụng trình tải xuống mô hình hoặc truy cập trực tiếp vào liên kết này. Trong trường hợp của tôi, tôi không thể sử dụng trình tải xuống mô hình từ cài đặt raspberry pi của mình…

Sau đó, sao chép mô hình vào một thư mục có tên Mô hình với:

  • cd ~ / Documents / FollowMe
  • mkdir Mô hình
  • cd Mô hình
  • wget
  • wget

Bạn luôn cần.xml và.bin.

Bạn có thể tải xuống bất kỳ mô hình nào bạn muốn… Nhưng bạn sẽ phải thay đổi mã. Chúc vui vẻ!

Bước 7: Arduino

Arduino
Arduino

Chúng ta phải tải xuống mã ở bước trước. Mã cho arduino có trong đó!

Mã có nghĩa là để điều khiển hai servos liên tục, nếu bạn chọn một cấu hình khác, bạn phải sửa đổi mã.

Về cơ bản, nó thực hiện hai điều. Nó giao tiếp với máy tính và kích hoạt các servos ở tốc độ đã chọn.

Tôi có thể cho chúng tôi đầu ra của pi raspberry trực tiếp để điều khiển động cơ… nhưng arduinos hoạt động tốt hơn (Chúng có bộ tạo tần số thực). Ngoài ra, tôi muốn giảm tải pi raspberry càng nhiều càng tốt để suy luận nhanh hơn.

Bước 8: GUI

GUI
GUI
GUI
GUI

Không có gì lạ mắt… Tuy nhiên. Tôi có thể thêm một số công cụ khác như chế độ xem trực tiếp hoặc điều khiển chuyển động. Nhưng trong khi chờ đợi, bắt đầu và dừng lại đơn giản sẽ làm được điều đó.

Nếu bạn muốn kiểm tra nó, bạn phải khởi chạy nó từ thư mục FollowMe Level và sau đó gọi nó từ python3:

  • cd ~ / Documents / FollowMe
  • Triển khai python3 / FollowMe.py

Sau đó, bạn có thể truy cập giao diện trong trình duyệt của mình bằng cách nhập:

192.168.0.113:8000

tất nhiên là với đúng địa chỉ IP.

Ngoài ra còn có một trình xem video với các điều khiển… nhưng không có suy luận hoạt động

Triển khai python3 / StreamVideo.py

Bước 9: Dịch vụ

Đây là điều khiến Rover tự hoạt động. Dịch vụ là một chương trình chạy trong nền của máy tính mà không có người dùng. Hãy chắc chắn rằng TẤT CẢ CÁC BÁC SĨ CỦA BẠN là tuyệt đối và bạn có quyền chính xác nếu bạn sử dụng bất kỳ tệp nào và dịch vụ sẽ hoạt động tốt.

Để chạy tập lệnh python dưới dạng dịch vụ, bạn cần tham chiếu tập lệnh trong tệp dịch vụ. Tệp dịch vụ có trong mã được tải xuống từ git trong thư mục Triển khai. Tên là FollowMe.service.

Để sao chép nó, hãy nhập dòng lệnh sau vào shell:

sudo cp ~ / Documents / FollowMe / Deployment / FollowMe.service / etc / systemd / system /

Lần đầu tiên bạn sao chép tệp bạn cần cập nhật systemctl… hoặc khởi động lại:

sudo systemctl daemon-tải lại

Và để bắt đầu:

sudo systemctl start FollowMe

Bạn cũng có thể sử dụng các lệnh dừng, bật và tắt. Hai điều cuối cùng dành cho sự thay đổi trạng thái liên tục.

Giải thích nhỏ….

Openvino cần một số đường dẫn bổ sung trong các biến hệ thống để nó hoạt động. Thật không may, cài đặt bình thường sẽ không hoạt động như một dịch vụ. Vì vậy, bạn cần tệp này để thiết lập các biến.

Lưu ý rằng cài đặt của tôi là dành cho python 3.7 do đó có một biến mà bạn có thể cần phải điều chỉnh… Chúc may mắn!

Tệp này tham chiếu đến tập lệnh python trong đường dẫn tuyệt đối:

/home/pi/Documents/FollowMe/Deployment/FollowMe.py

Bước 10: Thats It! Chúc vui vẻ

Bình luận? luôn được chào đón

Đề xuất: