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

Thiết kế hệ thống cảnh báo, trợ giúp tài xế lái xe ô tô

91 19 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 91
Dung lượng 3,1 MB

Nội dung

Hình 4.21:Giá tr ị pixel của điểm ảnh thực trên tấm chessboard được trích xuất từ ảnh ch ụp Hình 4.22: K ết quả tính toán giá trị tọa dộ pixel của điểm khi biết thông số nội và tọa độ đ

Trang 1

TRƯỜNG ĐẠI HỌC BÁCH KHOA -o0o -

VĂN TẤN THẮNG

Chuyên ngành: Kỹ thuật Cơ Điện Tử

Mã số : 605268

LU ẬN VĂN THẠC SĨ

Tp HCM, Tháng 12/2013

Trang 2

Cán bộ hướng dẫn khoa học: TS ĐOÀN THẾ THẢO

Ký tên TS.ĐOÀN THẾ THẢO Cán bộ chấm nhận xét 1:

Ký tên Cán bộ chấm nhận xét 2:

Ký tên

Trang 3

Thành phần Hội đồng đánh giá luận văn thạc sĩ gồm:

1

2

3

4

5

Xác nhận của Chủ tịch Hội đồng đánh giá LV và Trưởng Khoa quản lý chuyên ngành sau khi luận văn đã được sửa chữa (nếu có)

CH Ủ TỊCH HỘI ĐỒNG TRƯỞNG KHOA CƠ KHÍ

PGS.TS NGUYỄN HỮU LỘC

Trang 4

NHI ỆM VỤ LUẬN VĂN THẠC SĨ

Ngày, tháng, năm sinh: 15/10/1985 Nơi sinh: PHÚ YÊN

Chuyên ngành: Kỹ thuật Cơ Điện Tử Mã số: 605268

I TÊN ĐỀ TÀI:

II NHI ỆM VỤ VÀ NỘI DUNG:

• Nghiên cứu một số thuật toán sử dụng 2 cameras để theo vết, xác định hướng và khoảng cách đến vật thể

• Nghiên cứu phương pháp xác định các điểm đặc trưng trên xe và nhận ra được xe ô tô

• Hiện thực hệ thống nhận ra được xe, theo vết và xác định được khoảng cách

và hướng đến xe nhằm đưa ra cảnh báo cho tài xế

• Làm thực nghiệm kiểm nghiệm kết quả thực tế

III NGÀY GIAO NHI ỆM VỤ: Ngày 02 tháng 07 năm 2012

IV NGÀY HOÀN THÀNH NHI ỆM VỤ: Ngày 22 tháng 11 năm 2013

V CÁN B Ộ HƯỚNG DẪN: TS Đoàn Thế Thảo

Tp HCM, ngày…….tháng…… năm 2013

CÁN B Ộ HƯỚNG DẪN CH Ủ NHIỆM BỘ MÔN ĐÀO TẠO

TR ƯỞNG KHOA CƠ KHÍ

PGS.TS Nguyễn Hữu Lộc

Trang 5

Tôi cam đoan rằng nội dung và kết quả đạt được trong luận văn là công trình làm việc

của Tôi dưới sự hướng dẫn của Thầy TS Đoàn Thế Thảo, ngoại trừ các phần tham

khảo từ các nguồn tài liệu khác được ghi rõ trong luận văn

Tp.HCM, Ngày 02 tháng 12 năm 2013

Văn Tấn Thắng

Trang 6

Tôi xin chân thành cảm ơn Khoa Cơ Khí, Bộ Môn Cơ Điện Tử, Trường Đại Học Bách Khoa, ĐHQG-Tp.HCM đã tạo điều kiện tốt cho tôi thực hiện đề tài này

Tôi xin chân thành cảm ơn rất nhiều đến Thầy TS Đoàn Thế Thảo đã tận tình hướng

dẫn, chỉ bảo Tôi rất nhiều về phương pháp nghiên cứu, hướng tiếp cận tốt về đề tài, và cung cấp nhiều tài liệu bổ ích, trong suốt thời gian thực hiện đề tài

Tôi xin gửi lòng biết ơn sâu sắc đến Ba, Mẹ, các anh chị và bạn bè đã ủng hộ, giúp đỡ

và động viên Tôi trong suốt thời gian nghiên cứu thực hiện đề tài

Mặc dù tôi đã c ố gắng hoàn thành đề tài trong phạm vi và khả năng cho phép, nhưng

chắc chắn sẽ không tránh khỏi những thiếu sót, kính mong sự cảm thông và tận tình

chỉ bảo của quý Thầy Cô và các bạn

Sau cùng, Tôi xin gửi lời chúc sức khỏe, hạnh phúc đến quý Thầy Cô, Gia Đình và

Bạn Bè

TPHCM, ngày 02 tháng 12 năm 2013

Văn Tấn Thắng

Trang 7

1.1 Đặt vấn đề 1

1.2 Tính c ấp thiết của đề tài 1

1.3 M ục tiêu nghiên cứu 2

1.4 Đối tượng và phạm vi nghiên cứu 2

1.4.1 Đối tượng nghiên cứu 2

1.4.2 Ph ạm vi nghiên cứu 2

1.5 Phương pháp nghiên cứu 2

1.6 Ý ngh ĩa khoa học và thực tiễn 3

1.6.1 Ý ngh ĩa khoa học 3

1.6.2 Ý ngh ĩa Thực tiễn 4

CHƯƠNG 2 2.1 T ổng quan về OpenCV 5

2.2 Gi ải pháp phần cứng phục vụ thực hiện đề tài 6

2.2.1 Main công nghi ệp, PC 104 6

2.2.2 Single Board Computer (SBC) s ử dụng Single on Chip (SoC) 7

2.2.3 Máy tính PC, Laptop 8

CHƯƠNG 3 3.1 C ấu trúc tổng quan về đề tài 11

3.2 Cơ sở lý thuyết 13

3.2.1 Các phương pháp phát hiện đối tượng xe ôtô 13

3.2.2 Mô hình camera 25

3.2.3 Gi ới thiệu các thuật toán phát hiện điểm quan tâm thuộc đối tượng 29

3.2.3.1 Gi ới thiệu chung 29

3.2.3.2 Lý thuy ết về thuật toán SURF 32

CHƯƠNG 4 4.1 Đồ gá hai camera 46

Trang 8

4.2.2 Ti ến hành học huấn luyện cho máy tính 53

4.2.3 Thu ật toán phát hiện xe 60

4.2.4 K ết quả thực nghiệm phát hiện đối tượng 60

4.3 Th ực hiện hiệu chỉnh camera và kiểm tra kết quả các thông số nhận được 62

4.3.1 Th ực hiện hiệu chỉnh camera 62

4.3.2 Cách ki ểm nghiệm kết quả thông số nội nhận được 64

4.4 K ết quả phát hiện điểm và khớp ảnh từ thuật toán SURF 67

4.4.1 Ảnh chụp từ hai camera 67

4.4.2 K ết quả phát hiện, gán hướng cho điểm ảnh từ thuật toán SURF 67

4.4.3 K ết quả khi khớp các điểm ảnh tương ứng với nhau trong thuật toán SURF 68

4.5 K ết quả thực nghiệm ứng dụng hình học Epipolar Constraint 68

4.6 K ết quả đo khoảng cách của đối tượng 69

CHƯƠNG 5 5.1 Đánh giá kết quả đạt được 70

5.2 K ết luận và hướng phát triển 72

5.2.1 K ết luận 72

5.2.2 Ph ạm vi ứng dụng 74

5.3 H ạn chế của đề tài 74

5.4 Hướng phát triển cho đề tài 74

Tài li ệu tham khảo 76

Trang 9

Hình 2.2: Mainboard pc- 104, kích thước 90.17mm x 95.89mm [1]

Hình 2.3: Mainboard SBC uDimm, Kích th ước 43.18 x 68.58 mm [1]

Hình 2.4: Hình ảnh 2 webcam của hãng Logitech độ phân giải 1280 x 720

Hình 2.5: Hình ảnh phần cứng gồm cơ cấu gán hai webcam Logitech và Laptop thực

hi ện đề tài

Hình 3.1: Hình ảnh minh họa về hệ trục tọa độ của hai camera gắn lên xe ôtô [9]

Hình 3.2: S ơ đồ cấu trúc tổng quát về các bước thực hiện trong đề tài

Hình 3.3: Các đặc trưng cạnh của đặc trưng Haar-like [4]

Hình 3.4: Các đặc trưng đường của đặc trưng Haar-like [4]

Hình 3.5: Các đặc trưng đường chéo và bao quanh tâm của đặc trưng Haar-like [4]

Hình 3.6: L ược đồ cơ bản của thuật toán AdaBoost [6]

Hình 3.7: Dùng chu ỗi cascade đã được huấn luyện để phát hiện đối tượng [4]

Hình 3.8: C ấu trúc của các chuỗi cascade nối tiếp với N giai đoạn học huấn luyện [4] Hình 3.9: Mô hình Pinhole [7]

Hình 3.10: Chuy ển mặt phẳng ảnh tới trước mặt phẳng tiêu cự [7]

Hình 3.11: Chuy ển hệ trục tọa độ của đối tượng ở hệ tọa độ thực tới hệ tọa độ camera qua ma tr ận R và T [7]

Hình 3.12: Hình mô quan h ệ giữa hệ trục tọa độ ảnh thực tế so với lý thuyết

Hình 3.12: Các kernel ước lượng đạo hàm riêng theo các hướng x,y

Hình 3.13: Ảnh minh họa, các điểm được phát hiện và gán hướng bởi thuật toán SURF [12]

Hình 3.14: Nguyên t ắc so khớp ảnh [2]

Hình 3.15: Hình ảnh minh họa cho các điểm được khớp trong thuật toán SURF[12]

Trang 10

Hình 3.18: Mô t ả ý nghĩa của ma trận E và F [8]

Hình 3.19: Tính toán kho ảng cách đối tượng từ phương pháp Triangulation[9]

Hình 3.20: Hình ảnh minh họa về hệ trục tọa độ của hai camera gắn lên xe ôtô [9]

Hình 4.1: Hình ảnh minh họa các chiều di chuyển của hệ thống camera

Hình 4.2: B ản vẽ các hình cắt đồ gá camera

Hình 4.3: Các b ản vẽ chi tiết 2D và phối 3D của các thành phần của đồ gá

Hình 4.4: B ản vẽ mô phỏng các chi tiết của đồ gá

Hình 4.5: B ản vẽ phối cảnh hình ảnh 3D của đồ gá

Hình 4.6: C ơ cấu đồ gá chế tạo thực tế

Hình 4.7: Hình ảnh đặc trưng cho tập dữ liệu thu thập các hình ảnh xe ôtô cần phát hiện Hình 4.8: Hình ảnh đặc trưng cho tập không chứa đối tượng cần phát hiện

Hình 4.9: C ấu trúc thư mục chứa các file và folder cần thiết trong huấn luyện

Hình 4.10: File mô t ả thông tin các mẫu ảnh không chứa đối tượng

Hình 4.11: File mô t ả thông tin của các mẫu ảnh chứa đối tượng

Hình 4.12: File ứng dụng để tổng hợp các mẫu chứa đối tượng vào file vector.vec

Hình 4.13: K ết quả file chạy ứng dụng để tổng hợp các mẫu chứa đối tượng vào file vector.vec

Hình 4.14: C ấu trúc của file ứng dụng chạy huấn luyện

Hình 4.15: K ết quả file chạy huấn luyện ở một giai đoạn

Hình 4.16: Ảnh diễn tả bộ nhớ RAM được chiếm dụng trong quá trình chạy huấn luyện Hình 4.17: Ảnh kết quả phát hiện xe ôtô bằng file cascade.xml được huấn luyện

Hình 4.18: Hình ảnh chessboard dùng trong hiệu chỉnh camera

Trang 11

Hình 4.21:Giá tr ị pixel của điểm ảnh thực trên tấm chessboard được trích xuất từ ảnh

ch ụp

Hình 4.22: K ết quả tính toán giá trị tọa dộ pixel của điểm khi biết thông số nội và tọa độ điểm thực đó xét trong hệ tọa độ camera

Hình 4.23: K ết quả tính toán kiểm tra tọa độ điểm thực xét trong hệ tọa độ camera khi

bi ết thông số nội và tọa độ pixel điểm ảnh của ảnh được chụp từ điểm thực trên

Hình 4.24: Hình ảnh chụp được từ hai camera trái và phải

Hình 4.25: Hình ảnh phát hiện điểm và gán hướng bằng phương pháp SURF

Hình 4.26: Hình ảnh so khớp các điểm ảnh phát hiện bởi thuật toán SURF

Hình 4.27: Các điểm ảnh tương ứng nằm trên các đường epipolar

Hình 5.1: Hình ảnh của đối tượng xe ôtô cần phát hiện và xác định khoảng cách

Hình 5.2: Hình ảnh kết quả phát hiện đối tượng và kết quả khoảng cách đo được

Hình 5.3: Bi ểu đồ đánh giá kết quả đạt được

Trang 12

speed, there are many applications based on the high technology in the other fileds that are applied to support, help human in all aspect of life, makes better value of life quality days by days

We can give a typical example about applications in field of the computer vision One of the most noticeable application fields is medical image processing used a medical diagnosis of a patient by track by the extraction of information from X-ray image data, or applications is in industry, where information is extracted with purpose used to support a manufacturing process…, and still remains many application in others field

In this thesis, student wants to implement a application that relates to the computer vision field, issue named “Using stereo camera system detects and measures distance of object

to support driver when car is joining traffic” with instruction of Doctor Doan The Thao, avoid happening any risks, accidents This is one of the most useful applications and objects that is researched and approached by many scientists who are working in the computer vision fields and image processing because of demands in real lives and many different methods of approach

In this thesis, student has the method of approach, as follows:

A detector based on Haar-like features and AdaBoost algorithm is used to detect object, then result is applied for distance detection process using triangulation method In addition, there are some auxiliary matters such as: detected key points on object (SURF algorithm), matched these points (epipolar constraint) then extracted the distance information of object from this good mactching points…,

Trang 13

độ rất cao, có nhiều ứng dụng khoa học kỹ thuật công nghệ trong các lĩnh vực khác nhau được phát triển và làm ra nhằm mục đích hỗ trợ và giúp đỡ con người trong đời sống, nâng cao chất lượng cuộc sống của chúng ta ngày một tốt hơn

Ta lấy các ứng dụng được tạo ra từ lĩnh vực thị giác máy tính làm ví dụ điển hình, một trong các ứng dụng đáng chú ý nhất của nó là sử dụng trong việc trích xuất các thông tin trong các ảnh được chụp bởi tia X-Quang dùng cho việc chẩn đoán bệnh của bệnh nhân

một cách tốt hơn, hay những ứng dụng phục vụ trong sản xuất công nghiệp tự động…ngoài ra còn rất nhiều ứng dụng về lĩnh vực thị giác máy tính trong nhiều ngành nghề khác

Trong luận văn này, học viên muốn thực hiện một ứng dụng liên quan tới thị giác máy tính Tên đề tài: “THIẾT KẾ HỆ THỐNG CẢNH BÁO, TRỢ GIÚP TÀI XẾ LÁI XE Ô

TÔ” dưới sự hướng dẫn của Thầy TS Đoàn Thế Thảo Đây là một trong những chủ đề và ứng dụng được nhiều nhà khoa học làm trong lĩnh v ực thị giác máy tính và xử lý ảnh nghiên cứu, bởi vì nhu cầu được sử dụng trong đời sống thực và có nhiều cách tiếp cận

vấn đề khác nhau Hướng tiếp cận của học viên trong luận văn này như sau:

Phát hiện đối tượng với những bộ phân loại được tăng tốc bằng thuật toán AdaBoost và đặc trưng Haar-like (Haar-like features), sau khi huấn luyện dùng file huấn luyện xml để

phục vụ cho mục đích phát hiện đối tượng Lấy điểm đặc trưng là cặp điểm ảnh được

khớp tốt từ hai mặt phẳng ảnh của một cùng điểm thực nằm trên đối tượng, rồi xác định thông tin là khoảng cách bằng phương pháp hình học Triangulation (Phương pháp tam giác), ngoài ra còn có những vấn đề phụ trong đề tài như phát hiện điểm đặc trưng và

khớp ảnh bằng thuật toán SURF, dùng ràng buộc Epipolar để có được cặp điểm khớp ảnh

tốt…

N ỘI DUNG LUẬN VĂN

CHƯƠNG 1: MỞ ĐẦU

CHƯƠNG 2: CÔNG CỤ HỖ TRỢ VÀ PHẦN CỨNG

CHƯƠNG 3: TỔNG QUAN VỀ ĐỀ TÀI VÀ CƠ SỞ LÝ THUYẾT

CHƯƠNG 4: THIẾT KẾ ĐỒ GÁ CAMERA VÀ XÂY DỰNG MÔ HÌNH

CHƯƠNG 5: ĐÁNH GIÁ KẾT QUẢ VÀ HƯỚNG PHÁT TRIỂN

Trang 14

những hành trình dài dễ khiến người cầm lái trở nên mệt mỏi, xao nhãng vài ba giây và

nếu có đối tượng nào đó phía trước xe trong khi người lái mất tập trung thì có thể xảy ra

va chạm trong tích tắc Đó là một trong những ứng dụng cho việc đo khoảng cách của đối tượng bằng hệ thống stereo camera, và nó làm tiền đề cho những ứng dụng thực tế sau

này

1.2 Tính c ấp thiết của đề tài

Với việc phát triển của nền kinh tế, nhu cầu bảo vệ con người và tài sản càng trở nên cấp thiết Cùng với sự phát triển vượt bậc của công nghệ, những hệ thống cảnh báo cho tài xế

giờ đây được hiểu như là một nhu cầu cho sự an toàn khi tham gia giao thông Nhằm

giảm thiểu số vụ va chạm giao thông kiểu này, một số nhà sản xuất ô tô đã giới thiệu các công nghệ cảnh báo có vật cản trước cho người lái chẳng hạn như: dùng cảm biến hồng ngoại, tia lazer,…

Giải pháp dùng “hệ thống stereo camera” để phát hiện đối tượng vật cản, sẽ giúp cho

người lái không chỉ thuận tiện trong việc giám sát được tình hình giao thông khi đang điều khiển phương tiện, phát hiện và cảnh báo kịp thời khi người lái mất tập trung, do đó

bảo vệ được tính mạng và tài sản Giải pháp này sẽ giúp người lái xe ô tô có được một công cụ giám sát và cảnh báo hiệu quả hơn so với hệ thống cảnh báo khác

Trang 15

Do đó là lý do Tôi chọn nghiên cứu và thực hiện đề tài: " THI ẾT KẾ HỆ THỐNG

C ẢNH BÁO, TRỢ GIÚP TÀI XẾ LÁI XE Ô TÔ " dưới sự hướng dẫn của Thầy

TS Đoàn Thế Thảo

1.3 M ục tiêu nghiên cứu

Thiết kế hệ thống cảnh báo, trợ giúp tài xế lái xe ô tô bằng cách sử dụng hệ thống stereo camera, thu thập và xử lý nhiệm vụ trên nền tảng của hệ điều hành Windows của hãng Micosoft và phần cứng là máy Laptop với chíp xử lý Core i3 của hãng Intel, Ram 2 GB,

bộ nhớ ngoài với dung lượng 500 GB (gigabyte), nhằm phát hiện vật cản trước đầu xe

Đề tài nghiên cứu thuật toán phát hiện và thuật toán tính khoảng cách tới các đối tượng chuyển động từ hệ thống stereo camera

1.4 Đối tượng và phạm vi nghiên cứu

1.4.1 Đối tượng nghiên cứu

Phát hiện vật cản là các xe ôtô ở phía trước người lái được hỗ trợ hệ thống stereo camera, thu ảnh vật cản bằng 2 webcam với độ phân giải HD (high definition) 720p (pixel) của

hãng Logitech, xử lý thao tác cảnh báo trên nền tảng hệ điều hành Windows của hãng Microsoft

1.4.2 Ph ạm vi nghiên cứu

Nghiên cứu thuật toán phát hiện đối tượng chuyển động, và đối tượng tĩnh rồi xác định được khoảng cách của đối tượng trong phạm vi đưa ra

1.5 Phương pháp nghiên cứu

Để hệ thống stereo camera có thể làm việc đúng như yêu cầu là phát hiện vật cản và đưa

ra cảnh báo cho tài xế, khi vật cản ở trong khoảng cách báo động (khoảng cách có thể gây

va chạm nếu tài xế không kịp đưa ra xử lý an toàn) thì cần nghiên cứu các vấn đề sau:

- Ngiên cứu về thư viện OpenCV hỗ trợ trong thị giác máy tính

Trang 16

- Dùng kỹ thuật hiệu chỉnh camera (camera calibration) để tìm ra các thông số ngoại

và nội của camera, vì những thông số camera cần thiết cho việc tính toán khoảng cách từ camera so với vật trong không gian thực 3D

- Phát hiện đối tượng với những bộ phân loại được tăng tốc bằng thuật toán AdaBoost và đặc trưng Haar-like (Haar-like features), sau khi huấn luyện dùng file

huấn luyện xml để phục vụ cho mục đích phát hiện đối tượng

- Nghiên cứu các kỹ thuật để phát hiện các điểm trên đối tượng

- Tiến hành khớp ảnh cho các điểm tương ứng được phát hiện từ kỹ thuật phát hiện các điểm trên đối tượng

- Để nhận được cặp điểm ảnh khớp tốt, ta cần loại bỏ những cặp điểm ảnh khớp ảnh không tốt bằng cách sử dụng phương pháp Epipolar Constraint

- Lấy điểm đặc trưng là cặp điểm ảnh được khớp tốt từ hai mặt phẳng ảnh của một cùng điểm thực nằm trên đối tượng, rồi xác định thông tin là khoảng cách bằng phương pháp hình học Triangulation (Phương pháp tam giác)

- Thiết kế cơ khí cho đồ gá của hai camera phục vụ cho nghiên cứu, cơ cấu gá có

thể điều chỉnh được vị trí tương đối giữa hai camera

1.6 Ý ngh ĩa khoa học và thực tiễn

1.6.1 Ý ngh ĩa khoa học

Kết quả nghiên cứu có thể làm tài liệu thao khảo cho việc tìm hiểu thuật toán phát hiện,

và xác định được khoảng cách của đối tượng trong không gian thực ba chiều (3D) Ứng

dụng thị giác máy tính vào đời sống thực tế

Tiền đề cho những nghiên cứu hay hơn và kỹ thuật hay hơn cho các đề tài tiếp theo trong tương lai

Trang 17

1.6.2 Ý ngh ĩa Thực tiễn

Giao thông vận tải: hệ thống phát hiện vật cản, đi sai làn đường…, bằng camera và đưa ra

cảnh báo cần thiết để tránh tai nạn không mong muốn xảy ra

Công nghiệp sản xuất tự động hay trong ứng dụng cho robot trong các tác vụ cụ thể liên quan đến phát hiện và xác định khoảng cách

Trong y tế: đã có đề tài nghiên cứu về hành vi uống thuốc của bệnh nhân, hành vi ăn tối

của người lớn tuổi để đưa ra thông báo đúng cho nhân viên y tế…

Trang 18

Intel đưa ra phiên bản OpenCV đầu tiên vào năm 1999 Ban đầu nó yêu cầu phải có thư

viện xử lý ảnh của Intel Sau đó vì sự lệ thuộc này mà họ đã phải gỡ bỏ và bây giờ chúng

ta có thể sử dụng thư viện này hoàn toàn độc lập

OpenCV là một thư viện nguồn mở hỗ trợ cho thị giác máy tính Nó có nhiều tác dụng và

rất đa dạng như : nhận dạng, dò tìm, phát hiện, lọc Kalman,…, thể hiện sự đa dạng của trí

tuệ nhân tạo (Artificial Intelligence) Thêm vào đó nó cải thiện rất nhiều các thuật toán cơ

bản của thị giác máy tính và hỗ trợ rất nhiều hệ điều hành như: Windows, Linux, MacOSX

Cấu trúc tổng quan của OpenCV bao gồm 5 phần chính 4 trong 5 phần đó được chỉ ra trong hình vẽ dưới:

ấu trúc cơ bản của OpenCV

thống kê

HighGUI

Các hàm và thủ tục làm việc với file ảnh

và file video

Trang 19

Phần CV bao gồm các thư viện cơ bản về xử lý ảnh và các giải thuật về thị giác máy tính MLL là bộ thư viện về các thuật toán học máy, bao gồm rất nhiều bộ phân cụm và phân

loại thống kê HighGUI chứa đựng những thủ tục vào ra, các chức năng về lưu trữ cũng như đọc các file ảnh và video Phần thứ 4, CXcore chứa đựng các cấu trúc dữ liệu cơ bản ( ví dụ như cấu trúc XML, các cây dữ liệu …) Phần cuối cùng là CvAux, phần này bao

gồm các thư viện cho việc phát hiện, theo dõi và nhận dạng đối tượng (khuôn mặt, mắt

…)

2.2 Gi ải pháp phần cứng phục vụ thực hiện đề tài

Để giải bài toán xử lý bằng hình ảnh, ta có rất nhiều giái pháp phần cứng khác nhau Từ

phần cứng cho tới các module phần mềm Ta có thể điểm qua một vài phương pháp hay được sử dụng và có hiệu quả cao như sau

2.2.1 Main công nghi ệp, PC 104

Hình 2.2: Mainboard pc- 104, kích thước 90.17mm x 95.89mm [1]

Ta có thể sử dụng mainboard PC104 với các chức năng như một máy tính thông

thường Việc sử dụng PC104 sẽ có những ưu, nhược điểm sau:

 Ưu điểm:

- Có tốc độ xử lý cao

- Dễ dàng lập trình, kiểm lỗi

Trang 20

- Hệ điều hành quen thuộc (Windows/linux)

- Các công cụ lập trình/bi ên dịch phổ biến MSVC (Microsoft Visual C++), gcc (GNU Compiler Collection)

 Nhược điểm:

- Kích thước lớn

- Có quá nhiều thành phần không sử dụng đến

- Giá thành đắt

- Chỉ có thể giao tiếp với ngoại vi thông qua các chuẩn phổ biến như UART, USB

2.2.2 Single Board Computer (SBC) s ử dụng Single on Chip (SoC)

Hình 2.3: Mainboard SBC uDimm, Kích thước 43.18 x 68.58 mm [1]

SBC (Single board computer) có sử dụng các SoC là buớc tiến lớn trong việc xây dựng thiết bị với khả năng tính toán và xử lý như một máy tính thông thường.Với nhiều ưu điểm hơn hẳn so với các thiết bị khác như :

- Kích cỡ

- Giá thành

- Sử dụng các SoC làm bộ xử lý trung tâm có khả năng chuyên biệt về xử lý hình ảnh hay xử lý trên môi trường mạng rất hữu hiệu

Trang 21

Do vậy tuỳ và bài toán đặt ra mà ta có thể chọn các SBC cho các SoC phù hợp với yêu

cầu cụ thể Hiện nay đã có nhiều SoC có khả năng tích hợp các DSP (Processor DigitalSignal Processing) là bộ xử lí tín hiệu số vào trong nhân nhằm tăng khả năng xử lý

Việc sử dụng mạch SBC sẽ có những ưu, nhược điểm sau:

- Các công cụ biên dịch phổ biến gcc

- Các công cụ hỗ trợ lập trình rất nhiều Eclipse, Vim, Emacs v v

 Nhược điểm:

- Việc chạy, kiểm thử phải thực hiện giả lập trên máy tính trước khi đưa vào mạch

- Am hiểu kiến thức về các giao tiếp ngoại vi, kiến trúc về SBC

2.2.3 Máy tính PC, Laptop

Đây là một trong những phương pháp đơn giản nhất Có thể tận dụng các mainboard máy tính hay thậm chí các máy tính xách tay với chức năng là một đơn vị xử lý ảnh, và đưa ra quyết định Với việc kết nối camera hay webcam ta hoàn toàn chủ động trong quá trình

nhận và xử lý ảnh Các giao tiếp ngoại vi phổ biến như UART, Parallel, USB hay Keyboard Việc sử dụng PC, Laptop sẽ có những ưu, nhược điểm như sau:

Trang 22

- Hệ điều hành quen thuộc (Hệ điều hành Windows của hãng Microsoft)

- Các công cụ lập trình và biên dịch phổ biến (C, C++, Visual C, Visual Basic…)

- Bộ nhớ ngoài lớn

 Nhược điểm:

- Kích thước, khối lượng lớn

- Dễ hư hỏng do va đập hay các tác nhân khác

- Có quá nhiều thành phần không sử dụng đến

- Chỉ có thể giao tiếp với ngoại vi thông qua các chuẩn phổ biến như UART, USB

 Phương pháp phần cứng học viên chọn trong đề tài này là sử dụng Laptop/PC để

thực hiện vì tính tiện lợi và dễ dàng thực hiện công việc cho đề tài và phần chụp ảnh học viên chọn hai webcam của hãng logitech: giao tiếp với Laptop bằng chuẩn giao tiếp USB, có độ phân giải màn hình 1280x720

Trang 23

Hình 2.4: Hình ảnh 2 webcam của hãng Logitech độ phân giải 1280 x720

Hình 2.5: Hình ảnh phần cứng gồm cơ cấu gán hai webcam Logitech và Laptop thực hiện đề tài

Trang 24

CHƯƠNG 3

Tóm t ắt chương

N ội dung: Chương này giới thiệu cấu trúc tổng quan về và các bước thực hiện đề tài,

cơ sở lý thuyết của các bước thực hiện: phần phát hiện đối tượng bằng các đặc trưng Haar-like k ết hợp với thuật toán tăng tốc AdapBoost để phát hiện đối tượng nhanh hơn, sau đó dùng phương pháp để tìm điểm thuộc đối tượng trong vùng ảnh phát hiện đối tượng (ROI) bằng phương pháp SURF và tiến hành khớp ảnh các cặp điểm tương ứng

c ủa một điểm thực trong không gian thực được chụp từ hai camera, để nhận được cặp điểm ảnh tương ứng của điểm thực từ đối tượng trong không gian thực , ta dùng ràng

bu ộc epipolar để đạt được điều này, sau đó lấy cặp điểm được khớp đúng này làm điểm đặc trưng cho đối tượng, và trích ra thông tin là khoảng cách đối tượng trong không gian

th ực so với camera bằng phương pháp tam giác triangulation

3.1 C ấu trúc tổng quan về đề tài

Hình 3.1: Hình ảnh minh họa về hệ trục tọa độ của hai camera gắn lên xe ôtô [9]

Trang 25

Hình 3.2: S ơ đồ cấu trúc tổng quát về các bước thực hiện trong đề tài

Tìm điểm trên vùng ROI nhận

diện xe bằng phương pháp Surf

Tìm điểm trên vùng ROI nhận

diện xe bằng phương pháp Surf

Haar-tốc AdaBoost

Tiến hành

khớp các cặp điểm tương ứng

Từ những cặp điểm

khớp chính xác, xác định được các điểm

thật làm điểm đặc trưng cho đối tượng trong không gian 3D

Sử dụng Epipolar Constraint để đạt được các cặp điểm khớp chính

xác

Trích xuất thông tin đối tượng

Haar-tốc AdaBoost

Ảnh camera

phải

ROI

Trang 26

3.2 Cơ sở lý thuyết

3.2.1 Các phương pháp phát hiện đối tượng xe ôtô

Phát hiện đối tượng, ví dụ như xe hơi trong cảnh quan giao thông, từ camera (hình động) hay những tấm hình tĩnh dựa trên sự trợ giúp của máy tính từ lâu đã có nhiều nghiên cứu

và phát triển bởi nó đóng vai trò là cơ sở chung và là nền tảng để nghiên cứu và ứng dụng trong các lĩnh vực và các hệ thống khác Trong quá trình nghiên cứu và phát triển, thì yêu

cầu được đặt lên hàng đầu là yếu tố chính xác và phải thực hiện nhanh chóng trong thời gian thực

Có rất nhiều phương pháp và hướng tiếp cận của vấn đề phát hiện xe hơi Đinh vị xe trong một cảnh quan giao thông là phương pháp tương đối đơn giản, bởi vì nó chỉ xác

định vị trí hay tọa độ của chiếc xe có trong ảnh Hướng phát triển hơn là việc nhận dạng (vehicle recognition) là công việc phức tạp hơn Tác vụ này sẽ so sánh một ảnh xe hơi trong ảnh đầu vào với tất cả các ảnh có trong cơ sở dữ liệu đã được huấn luyện trước và đưa ra ảnh gần nhất Trong bài luận văn này học viên chỉ tìm hiểu về việc phát hiện xe trong thực tế

Có hai hướng tiếp cận chính thường được dùng để phát hiện đối tượng: các phương pháp

dựa trên ảnh và các phương pháp dựa trên dạng hình học Các phương pháp có thể được

liệt kê như sau:

 Phát hi ện dựa trên ảnh

Các phương pháp thuộc nhóm này dựa trên một tập hợp các hình mẫu của đối tượng và

sử dụng cửa sổ trượt để phát hiện xe Cách làm này khác biệt so với các phương pháp dựa trên khuôn mẫu (cần thiết phải có sẵn mô hình xe, hình thái xe) Để trích đặc trưng từ các

mẫu ví dụ, cần thiết cho học huấn luyện dưới dạng thống kê hoặc các thuật toán học máy (machine learning) với đủ nhiều các mẫu ảnh có chứa đối tượng và không chứa đối tượng

Trang 27

Do sự xuất hiện của xe trong ảnh là ngẫu nhiên với nhiều góc quan sát khác nhau nên thường phải xấp xỉ chúng để tạo nên sự khác biệt của hai đối tượng. Tùy theo cách tiếp

cận xác xuất nào mà sẽ xuất hiện các phương pháp phát hiện tương ứng Liệt kê dưới đây

là một số các phương pháp thuộc nhóm này:

 Phương pháp EigenObjects (PCA)

 Phương pháp Fisher’s Linear Discriminant

 Các phương pháp dựa trên Eigen-space

 Các phương pháp dựa trên mạng nơron nhân tạo

 Support Vector Machine (SVM)

 Phương pháp mô hình Markov ẩn (Hidden Markov Model-HMM)

 Phương pháp Sparse Network of Windows (SnoW)

Do nhóm phương pháp này dựa trên việc huấn luyện sao cho thu được mô hình đối tượng

xe từ một tập dữ liệu tích cực (positive sample - ảnh có chứa đối tượng) và một tập dữ

liệu không tích cực (negetive sample - ảnh không chứa hình đối tượng) nên chúng có sự tương quan so sánh trực tiếp đến các đặc điểm hình học của một kiểu xe điển hình

Nhược điểm của phương pháp này là đòi hỏi luôn có sẵn cơ sở dữ liệu hình xe rất lớn Để

có thể phát hiện và nhận dạng được xe, máy tính phải luôn dò trong cơ sở dữ liệu hình này rồi mới đưa ra kết quả

Trang 28

Nhóm phương pháp Bottom-Up chủ yếu dùng các đặc điểm hình dáng bất biến của xe đối

với ngoại cảnh và nền ảnh để phát hiện ra xe Rồi tùy vào mối liên hệ của chúng với nhau

mà thiết lập các liên kết giữa các đặc điểm bất biến này ngay trong ảnh đầu tiên, tiếp theo

sẽ dựa vào đó mà tìm chúng trên các ảnh kế tiếp

Phương pháp của phân nhóm thứ hai luồng ánh sáng, là phương pháp xử lý tổng quan ánh sáng theo tuần tự các bước Thứ nhất, thuật toán tìm đặc trưng quan trọng của đối tượng (ví dụ như góc của xe) trong hai khung hình liên tiếp nhau Thứ hai, dùng thuật toán để

hợp nhất tính liên quan đồng nhất giữa các đặc trưng đó (trong trường hợp này là góc xe) Bước cuối cùng, các luồng đặc trưng đối tượng đã được trích xuất khỏi ảnh được tập hợp

lại thành một nhóm nếu các khoảng cách Euclidean của các luồng (vị trí đối tượng và hướng chuyển động của đối tượng) là nhỏ

Cụ thể phương pháp này không chỉ sử dụng các thuật toán học (learning algorithm) để

huấn luyện tạo các bộ phân lớp (cascade) bằng các hình mẫu ví dụ tích cực (có chứa hình

ảnh xe) và các hình mẫu không tích cực (không chứa hình ảnh xe) được lựa chọn cẩn

thận (đây là phương pháp dựa trên ảnh) Các hình sau khi được lựa chọn cẩn thận sẽ được quyết định đặc trưng của từng loại xe bởi thuật toán học hầu hết có liên quan trực tiếp đến đặc trưng riêng biệt trên hình ảnh xe hơi (đặc điểm các chi tiết trên xe, gương, đầu

xe, đuôi xe, dàn đèn, các gờ nổi,…) Kỹ thuật tăng tốc cải thiện tốc độ tìm kiếm dựa trên các bộ phân loại bằng cách lấy ra các trọng số cho các mẫu ví dụ dùng trong huấn luyện

Phương pháp được sử dụng trong luận văn

Trong luận văn, việc phát hiện xe là sự kết hợp giữa thuật toán tăng tốc AdaBoost (Adaptive Boost: tăng tốc thích nghi) và đặc tính đáp ứng nhanh của các đặc trưng Haar-like Đây là phương pháp được xem như là phối hợp của cả hai phương pháp đã nêu trên: phương pháp dựa trên ảnh và phương pháp dựa trên dạng hình học

Để thực hiện chức năng phát hiện xe, sử dụng thuật toán phát hiện đối tượng (dựa trên các đặc trưng Haar-like trên từng khung ảnh (frame) thu được từ nguồn tín hiệu hình ảnh

ặc file video) rồi dựa vào các thuật toán xử lý ảnh và thị giác máy tính để thi

Trang 29

hành các tác vụ lên các xe đã được phát hiện Sau đây là phần trình bày phương thức hoạt động của phương pháp phát hiệnxe hơi bằng các đặc trưng được liệt kê sau đây:

Các đặc trưng Haar-like

Mục đích của việc sử dụng các đặc trưng Haar-like là đảm bảo yêu cầu đáp ứng thời gian

thực Mỗi một đặc trưng Haar-like bao gồm 2 hoặc 3 khối hình màu trắng và đen liên kết nhau:

Hình 3.3: Các đặc trưng cạnh của đặc trưng Haar-like [4]

Hình 3.4: Các đặc trưng đường của đặc trưng Haar-like [4]

Hình 3.5: Các đặc trưng đường chéo và bao quanh tâm của đặc trưng Haar-like [4]

Giá trị của đặc trưng Haar-like được xác định bởi độ chênh lệch giữa tổng các giá trị pixel mức xám nằm trong vùng đen so với vùng trắng

Trang 30

Vùng đặc trưng và số lượng đặc trưng

Mục đích chính của việc sử dụng các đặc trưng thay vì các giá trị pixel ban đầu như là đại lượng đầu vào cho thuật toán học huấn luyện là nhằm giảm hoặc tăng sự sai khác lẫn nhau giữa các đối tượng trong cùng một lớp phân loại, từ đó làm cho quá trình phân loại được dễ dàng hơn Các đặc trưng thường để mã hóa các hiểu biết về miền quan tâm của đối tượng trong ảnh Tính phức tạp của việc đánh giá đặc trưng là rất quan trọng trong nhiệm vụ phát hiện đối tượng dựa trên hình dáng bên ngoài của đối tượng đó trong chuỗi ảnh ngõ vào của hệ thống

Như vậy ta có thể thấy, để tính các giá trị đặc trưng Haar-like ta phải tính tổng của các vùng pixel trên ảnh, nhưng để tính toán các giá trị đặc trưng Haar-like cho tất cho tất cả các vị trí trên ảnh đòi hỏi chi phí tính toán rất cao, không đáp ứng được cho các ứng dụng đòi hỏi phải thực hiện trong thời gian thực Do đó Viola và Jones đưa ra một khái niệm

gọi là Integral Image, là một mảng hai chiều với kích thước bằng với kích thước của ảnh

cần tính đặc trưng Haar-like, với mỗi phần tử của mảng này được tính bằng công thức

dưới đây [5]:

𝑃𝑃(𝑥𝑥, 𝑦𝑦) = � 𝑖𝑖(𝑥𝑥′, 𝑦𝑦′)

𝑥𝑥 ′ ≤𝑥𝑥,𝑦𝑦 ′ ≤𝑦𝑦Sau khi đã tính được Intrgral Image việc tính tổng các giá trị mức xám của một vùng bất

kỳ nào đó trên ảnh thực hiện rất đơn giản theo cách sau:

Giả sử ta cần tính tổng các giá trị mức xám của vùng D như trong hình 4, ta có thể tính như sau:

𝐷𝐷 = 𝐴𝐴 + 𝐵𝐵 + 𝐶𝐶 + 𝐷𝐷 – (𝐴𝐴 + 𝐵𝐵) – (𝐴𝐴 + 𝐶𝐶) + 𝐴𝐴

Trang 31

Với 𝐴𝐴 + 𝐵𝐵 + 𝐶𝐶 + 𝐷𝐷 chính là giá trị tại điểm P4 trên Integral Image, tương tự như vậy

𝐴𝐴 + 𝐵𝐵 là giá trị tại điểm 𝑃𝑃2, 𝐴𝐴 + 𝐶𝐶 là giá trị tại điểm 𝑃𝑃3, và 𝐴𝐴 là giá trị tại điểm 𝑃𝑃1 Vậy

ta có thể viết lại biểu thức tính 𝐷𝐷 ở trên như sau:

𝐷𝐷 = (𝑥𝑥4, 𝑦𝑦4) − (𝑥𝑥2, 𝑦𝑦2) − (𝑥𝑥3, 𝑦𝑦3) + (𝑥𝑥1, 𝑦𝑦1)

Với: (𝑥𝑥4, 𝑦𝑦4) là 𝐴𝐴 + 𝐵𝐵 + 𝐶𝐶 + 𝐷𝐷, (𝑥𝑥2, 𝑦𝑦2) là 𝐴𝐴 + 𝐵𝐵, (𝑥𝑥3, 𝑦𝑦3) là 𝐴𝐴 + 𝐶𝐶 và (𝑥𝑥1, 𝑦𝑦1) là 𝐴𝐴

Các đặc trưng của các đối tượng được tính tại mỗi một vị trí và mỗi một tỉ lệ trong thời gian không đổi

Giả thiết rằng, đơn vị cơ bản cho sự xuất hiện cơ bản của đối tượng xuất hiện trong ảnh

có kích thước W x H điểm ảnh Đồng thời cũng giả thiết rằng cách tính nhanh cho tổng

các điểm ảnh cho mỗi một hình chữ nhật bên trong cửa sổ lớn (ảnh đầu vào) ở dạng là hình chữ nhật nằm ngang hoặc nằm nghiêng góc 450 là thông số 𝑟𝑟 = (𝑥𝑥, 𝑦𝑦, 𝑧𝑧, ℎ, 𝛼𝛼)

với 0 ≤ 𝑥𝑥, 𝑥𝑥 + 𝑤𝑤 ≤ 𝑊𝑊; 0 ≤ 𝑦𝑦, 𝑦𝑦 + ℎ ≤ 𝐻𝐻; 𝑥𝑥, 𝑦𝑦 ≥ 0; 𝑤𝑤, ℎ > 0; 𝛼𝛼𝛼𝛼{0𝑜𝑜, 45𝑜𝑜}

Hai ví dụ cho hai trường hợp của hình chữ nhật được cho như sau [6]:

Số lượng đặc trưng xuất phát từ mẫu là đủ lớn và khác nhau giữa mẫu này với mẫu khác

và được tính theo công thức bên dưới

Trang 32

Nếu cho X=W/w và Y=H/h thì số lượng đặc trưng đối với kích thước 𝑤𝑤 x ℎ trong ảnh có kích thước 𝑊𝑊 x 𝐻𝐻 được tính theo công thức sau đây:

𝑋𝑋 × 𝑌𝑌 × �𝑊𝑊 + 1 − 𝑤𝑤 ×𝑋𝑋+12 � × �𝐻𝐻 + 1 − ℎ ×𝑌𝑌+12 � (3.1) Trong trường hợp hình chữ nhật đặc trưng nghiêng 45o

thì công thức tính số lượng đặc trưng:

𝑋𝑋 × 𝑌𝑌 × �𝑊𝑊 + 1 − 𝑧𝑧 ×𝑋𝑋+12 � × �𝐻𝐻 + 1 − 𝑧𝑧 ×𝑌𝑌+12 � (3.2)

Với 𝑧𝑧 = 𝑤𝑤 + ℎ

Để chọn các đặc trưng Haar-like dùng cho việc thiết lập ngưỡng, Viola và Jones sử dụng

một phương pháp máy học được gọi là AdaBoost AdaBoost sẽ kết hợp các bộ phân loại

yếu để tạo thành một bộ phân loại mạnh Với bộ phân loại yếu chỉ cho ra câu trả lời chính xác chỉ hơn viện đoán một cách ngẫn nhiên một chút, còn bộ phân loại mạnh có thể đưa

ra câu trả lời chính xác trên 60%

 Thu ật toán tăng tốc AdaBoost

AdaBoost (adaptive Boost) là thuật toán học mạnh, giúp đẩy nhanh việc tạo ra một bộ phân loại mạnh (strong classifier) bằng cách chọn các đặc trưng tốt trong một họ các bộ phân loại yếu (weak classifier) và kết hợp chúng lại tuyến tính bằng cách sử dụng các

trọng số Điều này thật sự cải thiện dần độ chính xác nhờ áp dụng hiệu quả chuỗi các bộ phân loại yếu

ược đồ cơ bản của thuật toán AdaBoost [6]

Trang 33

Thuật toán học này ban đầu duy trì một phân bố chuẩn (tương đồng nhau) các trọng số lên mỗi một mẫu huấn luyện Trong bước lặp đầu tiên, thuật toán huấn luyện một bộ phân

loại yếu bằng cách dùng một đặc trưng Haar-like (Haar-like feature) đã thực hiện tốt nhất

việc phát hiện các mẫu thử huấn luyện Trong lần lặp thứ hai, các mẫu thử dùng cho huấn luyện nhưng bị phân loại nhầm bởi bộ phân loại yếu đầu tiên được nhận trọng số cao hơn sao cho đặc trưng Haar-like được chọn lần này phải tập trung khả năng tính toán cho các

mẫu thử bị phân loại nhầm này Sự lặp lại tiếp tục được thực hiện và các kết quả cuối cùng sẽ là một chuỗi cascade các kết hợp tuyến tính của các bộ phân loại yếu, tạo ra một

bộ phân loại mạnh, giúp tạo được độ chính xác mong muốn

Phương pháp AdaBoost có nhiều dạng khác nhau:

 Tăng tốc thích nghi rời rạc (Discrete AdaBoost-DAB)

 Tăng tốc thích nghi thực (Real AdaBoost-RAB)

 Tăng tốc thích nghi linh hoạt (Gentle AdaBoost-GAB)

Các phương pháp trên đều được dùng cho việc tính toán độ phức tạp từ các mẫu phân

loại, nhưng khác nhau ở thuật toán học huấn luyện Ví dụ một trong các thuật toán huấn luyện [6]:

Trang 34

𝑤𝑤1,𝑘𝑘 = 1

2𝑚𝑚,

12𝑙𝑙

𝜀𝜀𝑗𝑗 = � 𝑤𝑤𝑡𝑡,𝑘𝑘�ℎ𝑗𝑗(𝑥𝑥𝑘𝑘) − 𝑦𝑦𝑘𝑘�𝑛𝑛

1 Cho một tập gồm n mẫu có đánh dấu (x1,y1), (x2,y2),… (xn,yn) với xk ∈ (xk1, xk2, … , xkm) là vector đặc trưng và yk ∈ (-1, 1) là nhãn của mẫu (1

ứng với mẫu chứa đối tượng, -1 ứng với mẫu không chứa đối tượng)

2 Khởi tạo trọng số ban đầu cho tất cả các mẫu: với m là số mẫu đúng

(ứng với y = 1) và l là số mẫu sai (ứng với y = -1)

3 Xây dựng T bộ phân loại yếu:

Vòng lặp t = 1, …, T

• Với mỗi đặc trưng trong vector đặc trưng, xây dựng một bộ phân

loại yếu ℎ𝑗𝑗 với ngưỡng 𝜃𝜃𝑗𝑗 và lỗi 𝜀𝜀𝑗𝑗

• Chọn ra hj với εj nhỏ nhất, ta được ht:

• Cập nhật lại bộ trọng số:

• Trong đó:

𝑍𝑍𝑡𝑡: Hệ số dùng để đưa về đoạn [0,1] (normalization factor)

4 Bộ phân loại mạnh được xây dựng :

Trang 35

→ Trong luận văn này học viên chọn phương pháp GAB dùng để huấn luyện (phương

pháp mặc định trong quá trình chạy huấn luyện)

Chuỗi cascade các bộ phân loại được triển khai nhằm tăng tốc độ thực thi của thuật toán phát hiện Trong giai đoạn đầu của quá trình huấn luyện, ngưỡng của bộ phân loại yếu được điều chỉnh đủ thấp sao cho xấp xỉ 100% các đối tượng đích có thể được dò ra trong khi vẫn giữ tỉ lệ nhận dạng sai mẫu không tích cực gần bằng zero Sự cân bằng của một ngưỡng thấp gắn liền với tỉ lệ phát hiện sai mẫu tích cực cao hơn Một mẫu tích cực ngõ

ra từ bộ phân lớp đầu tiên là thông số đặt ngõ vào cho bộ phân lớp thứ hai, cũng sẽ được điều chỉnh sao cho đạt được tỉ lệ phát hiện rất cao Tương tự như thế, một mẫu tích cực

xuất ra từ bộ phân lớp thứ hai lại tiếp tục là thông số đặt ngõ vào cho bộ phân lớp thứ ba, quá trình như vậy cứ tiếp tục cho đến bộ phân loại cuối cùng

Các cửa sổ con là tích cực (phù hợp, dò đúng đối tượng) nếu được cho qua tại từng bộ phân lớp của chuỗi cascade đã được huấn luyện Nếu không, một ngõ ra trên chuỗi sẽ loại

bất kỳ cửa sổ không phù hợp ngay lập tức

Hình 3.7: Dùng chu ỗi cascade đã được huấn luyện để phát hiện đối tượng [4]

Trang 36

Giai đoạn huấn luyện của bộ phân loại (stage)

Thuật toán tăng tốc thích nghi được sử dụng làm phương pháp chính để phát hiện đối tượng Thuật toán tăng tốc là mô hình học máy hiệu quả được sử dụng nhiều trong các đề tài về nhận dạng Mô hình này chỉ sử dụng các bộ phân loại yếu

Tác vụ học được dựa trên N mẫu huấn luyện (𝑥𝑥1, 𝑦𝑦1), … , (𝑥𝑥𝑁𝑁, 𝑦𝑦𝑁𝑁) với 𝑥𝑥 ∈ 𝑅𝑅∗ và 𝑦𝑦 ∈ {−1,1}, 𝑥𝑥𝑖𝑖 và vector có thành tố k Mỗi thành tố k có chức năng mã hóa một đặc trưng có liên quan cho tác vụ học Ngõ ra mong muốn sau khi mã hóa có hai giá trị là -1 và 1 Trong trường hợp phát hiện đối tượng vật thể, thành tố ngõ vào 𝑥𝑥𝑖𝑖 là đặc trưng của Haar-like Các giá trị ngõ ra -1 và 1 cho biết ảnh xử lý có chứa hay là không chứa đối tượng mong muốn

 T ầng phân loại

Tầng (đợt) của bộ phân loại bao gồm các cây (tree) giá trị giảm dần sau mỗi giai đoạn (stage) mà bộ phân loại được huấn luyện để nhận dạng hầu hế t các đối tượng vật thể mong muốn, đồng thời cũng loại bỏ các đối tượng không được huấn luyện Ví dụ trong

luận văn này, các bộ phận huấn luyện qua ít nhất 12 giai đoạn (stage) Đến giai đoạn cuối cùng, giá trị false alarm = 0.512 ≈ 2.44𝑒𝑒−4 và độ trùng khít (hit rate) khoảng =0.99512 ≈ 0.941

Hình 3.8: C ấu trúc của các chuỗi cascade nối tiếp với N giai đoạn học huấn luyện [4]

Giả sử, thiết lập ban đầu với các giá trị mặc định:�𝐹𝐹𝐹𝐹𝑙𝑙𝑠𝑠𝑒𝑒 𝐹𝐹𝑙𝑙𝐹𝐹𝑟𝑟𝑚𝑚 = 0.5𝐻𝐻𝑖𝑖𝑡𝑡 − 𝑟𝑟𝐹𝐹𝑡𝑡𝑒𝑒 = 0.995

Stage1:� 𝑓𝑓 ℎ11= 0.995= 0.5

Trang 37

Tại mỗi giai đoạn huấn luyện, bộ phân loại tạo ra hit-rate h và false-alarm rate f mới, làm

ngõ vào thông số đặt cho giai đoạn huấn luyện kế tiếp sau

Ứng dụng mỗi giai đoạn được huấn luyện sử dụng một trong phương pháp tăng tốc Bộ tăng tốc có thể học huấn luyện bởi một phân loại mạnh dựa trên một tập hợp các bộ phân

loại yếu bằng cách dò lại trọng số các mẫu huấn luyện Bộ phân loại yếu được dùng cho

giai đoạn đầu của quá trình huấn luyện, dùng để tập hợp và đúc kết các đặc trưng của tập

huấn luyện Tại mỗi tầng huấn luyện, bộ phân loại dựa theo các đại lượng đặc trưng vừa

được cập nhật tại tầng kế tiếp (f,h) được thêm vào nhằm tăng thêm tính chính xác trong

quá trình tính toán trọng số đặc trưng Với việc tăng dần số giai đoạn huấn luyện và số

lượng các bộ phân loại yếu, sẽ là cần thiết để tính ra các thông số false -alarm rate f ứng

với mỗi hit-rate h đã tính được sẽ làm tăng tính chính xác cho tác vụ phát hiện đối tượng

Đặc tính co giãn vùng đặc trưng đối tượng

Không phải lúc nào đối tượng xuất hiện trong ảnh cũng xuất hiện với vị trí tọa độ hoặc

diện tích vị trí chiếm chỗ là không đổi, mà ngược lại, các đối tượng xuất hiện tại rất nhiều

vị trí khác nhau và diện tích chiếm chỗ khác nhau Do đó để có thể phát hiện ra đặc trưng đối tượng trong ảnh với diện tích chiếm chỗ khác nhau thì cần một thuật toán phát hiện đối tượng bám theo tính co giãn của đặc trưng đối tượng Một trong những ưu điểm của phương pháp đặc trưng Haar-like là dễ dàng co giãn cửa sổ đặc trưng Thuật toán này phát hiện đặc trưng với các ảnh chia nhỏ chứa các đặc trưng tìm được trong ảnh bắt đầu

từ phía trên bên trái và ảnh chia nhỏ bắt đầu được lớn dần theo hướng qua phải và hướng

Trang 38

xuống dưới Giải pháp thích hợp để khoanh vùng đặc trưng ảnh là khoanh vùng bao gồm

tất cả các ảnh chia nhỏ chứa đặc trưng vừa tìm được Khi đối tượng trong ảnh có xu hướng tăng dần diện tích chiếm chỗ trong ảnh (ví dụ trường hợp đối tượng tiến đến gần camera) thì lượng ảnh chia nhỏ tăng nhiều hơn để chứa các đặc trưng

3.2.2 Mô hình camera

Việc hiệu chỉnh camera nhằm tạo ra các thông số của camera, cho việc tái tạo không gian 3D của một cảnh nào đó trong thực tế bằng những ảnh mà camera đó chụp lại được Để

có được những thông số đó, các tính toán sau chủ yếu dựa vào mô hình camera thông

dụng nhất hiện nay: mô hình Pinhole [7]

Về mặt hình học, mô hình này bao gồm một mặt phẳng ảnh Π (Image plane) và một tâm điểm O (Eyepoint) nằm trên mặt phẳng tiêu cự Π f (Focal plane), mô hình như sau:

Hình 3.9: Mô hình Pinhole [7]

Một đặc điểm rất cơ bản của mô hình này là tất cả những điểm ảnh p trên mặt phẳng ảnh

Π được tạo thành bởi điểm vật P qua O sẽ là thẳng hàng với O và P, có nghĩa p, O, P là

nằm trên một đường thẳng Điểm O còn được gọi là tâm quang (Optical center), đường

thẳng oO vuông góc với Π và Π f được gọi là trục quang (Optical axis), o được gọi là

điểm chính (Principal point)

Gọi (O, X, Y, Z) là hệ tọa độ camera, (o, x, y) là hệ tọa độ của các điểm ảnh Ta có thể

thấy rằng rõ ràng:

Trang 39

𝑋𝑋 = 𝑦𝑦𝑌𝑌 = 𝑓𝑓𝑍𝑍 (3.3)

Từ góc độ hình học mà nói, sẽ không có sự khác biệt gì khi thay mặt phẳng Π bằng một

mặt phẳng ảo nằm ở phía bên kia mặt phẳng Π f Trong hệ tọa độ mới này, mỗi điểm (x, y)

giờ đây sẽ có tọa độ 3D là (x, y, f)

Hình 3.10: Chuyển mặt phẳng ảnh tới trước mặt phẳng tiêu cự [7]

Trong phép chiếu hình học ta đã biết rằng tất cả những điểm nằm trên một đường thẳng vuông góc với mặt phẳng chiếu thì khi chiếu xuống mặt phẳng đó ta chỉ thu được một điểm duy nhất, do đó với bất kỳ một điểm (X, Y, Z) nào đó thì t ỉ lệ sau s(X, Y, Z) hay (sX, sY, sZ) (với s bất kỳ) khi chiếu qua điểm O ta cũng chỉ thu được một điểm m(x, y)

duy nhất Từ lập luận trên và từ phương trình (3.1) ta có:

𝑥𝑥 = 𝑓𝑓𝑋𝑋𝑍𝑍 = 𝑓𝑓𝑠𝑠𝑋𝑋𝑠𝑠𝑍𝑍 ; 𝑦𝑦 = 𝑓𝑓𝑌𝑌𝑍𝑍 = 𝑓𝑓𝑠𝑠𝑌𝑌𝑠𝑠𝑍𝑍 (3.4) Phương trình (3.1) có thể được viết lại như sau:

� (3.5)

Trang 40

Trong đó : x = [x, y] và đặt x𝑇𝑇 = [x, y, 1] là vector x thêm 1 vào phần tử cuối cùng Ma

trận:

𝐿𝐿 = �𝑓𝑓 0 0 00 𝑓𝑓 0 0

gọi là ma trận chiếu phối cảnh

Như vậy với mỗi một điểm 𝑃𝑃(𝑋𝑋, 𝑌𝑌, 𝑍𝑍) và một điểm ảnh tương ứng 𝑝𝑝(𝑥𝑥, 𝑦𝑦) ta có thể viết

𝑃𝑃𝑂𝑂 = 𝑅𝑅𝑃𝑃𝑤𝑤 + 𝑇𝑇 Hay tổng quát hơn:

Ma trận R và vector T mô tả hướng, vị trí tương đối giữa hệ tọa độ camera và hệ tọa độ

thực tế Ma trận R chứa 3 phép quay theo (𝑥𝑥, 𝑦𝑦, 𝑧𝑧) và vector T chứa 3 phép tịnh tiến

Những thông số chứa trong R và T được gọi là những thông số ngoại của camera

(extrinsic parameter)

Ngày đăng: 27/01/2021, 13:50

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w