1. Trang chủ
  2. » Luận Văn - Báo Cáo

ĐỒ án CHUYÊN NGÀNH

57 13 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 57
Dung lượng 37,35 MB

Nội dung

nay, CV đang được sử dụng khá phổ biến, rộng rãi và không thể phủ nhận rằng “Phát hiệnđối tượng” Object Detection là một trong những ứng dụng tuyệt vời và là khía cạnh sâusắc của CV.• Ca

Trang 1

PHÁT HIỆN ĐỐI TƯỢNG

SỬ DỤNG THỊ GIÁC MÁY, CÓ CODE

Trang 2

MỤC LỤC

Trang 3

DANH MỤC HÌNH ẢNH

Trang 4

DANH MỤC TỪ VIẾT TẮT

CV Computer Vision

AI Artificial Intelligence

IDE Integrated Development Environment

OpenCV Open Computer Vision

CPU Central Processing Unit

SSD Single Shot MultiBox Detector

R-CNN Region-based Convolutional Neural Networks)

VGG Visual Geometry Group

IP Internet Protocol

Conv Convolution

PC Personal Computer

LAN Local Area Network

HDMI High-Definition Multimedia Interface

RAM Random Access Memory

GPIO General Purpose Input Output

Trang 5

nay, CV đang được sử dụng khá phổ biến, rộng rãi và không thể phủ nhận rằng “Phát hiệnđối tượng” (Object Detection) là một trong những ứng dụng tuyệt vời và là khía cạnh sâusắc của CV.

• Camera Raspberry Pi V2 IMX219 8MP

• Ngôn ngữ Python và phần mềm PyCharm

• Mô hình của Raspberry Pi 4 với Camera Raspberry Pi V2 và kết nối thông qua phần mềm VNC Viewer/Remote Desktop Connection

Trang 6

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2.1 Ngôn ngữ lập trình Python

2.1.1 Sơ lược về Python

Ngôn ngữ lập trình Python là ngôn ngữ lập trình được sử dụng trong đề tài, là ngônngữ được nhiều người sử dụng nhất hiện nay, nhất là những người mới bắt đầu học lậptrình Python là ngôn ngữ lập trình được tạo ra bởi Guido Van Rossum, được bắt đầu thiết

kế vào cuối những năm 1980 và cho ra mắt phiên bản đầu tiên vào năm 1994, đây là mộtngôn ngữ lập trình cực kỳ phổ biến được sử dụng để phát triển website và thiết kế nhiềuứng dụng, dự án khác nhau

Được thiết kế với ưu điểm mạnh là dễ đọc, dễ học và dễ nhớ, Python được sử dụngtrong việc lập trình từ những ứng dụng đơn giản nhất cho đến những thuật toán nâng caophức tạp Python là ngôn ngữ lập trình hướng đối tượng đa năng Ngoài ra ngôn ngữ nàycũng sở hữu cấu trúc dữ liệu cấp cao mạnh mẽ và hệ thống thư viện lớn Python sử dụng

cơ chế cấp phát bộ nhớ tự động với cú pháp đơn giản và rõ ràng, giúp người học dễ tiếpcận và làm quen, kể cả đối với những người mới bắt đầu học lập trình

Trang 7

2.1.2 Các tính năng của Python

- Ngôn ngữ lập trình đơn giản, dễ học:

Cú pháp của ngôn ngữ lập trình Python rất đơn giản và dễ học hơn so với các ngônngữ lập trình khác như C#, Java, C++, Chính vì vậy mà ngày càng nhiều lập trình viênyêu thích với ngôn ngữ này hơn Từ đó giúp các lập trình viên tập trung nhiều thời gianhơn vào những giải pháp hơn là cú pháp khi phát triển phần mềm bằng ngôn ngữ này

- Miễn phí, mã nguồn mở:

Có thể tự do sử dụng và phân phối Python, thậm chí là dùng nó cho mục đíchthương mại Vì là mã nguồn mở, bạn không những có thể sử dụng các phần mềm, chươngtrình được viết trong Python mà còn có thể thay đổi mã nguồn của nó Python có mộtcộng đồng rộng lớn, không ngừng cải thiện nó mỗi lần cập nhật

- Khả năng di chuyển:

Các chương trình Python có thể di chuyển từ nền tảng này sang nền tảng khác vàchạy nó mà không có bất kỳ thay đổi nào Nó chạy liền mạch trên hầu hết tất cả các nềntảng như Windows, macOS, Linux

- Khả năng mở rộng và có thể nhúng:

Đối với những ứng dụng được viết bằng ngôn ngữ lập trình Python nhưng lại đòi hỏi

sự phức tạp thì bạn có thể kết hợp các phần code của ngôn ngữ lập trình C, C++ vào phầncode của Python Như vậy sẽ giúp ứng dụng được tích hợp nhiều tính năng tốt hơn Đây

là một trong những tính năng nổi bật của Python mà các ngôn ngữ lập trình khác khôngthể làm được

- Ngôn ngữ thông dịch cấp cao:

Khi lập trình ứng dụng bằng ngôn ngữ Python bạn không cần phải quản lý bộ nhớhay dọn dẹp dữ liệu vô nghĩa,… Ngược lại, khi chạy code Python lên thì nó sẽ tự độngchuyển đổi sang ngôn ngữ mà máy tính có thể hiểu được Đây cũng là tính năng nổi bậtcủa Python mà ngôn ngữ lập trình như C hoặc C++ không làm được

Trang 8

- Thư viện tiêu chuẩn lớn:

Python có một lượng thư viện tiêu chuẩn lớn có tác dụng giải quyết những tác vụphổ biến, giúp cho việc lập trình của các lập trình viên trở nên đơn giản và dễ dàng hơn.Thư viện tiêu chuẩn này đã được kiểm tra kỹ lưỡng và được sử dụng bởi hàng trăm người.Cho nên, bạn hoàn toàn có thể yên tâm rằng nó sẽ không gây ảnh hưởng đến phần codecũng như ứng dụng của bạn

- Hướng đối tượng:

Tất cả mọi thứ trong ngôn ngữ lập trình Python đều là hướng đối tượng, giúp bạngiải quyết được những vấn đề phức tạp một cách trực quan nhất Vì vậy, trong quá trình

sử dụng Python để lập trình ứng dụng bạn có thể chia những vấn đề phức tạp thành nhữngtập nhỏ hơn bằng các tạo ra các đối tượng

2.2 Phần mềm Pycharm

Pycharm là một môi trường phát triển tích hợp (IDE - Integrated DevelopmentEnvironment) được sử dụng trong lập trình máy tính, đặc biệt là cho ngôn ngữ lập trìnhPython Nó được phát triển bởi Công ty JetBrains của Séc Pycharm là công cụ hỗ trợ tốttrong việc cung cấp phân tích mã, trình gỡ rối đồ họa, trình kiểm tra đơn vị tích hợp, tíchhợp với hệ thống kiểm soát phiên bản (VCSes) và hỗ trợ phát triển web với Django cũngnhư khoa học dữ liệu với Anaconda

2.3 Thư viện OpenCV

OpenCV (Open Computer Vision) là một thư viện mã nguồn mở hàng đầu cho xử lý

về thị giác máy tính, machine learning, xử lý ảnh OpenCV đươc viết bằng C/C++, vì vậy

có tốc độ tính toán rất nhanh, có thể sử dụng với các ứng dụng liên quan đến thời gianthực và cho phép cải thiện tốc độ của CPU khi thực hiện các hoạt động real-time Nó còncung cấp một số lượng lớn các mã xử lý phục vụ cho quy trình của thị giác máy tính haycác learning machine khác

Trang 9

OpenCV sở hữu giao diện thiên thiện với mọi loại ngôn ngữ lập trình, ví dụ như C++, C, Python hay Java… Ngoài ra, nó cũng dễ dàng tương thích với các hệ điều hành khácnhau, bao gồm từ Windows, Linux, Mac OS, iOS cho đến cả Android.

2.4 Thuật toán SSD - Single Shot MultiBox Detector

Ý nghĩa của tên thuật toán:

- Single Shot: Có nghĩa là việc định vị và phân loại đối tượng được thực hiệntrên 1 phase duy nhất từ đầu đến cuối

- MultiBox: Tên của kĩ thuật về bounding box được sử dụng bởi Szegedy et al

- Detector: Mạng này có khả năng nhận biết và phân loại được đối tượng

2.4.1 Giới thiệu về SSD

SSD được thiết kế để phát hiện đối tượng trong thời gian thực SSD tăng tốc quátrình bằng cách loại bỏ sự cần thiết của mạng đề xuất khu vực Để giải quyết về vấn đề độchính xác giảm, SSD áp dụng một vài cải tiến bao gồm các feature map đa kích thước và

sử dụng các hộp mặc định Những cải tiến này cho phép SSD tiến gần được với độ chínhxác của Faster R-CNN nhưng lại có thể sử dụng hình ảnh có độ phân giải thấp hơn, giúpđẩy tốc độ cao hơn

Mô hình SSD được chia làm 2 giai đoạn:

- Giai đoạn 1: Trích xuất feature map (dựa vào mạng cơ sở VGG16) để tănghiệu quả trong việc phát hiện => thì nên sử dụng ResNet, InceptionNet, hoặcMobileNet

- Giai đoạn 2: Áp dụng các bộ lọc tích chập để có thể phát hiện được các đốitượng

2.4.2 Giai đoạn 1: Sử dụng mạng cơ sở VGG16 để trích xuất feature map

SSD sử dụng VGG16 làm mạng cơ sở để trích xuất feature map:

- Đầu vào: image kích thước (300 * 300)

- Sau đó sử dụng VGG16 làm mạng cơ sở để trích xuất bản đồ tính năng Lưu ý,đối với VGG16, chúng ta sẽ sử dụng lớp Conv4_3 là một trong những lớp dự báo

Trang 10

đối tượng của mạng, những lớp còn lại chỉ có tác dụng trích xuất các đặc trưngcủa hình ảnh đầu vào.

Mỗi dự đoán này bao gồm:

- 1 bounding box

- 21 score biểu thị cho độ tin cậy của mỗi lớp (bao gồm cả lớp background)

- Score: là xác suất xuất hiện đối tượng được dự đoán có trong bounding box, 20score là 20 xác suất phát hiện 20 loại đối tượng trong thực tế, 1 score còn lại làxác suất dự đoán trong bounding box là class background

2.4.3 Giai đoạn 2: Sử dụng trình dự đoán tích chập (Convolution preditors) cho phát hiện đối tượng:

Sau khi trích xuất feature maps dựa vào kiến trúc của mạng cơ sở (basenetwork), mô hình SSD sẽ tiếp tục tính toán cả hai giá trị: đối với từng location vàscore cho các class bằng việc sử dụng các bộ lọc tích chập nhỏ Sau khi extractfeature maps, SSD sử dụng một kernel 3 × 3 trên mỗi ô để tạo ra dự đoán Mỗi đầu

ra của bộ lọc là 25 channels: 21 scores đối với mỗi lớp + 1 bbx

Trang 11

Áp dụng bộ lọc 3 × 3 để tạo ra các dự đoán đối với mỗi location và các class.Quá trình sử dụng các trình phát hiện tích chập đơn giản cũng chỉ là quá trình dựđoán ra các bbx dự đoán (với mỗi vị trí pixel sẽ là 4 bbx dự đoán giống nhưVGG16 đang làm) có điều nó khác bởi vì nó sử dụng các feature map có kíchthước khác nhau.

Đối với các feature maps có độ phân giải thấp ở bên phải sẽ có khả năng pháthiện được đối tượng có kích thước khác nhau Do đó, SSD thêm 6 lớp Convolutionlayer phụ trợ vào sau VGG16, 5 trong số chúng sẽ được thêm vào để detect object

Và trong 3 trong số 6 lớp này sẽ đưa ra dự đoán là 6 (bbx + score) thay vì 4 (bbx +score) Tổng cộng, SSD đưa ra 8732 dự đoán với việc sử dụng 6 layers

Trang 12

CHƯƠNG 3 THIẾT KẾ VÀ THI CÔNG 3.1 Sơ đồ khối của hệ thống

Hình 3-1: Sơ đồ khối của hệ thống.

Khối nguồn

CameraRaspberry Pi 4

Laptop

Trang 13

3.2 Tổng quan về Raspberry Pi 4 Model B

Các tính năng của Raspberry Pi 4 bao gồm bộ vi xử lý lõi tứ 64-bit hiệu suất cao, hỗtrợ hiển thị kép ở độ phân giải lên đến 4K thông qua một cặp cổng micro-HDMI, giải mãvideo phần cứng lên đến 4Kp60, RAM lên đến 8GB, kép LAN không dây băng tần 2.4 /5.0 GHz, Bluetooth 5.0, Gigabit Ethernet, USB 3.0 và khả năng PoE (thông qua tiện ích

bổ sung PoE HAT riêng biệt)

Mạng LAN không dây băng tần kép và Bluetooth có chứng nhận tuân thủ theo đun, cho phép bo mạch được thiết kế thành các sản phẩm cuối với việc kiểm tra tuân thủgiảm đáng kể, cải thiện cả chi phí và thời gian đưa ra thị trường

Trang 15

Hình 3-4: Sơ đồ các chân GPIO của Raspberry Pi 4 Model B.

Trong 40 chân GPIO bao gồm:

• 26 chân GPIO Khi thiết lập là input, GPIO có thể được sử dụng như chân interupt, GPIO 14 & 15 được thiết lập sẵn là chân input

• 1UART, 1 I2C, 2 SPI, 1 PWM (GPIO 4)

• 2 chân nguồn 5V, 2 chân nguồn 3.3V, 8 chân GND

• 2 chân ID EEPROM

- Video và âm thanh:

• 2 cổng micro HDMI (hỗ trợ lên đến 4Kp60)

• Cổng hiển thị MIPI DSI 2 làn

• Cổng camera MIPI CSI 2 làn

• Cổng video tổng hợp và âm thanh stereo 4 cực

- Đa phương tiện:

• H.265 (giải mã 4Kp60)

• H.264 (giải mã 1080p60, mã hóa 1080p30)

• Đồ họa OpenGL ES, 3.0

- Hỗ trợ thẻ SD:

Khe cắm thẻ nhớ Micro SD để tải hệ điều hành và lưu trữ dữ liệu

- Nguồn điện đầu vào:

• 5V DC qua đầu nối USB-C (tối thiểu 3A)

• 5V DC qua đầu cắm GPIO (tối thiểu 3A)

• Bật nguồn qua Ethernet (PoE) (yêu cầu PoE HAT riêng biệt)

Trang 16

Hình 3-5: Thông số kỹ thuật vật lý của Raspberry Pi 4 Model B.

- Chỉ nên kết nối với nguồn điện bên ngoài được đánh giá ở mức 5V/ 3A DC hoặctối thiểu 5.1V/3A DC Bất kỳ nguồn điện bên ngoài nào được sử dụng vớiRaspberry Pi 4 Model B đều phải tuân thủ các quy định và tiêu chuẩn liên quan ápdụng tại quốc gia dự kiến sử dụng

- Phải được vận hành trong môi trường thông gió tốt và nếu sử dụng bên trong hộpthì không được đậy nắp

- Nên được đặt trên bề mặt ổn định, phẳng, không dẫn điện đang sử dụng và khôngđược tiếp xúc với các vật dụng dẫn điện

- Kết nối của các thiết bị không tương thích với kết nối GPIO có thể ảnh hưởng đếnviệc tuân thủ và dẫn đến hư hỏng thiết bị và làm mất hiệu lực bảo hành

- Tất cả các thiết bị ngoại vi được sử dụng với sản phẩm này phải tuân theo các tiêuchuẩn liên quan của quốc gia sử dụng và được đánh dấu phù hợp để đảm bảo đápứng các yêu cầu về an toàn và hiệu suất Các bài viết này bao gồm nhưng khônggiới hạn bàn phím, màn hình và chuột khi được sử dụng cùng với Raspberry Pi

Trang 17

- Khi các thiết bị ngoại vi được kết nối không bao gồm cáp hoặc đầu nối, cáp hoặcđầu nối phải có cách điện và hoạt động thích hợp để đáp ứng các yêu cầu về tínhnăng và an toàn liên quan.

- Không tiếp xúc với nước, hơi ẩm hoặc đặt trên bề mặt dẫn điện khi đang hoạtđộng

- Không để nó tiếp xúc với nhiệt từ bất kỳ nguồn nào; Raspberry Pi 4 Model B đượcthiết kế để hoạt động đáng tin cậy ở nhiệt độ phòng bình thường

- Cẩn thận trong khi xử lý để tránh hư hỏng về cơ hoặc điện đối với bảng mạch in vàcác đầu nối

- Tránh xử lý bảng mạch in trong khi được cấp nguồn và chỉ xử lý các cạnh để giảmthiểu nguy cơ hư hỏng do phóng điện

3.3 Nguồn cấp cho Raspberry

Nguồn có công tắc cho máy tính nhúng Power Supply 5.1V 3A USB-C tích hợpcông tắc nguồn trên dây cắm tiện dụng được sử dụng để cấp nguồn cho các board mạchmáy tính nhúng, máy tính Mini sử dụng cổng USB-C có tốc độ xử lý và hiệu suất ngàycàng nâng cao hiện nay như: Raspberry Pi 4 Model B, Nguồn có chất lượng linh kiệntốt, độ bền cao

Hình 3-6: Nguồn có công tắc cho Raspberry Pi 4 Model B.

Thông số kỹ thuật:

Trang 18

- Nguồn điện đầu vào: 100~240VAC 50/60Hz.

- Nguồn điện đầu ra: 5.1VDC

- Dòng đầu ra tối đa: 3A

- Công suất: 15.3W

- Chuẩn đầu ra: Cáp USB-C dài 1m

- Tích hợp công tắc nguồn trên dây tiện dụng

3.4 Thẻ nhớ SanDisk MicroSDHC Class 10 UHS-I 32GB

Hình 3-7: Thẻ nhớ SanDisk MicroSDHC Classs 10 UHS-I 32GB.

Thẻ nhớ SanDisk MicroSDHC Class 10 UHS-I 32GB là loại có tốc độ đọc ghi thuộcloại cao trên thị trường hiện, thẻ có chất lượng rất tốt, độ bền và độ ổn định cao, thích hợp

để chạy với máy tính nhúng: Raspberry Pi, Jetson Nano, Beaglebone, và các thiết bị cầntốc độ truy xuất cao

3.5 Camera Raspberry Pi V2 IMX219 8MP

Trang 19

Hình 3-8: Camera Raspberry Pi V2 IMX219 8MP.

Camera Raspberry Pi V2 IMX219 8MP là phiên bản Camera Module dành choRaspberry Pi mới nhất sử dụng cảm biến ảnh IMX219 8-megapixel từ Sony thay cho cảmbiến cũ là OV5647 Với cảm biến IMX219 8-megapixel từ Sony, Camera Module choRaspberry Pi đã có được sự nâng cấp vượt trội về cả chất lượng hình ảnh, video cũng như

độ bền

Camera Raspberry Pi V2 IMX219 8MP có thể sử dụng với Raspberry Pi để chụphình, quay phim với chất lượng HD 1080p30, 720p60 hoặc VGA90, cách sử dụng cũngnhư lập trình với Camera Module trên Raspberry Pi cũng rất dễ dàng, chỉ cần cắm vàocổng Camera trên Raspberry Pi và qua 1 vài bước thiết lập là có thể dùng được

Camera Raspberry Pi V2 IMX219 8MP có thể điều khển thông qua MMAL và V4LAPIs, có rất nhiều bộ thư viện được cộng đồng Raspberry Pi phát triển trên Python giúpcho việc tìm hiểu và sử dụng trở nên dễ dàng hơn rất nhiều

Camera Raspberry Pi V2 IMX219 8MP có thể sử dụng được với tất cả các phiên bảnRaspberry Pi (Raspberry Pi Zero cần thêm cáp chuyển) và Jetson Nano

Thông số kỹ thuật:

- Camera Raspberry Pi V2 8MP dùng cho máy tính nhúng Raspberry Pi

- Cảm biến IMX219 từ Sony

- Số điểm ảnh: 8MP

- Lens: Fixed focus

Trang 20

- Camera specifications:

• CCD size : 1/4inch

• Aperture (F) : 2.0

• Focal Length : 3.04mm

• Angle of View (diagonal) : 62.2 degree

- Camera Resolution: 3280 x 2464 pixel stills

- Video Resolution: HD 1080p30, 720p60 and 640x480p90 video

- Thẻ nhở SD có dung lượng 32GB Class10, tối thiểu là 16GB

- Máy tính cá nhân để điều khiển từ xa

- Nguồn cấp cho Raspberry: 5V, 3A DC

- Dây mạng (nếu sử dụng màn hình rời cho Raspberry)

Bước 1: Tải bản cài đặt cho máy tính về và giải nén.

Vào trang www.raspberrypi.org và tải phiên bản mới nhất là hệ điều hành Raspberry

Pi OS Sau đó giải nén và cài đặt phần mềm Raspberry Pi Imager v1.6.2

Trang 21

Hình 3-9: Trang web download hệ điều hành cho Raspberry Pi 4 Model B.

Hình 3-10: Phần mềm Raspberry Pi Imager v1.6.2.

Trang 22

Bước 2: Format Card và ghi hệ điều hành vào thẻ.

Cắm thẻ nhớ SD vào đầu lọc thẻ nhớ và cắm vào cổng USB của Laptop

Mở phần mềm Raspberry Pi Imager v1.6.2 vừa được cài đặt ở bước 1 và bắt đầuFormat thẻ SD Chọn Erase ở phần Operating System và chọn thẻ SD ở phần Storage vànhấn Write để bắt đầu Format thẻ

Hình 3-11: Format cho thẻ nhớ SD Card.

Sau khi Format thẻ xong thì sẽ bắt đầu cài hệ điều hành vào thẻ Chọn Raspberry Pi

OS (32-bit) ở phần Operating System và chọn thẻ SD ở phần Storage Nhấn tổ hợp phímCtrl+Shift+X để Enable SSH và đăng nhập Wifi Nhấn Write để bắt đầu ghi hệ điều hành

Hình 3-12: Thiết lập SSH và Wifi cho Raspberry Pi 4 Model B.

Trang 23

Hình 3-13: Ghi hệ điều hành vào thẻ nhớ SD.

Bước 3: Gắn thẻ nhớ và camera vào Raspberry.

Sau khi quá trình cài hệ điều hành đã xong thì gắn thẻ nhớ vào khe cắm thẻ củaRaspberry Lưu ý: Nên gắn thẻ và camera vào trước rồi hãy bật nguồn và không rút thẻnhớ hoặc camera trong quá trình đang sử dụng để tránh thiết bị bị hư hỏng

Hình 3-14: Gắn thẻ nhớ SD và Camera vào Raspberry Pi 4.

Trang 24

3.6.3 Kết nối Raspberry Pi 4 từ xa bằng Remote Desktop Connection

Bước 1: Tải phần mềm Advanced IP Scanner để dò địa chỉ IP của Raspberry.

Mở phần mềm và nhấn Scan để bắt đầu dò IP

Trước khi bật nguồn Raspberry Pi

Sau khi bật nguồn Raspberry Pi Hình 3-15: Quá trình dò IP của Raspberry Pi 4 bằng phần mềm Advanced IP Scanner.

Lưu ý:

- Trước khi cắm nguồn vào Raspberry thì nên dò trước để xem địa chỉ IP của cácthiết bị xung quanh và chụp ảnh lại, sau đó hãy cắm nguồn cho Raspberry và

Trang 25

dò địa chỉ IP So sánh trong hai lần dò thì sẽ phát hiện có thêm một địa chỉ mớitrong lần dò lúc sau, và đó là địa chỉ IP của Raspberry.

VD: Trong bài này, trước khi bật nguồn của Raspberry Pi thì ta dò được 4 địachỉ IP kết nối với wifi Sau khi bật nguồn lên và dò lại thì ta thấy có thêm 1 địachỉ IP mới, đó là địa chỉ IP của Raspberry (ta có thể đổi tên của địa chỉ IP đểcho dễ nhận biết)

- Hoặc có thể tự cài đặt địa chỉ IP bằng cách vào thư mục Boot của thẻ nhớ SD 

mở file cmdline.text và thêm địa chỉ IP vào cuối dòng chữ và lưu lại

VD: “ip=192.168.137.2”

Bước 2: Tải phần mềm Putty và cài đặt.

Mở phần mềm Putty và nhập địa chỉ của Raspberry Pi, sau đó nhấn Open

Hình 3-16: Phần mềm Putty.

Bước 3: Cài đặt kết nối với Remote Desktop Connection.

Sau khi nhấn Open, ta sẽ truy cập được vào màn hình command line của Raspberry Pi,nhập username và password (mặc định là pi và raspberry)

Trang 26

Hình 3-17: Màn hình Terminal của Raspberry Pi khi đăng nhập.

Sau đó cài đặt xrdp bằng lệnh: sudo apt-get install xrdp

Sau khi cài đặt xong thì nhập lệnh: sudo reboot để khởi động lại Raspberry.

Bước 4: Kết nối với với Remote Desktop Connection.

Sau khi cài đặt xong, chúng ta mở Remote Desktop Connection và nhập địa chỉ IP củaRaspberry và kết nối

Hình 3-18: Kết nối với phần mềm Remote Desktop Connection.

Nhập địa username và passwword

Trang 27

Sau khi kết nối thành công, màn hình Raspberry hiện lên và có thể làm việc bìnhthường.

Hình 3-19: Màn hình làm việc của Raspberry Pi 4.

3.7 Cài đặt thư viện cho Raspberry Pi 4

$ sudo apt-get purge wolfram-engine

$ sudo apt-get purge libreoffice*

Trang 28

$ sudo apt-get clean

$ sudo apt-get autoremove

- Cập nhật các gói hiện có bằng cách nhập lần lượt 2 lệnh sau:

$ sudo apt-get update

$ sudo apt-get upgrade

- Cài đặt công cụ phát triển

$ sudo apt-get install build-essential cmake pkg-config

- Cài đặt một số gói I/O hình ảnh cho phép tải các định dạng hình ảnh khác nhau như JPEG, PNG, TIFF…

$ sudo apt-get install libjpeg-dev libtiff5-dev libjasper-dev libpng-dev

- Cài đặt gói video I/O cho phép tải các định dạng video khác nhau

$ sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev

$ sudo apt-get install libxvidcore-dev libx264-dev

- Cài đặt thư viện phát triển GTK (công cụ tạo giao diện đồ họa) để biên soạn module phụ của OpenCV, cho phép hiển thị hình ảnh trên màn hình và xây dựng các giao diện GUI đơn giản

$ sudo apt-get install libfontconfig1-dev libcairo2-dev

$ sudo apt-get install libgdk-pixbuf2.0-dev libpango1.0-dev

$ sudo apt-get install libgtk2.0-dev libgtk-3-dev

- Cài đặt thư viện HDF5 datasets và Qt GUIs

$ sudo apt-get install libhdf5-dev libhdf5-serial-dev libhdf5-103

$ sudo apt-get install libqtgui4 libqtwebkit4 libqt4-test python3-pyqt5

- Cài đặt python 3 và pip

$ sudo apt-get install python3-dev

$ wget https://bootstrap.pypa.io/get-pip.py

$ sudo python get-pip.py

$ sudo python3 get-pip.py

$ sudo rm -rf ~/.cache/pip

Ngày đăng: 14/05/2022, 20:44

HÌNH ẢNH LIÊN QUAN

Hình 3-1: Sơ đồ khối của hệ thống. - ĐỒ án CHUYÊN NGÀNH
Hình 3 1: Sơ đồ khối của hệ thống (Trang 12)
Hình 3-3: Đặc điểm kỹ thuật của RaspberryP i4 Model B. - ĐỒ án CHUYÊN NGÀNH
Hình 3 3: Đặc điểm kỹ thuật của RaspberryP i4 Model B (Trang 14)
Hình 3-5: Thông số kỹ thuật vật lý của RaspberryP i4 Model B. - ĐỒ án CHUYÊN NGÀNH
Hình 3 5: Thông số kỹ thuật vật lý của RaspberryP i4 Model B (Trang 16)
Hình 3-10: Phần mềm RaspberryPi Imager v1.6.2. - ĐỒ án CHUYÊN NGÀNH
Hình 3 10: Phần mềm RaspberryPi Imager v1.6.2 (Trang 21)
Hình 3-11: Format cho thẻ nhớ SD Card. - ĐỒ án CHUYÊN NGÀNH
Hình 3 11: Format cho thẻ nhớ SD Card (Trang 22)
Hình 3-12: Thiết lập SSH và Wifi cho RaspberryP i4 Model B. - ĐỒ án CHUYÊN NGÀNH
Hình 3 12: Thiết lập SSH và Wifi cho RaspberryP i4 Model B (Trang 22)
Hình 3-14: Gắn thẻ nhớ SD và Camera vào RaspberryPi 4. - ĐỒ án CHUYÊN NGÀNH
Hình 3 14: Gắn thẻ nhớ SD và Camera vào RaspberryPi 4 (Trang 23)
Hình 3-13: Ghi hệ điều hành vào thẻ nhớ SD. Bước 3: Gắn thẻ nhớ và camera vào Raspberry. - ĐỒ án CHUYÊN NGÀNH
Hình 3 13: Ghi hệ điều hành vào thẻ nhớ SD. Bước 3: Gắn thẻ nhớ và camera vào Raspberry (Trang 23)
Hình 3-15: Quá trình dò IP của RaspberryP i4 bằng phần mềm Advanced IP Scanner. - ĐỒ án CHUYÊN NGÀNH
Hình 3 15: Quá trình dò IP của RaspberryP i4 bằng phần mềm Advanced IP Scanner (Trang 24)
Hình 3-16: Phần mềm Putty. Bước 3: Cài đặt kết nối với Remote Desktop Connection. - ĐỒ án CHUYÊN NGÀNH
Hình 3 16: Phần mềm Putty. Bước 3: Cài đặt kết nối với Remote Desktop Connection (Trang 25)
Hình 3-17: Màn hình Terminal của RaspberryPi khi đăng nhập. - ĐỒ án CHUYÊN NGÀNH
Hình 3 17: Màn hình Terminal của RaspberryPi khi đăng nhập (Trang 26)
Hình 3-20: Download phần mềm PyCharm trên RaspberryP i4 Model B. - ĐỒ án CHUYÊN NGÀNH
Hình 3 20: Download phần mềm PyCharm trên RaspberryP i4 Model B (Trang 30)
Hình 3-21: Thư mục PyCharm sau khi giải nén. - ĐỒ án CHUYÊN NGÀNH
Hình 3 21: Thư mục PyCharm sau khi giải nén (Trang 31)
Hình 3-22: Cài công cụ phát triển JDK. - ĐỒ án CHUYÊN NGÀNH
Hình 3 22: Cài công cụ phát triển JDK (Trang 32)
Hình 3-23: Tiến hành cài đặt PyCharm. - ĐỒ án CHUYÊN NGÀNH
Hình 3 23: Tiến hành cài đặt PyCharm (Trang 33)
3.9 Mô hình của hệ thống - ĐỒ án CHUYÊN NGÀNH
3.9 Mô hình của hệ thống (Trang 34)
Hình 3-24: Thêm shortcut cho PyCharm trên Main Menu Editor. - ĐỒ án CHUYÊN NGÀNH
Hình 3 24: Thêm shortcut cho PyCharm trên Main Menu Editor (Trang 34)
Màn hình Laptop - ĐỒ án CHUYÊN NGÀNH
n hình Laptop (Trang 38)
Hình 5-2: Kết nối với Raspberry bằng phần mềm Remote Desktop Connection. - ĐỒ án CHUYÊN NGÀNH
Hình 5 2: Kết nối với Raspberry bằng phần mềm Remote Desktop Connection (Trang 39)
Hình 5-1: Cấp nguồn cho RaspberryP i4 Model B. - ĐỒ án CHUYÊN NGÀNH
Hình 5 1: Cấp nguồn cho RaspberryP i4 Model B (Trang 39)
Hình 5-3: Màn hình code Python trên PyCharm. - ĐỒ án CHUYÊN NGÀNH
Hình 5 3: Màn hình code Python trên PyCharm (Trang 40)
Khi nhận dạng chiếc ly (CUP) thì mô hình sẽ vẽ các bbx xung quanh để dự đoán, sau đó đối tượng sẽ được vẽ lại 1 bbx với độ chính xác lớn hơn. - ĐỒ án CHUYÊN NGÀNH
hi nhận dạng chiếc ly (CUP) thì mô hình sẽ vẽ các bbx xung quanh để dự đoán, sau đó đối tượng sẽ được vẽ lại 1 bbx với độ chính xác lớn hơn (Trang 42)
• Nhận dạn g2 đối tượng tron g1 khung hình: - ĐỒ án CHUYÊN NGÀNH
h ận dạn g2 đối tượng tron g1 khung hình: (Trang 43)
Hình 5-5: Hình ảnh thực nghiệm về nhận dạn g2 đối tượng tron g1 khung hình. - ĐỒ án CHUYÊN NGÀNH
Hình 5 5: Hình ảnh thực nghiệm về nhận dạn g2 đối tượng tron g1 khung hình (Trang 44)
• Nhận dạng nhiều đối tượng tron g1 khung hình: - ĐỒ án CHUYÊN NGÀNH
h ận dạng nhiều đối tượng tron g1 khung hình: (Trang 45)
Hình 5-6: Hình ảnh thực nghiệm về nhận dạng nhiều đối tượng tron g1 khung hình. - ĐỒ án CHUYÊN NGÀNH
Hình 5 6: Hình ảnh thực nghiệm về nhận dạng nhiều đối tượng tron g1 khung hình (Trang 45)
Hình 5-7: Hình ảnh thực nghiệm về lỗi nhận dạng không đúng đối tượng. - ĐỒ án CHUYÊN NGÀNH
Hình 5 7: Hình ảnh thực nghiệm về lỗi nhận dạng không đúng đối tượng (Trang 46)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w