1. Trang chủ
  2. » Tất cả

Dò tìm vật mốc để điều khiển xe lăn điện đến đích dùng stereo camera

91 597 0
Tài liệu đã được kiểm tra trùng lặp

Đ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 4,84 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Trong nhiều nghiên cứu, Johann Borenstein, Yoram Koren và các cộng sự đã sử dụng cảm biến siêu âm với nhiều phương pháp để điều khiển xe lăn điện thông minh tránh vật cản [13, 14], chẳng

Trang 1

v

M C L C

Quyết định giao đề tài

Lý lịch cá nhân i

Lời cam đoan ii

Lời cảm ơn iii

Tóm tắt iv

Mục lục v

Danh sách các chữ viết tắt viii

Danh sách các bảng ix

Danh sách các hình x

Chương 1: Tổng quan 01

1.1 Tổng quan về lĩnh vực nghiên cứu 01

1.2 Các kết quả nghiên cứu trong và ngoài nước đã công bố … 02

1.3 Mục tiêu của đề tài… 04

1.4 Giới hạn đề tài… 04

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

Chương 2: Cơ s lý thuy t 06

2.1 Thị giác máy tính 06

2.1.1 Giới thiệu 06

2.1.2 Hệ thống thị giác máy tính 07

2.1.3 Lĩnh vực ứng dụng của thị giác máy tính 08

2.2 Không gian màu RGB và phương pháp nhận dạng màu sắc sử dụng không gian màu RGB 08

2.2.1 Không gian màu RGB… 08

2.2.2 Phương pháp nhận dạng màu sắc sử dụng không gian màu RGB… 09

2.3 Không gian màu HSV và phương pháp nhận dạng màu sắc sử dụng không gian màu HSV 11

Trang 2

vi

2.3.1 Không gian màu HSV… 11

2.3.2 Phương pháp nhận dạng màu sắc sử dụng không gian màu HSV… 12

2.4 Các phương pháp nhận dạng vật thể 15

2.4.1 Phương pháp so khớp đặc điểm hình học 15

2.4.2 Phương pháp nhận dạng dựa trên diện mạo 15

2.4.3 Phương pháp nhận dạng dựa trên đặc điểm cục bộ 16

2.5 Tầm nhìn lập thể… 18

2.5.1 Mô hình Camera… 19

2.5.2 Hệ thống Stereo camera… 20

2.5.3 Hình học Epipolar… 21

2.6 Các tính toán cho ảnh 3D… 22

2.6.1 Block matching… 22

2.6.2 nh trái và ảnh phải… 23

2.6.3 Tính toán Stereo Disparity… 24

2.6.4 Tính toán độ sâu của ảnh 3D… 26

2.7 Thư viện OpenCV… 26

Chương 3: Phương pháp nh n d ng v t mốc … 28

3.1 Phương pháp SURF nhận dạng vật mốc 28

3.1.1 Phát hiện điểm nổi bật 29

3.1.2 Bộ mô tả đặc điểm… 30

3.1.3 So khớp các bộ mô tả… 32

3.2 Thuật toán Homography… 34

3.3 Phương pháp xác định tâm vật mốc… 37

Chương 4: Tính toán điều khiển xe lăn đi n… 38

4.1 Phương pháp tính toán khoảng cách và góc lệch 38

4.1.1 Tính toán khoảng cách… 38

4.1.2 Tính toán góc lệch… 39

4.2 Xây dựng bản đồ khoảng cách 2D về môi trường… 40

4.3 Thuật toán điều khiển xe lăn bám vật mốc… 42

4.3.1 Tính toán sự di chuyển của xe lăn khi không có vật cản… 42

Trang 3

vii

4.3.2 Tính toán sự di chuyển của xe lăn khi có vật cản… 46

4.3.2.1 Phát hiện vật cản và khoảng trống… 46

4.3.2.2 Tính toán tránh vật cản… 46

Chương 5: Mô hình xe lăn đi n và k t qu thực nghi m 51

5.1 Mô hình xe lăn điện… 51

5.2 Kết quả thực nghiệm… 54

5.2.1 Kết quả nhận dạng vật mốc… 54

5.2.2 Các tình huống thực hiện… 55

5.2.2.1 Xe lăn di chuyển trên đường đi không có vật cản… 56

5.2.2.2 Xe lăn di chuyển trên đường đi có vật cản… 57

Chương 6: K t lu n 62

6.1 Kết quả đạt được… 62

6.2 Hạn chế của đề tài… 62

6.3 Hướng phát triển của đề tài… 62

Tài li u tham kh o 63

Phụ lục… 66

Trang 4

DLL Dynamic Link Library

EERUF Error Eliminating Rapid Ultrasonic Firing

GPS Global Positioning System

GPIO General - Purpose Input/Output

HSV Hue – Saturation - Value

LCD Liquid Crystal Display

PCA Principal component analysis

RGB Red – Green - Blue

SAD Sum of Absolute Differences

SVD Singular Value Decomposition

SURF Speeded Up Robust Features

VFH Vector Field Histogram

VFF Virtual Force Field

3D Three - Dimensional

2D Two - Dimensional

Trang 5

ix

DANH SÁCH CÁC B NG

B ng 2.1 Bảng phân tích các màu thành phần RGB của một số màu cơ bản… 10

B ng 2.2 Mô tả một số thuật toán riêng biệt của thành phần CvAux… 27

B ng 5.1 Các giá trị của tín hiệu điều khiển xe lăn điện 54

Trang 6

x

DANH SÁCH CÁC HÌNH

Hình 1.1 Sơ đồ khối biểu diễn quá trình thu thập dữ liệu từ stereo camera và xác

định các thông số cho việc điều khiển xe lăn điện 03

Hình 2.1 Sự pha trộn màu sắc trong không gian màu RGB… 09

Hình 2.2 nh cần nhận dạng màu đỏ… 10

Hình 2.3 Nhận dạng màu đỏ với m = 20… 10

Hình 2.4 Không gian màu HSV… 11

Hình 2.5 Bố trí các màu cơ bản theo góc tọa độ… 12

Hình 2.6 Nhận dạng màu đỏ sử dụng không gian màu HSV… 13

Hình 2.7 Kết quả nhận dạng và giới hạn ngưỡng so sánh… 14

Hình 2.8 nh trái và phải chụp từ stereo camera … 19

Hình 2.9 Mặt phẳng hình ảnh ở phía sau của tâm C của camera … 19

Hình 2.10 Mô hình ảnh pinhole với mặt phẳng ảnh ở phía trước tâm camera C 20

Hình 2.11 “Bumblebee” stereo camera… 21

Hình 2.12 Kích thước của "Bumblebee" stereo camera… 21

Hình 2.13 Hình học Epipolar của mặt phẳng ảnh trái ILvà phải IR… 22

Hình 2.14 Mối tương quan của hai cửa sổ 3×3 dọc theo các đường epipolar tương ứng để tìm kiếm các vùng so khớp tốt nhất… 23

Hình 2.15 nh trái và ảnh phải với 2 điểm A và B… 24

Hình 2.16 Bản đồ sự sai biệt stereo dựa trên ảnh trái và ảnh phải trong hình 2.15… 25

Hình 2.17 Tính toán độ sâu Z sử dụng tam giác đồng dạng… 26

Hình 2.18 Cấu trúc cơ bản của OpenCV… 27

Hình 3.1 Thuật toán SURF… 28

Hình 3.2 Cách tính Integral Image của ảnh… 29

Hình 3.3 Cách tính nhanh các giá trị mức xám của vùng D trên ảnh… 30

Hình 3.4 Vòng tròn bán kính 6s chứa các điểm lân cận… 31

Trang 7

xi

Hình 3.5 Bộ lọc Haar Wavelet theo trục x và y tương ứng … 31

Hình 3.6 Mô tả các đáp ứng trong ảnh … 32

Hình 3.7 So sánh các điểm nổi bật để nhận dạng hình mẫu… 33

Hình 3.8 So sánh các điểm nổi bật để nhận dạng hình mẫu… 34

Hình 3.9 Mô tả phép ánh xạ giữa hai mặt phẳng ảnh 1 và ảnh 2 thông qua chuyển đổi Homography… 35

Hình 3.10 Xác định tọa độ tâm vật mốc O trong ảnh chụp từ camera… 37

Hình 4.1 nh trái và ảnh phải với hai tâm vật mốc Oleft, Oright… 38

Hình 4.2 nh Disparity với tâm O… 39

Hình 4.3 Biểu diễn vật mốc trong miền tọa độ (XOZ)… 39

Hình 4.4 Bản đồ điểm 3D được lấy từ stereo camera… 40

Hình 4.5 Mô tả việc chuyển đổi bản đồ điểm 3D sang bản đồ 2D với độ cao Yjmin được định trước… 41

Hình 4.6 Bản đồ khoảng cách 2D theo trục X và trục Z được xây dựng từ bản đồ điểm 3D hình 4.4 42

Hình 4.7 Định vị xe lăn dựa vào vật mốc… 43

Hình 4.8 Trường hợp xe lăn ở bên trái của đường đi… 44

Hình 4.9 Các thông số mô tả cho việc di chuyển của xe lăn trong trường hợp 2 44

Hình 4.10 Trường hợp xe lăn ở bên phải của đường đi … 45

Hình 4.11 Các thông số mô tả cho việc di chuyển của xe lăn trong trường hợp 3… 45

Hình 4.12 Lưu đồ điều khiển xe lăn tránh vật cản… 47

Hình 4.13 Mô tả vật cản trên đường di chuyển của xe lăn… 47

Hình 4.14 Xe lăn di chuyển về khoảng trống bên phải và tránh vật cản … 48

Hình 4.15 Xe lăn di chuyển về khoảng trống bên trái và tránh vật cản … 49

Hình 5.1 Mô hình xe lăn điện… 51

Hình 5.2 Các thiết bị cần thiết trong một chiếc xe lăn di động… 52

Hình 5.3 Sơ đồ khối mô tả hoạt động của hệ thống xe lăn điện … 53

Hình 5.4 Biểu đồ so sánh khả năng nhận dạng vật mốc với góc lệch và khoảng cách giữa vật mốc và camera khác nhau… 54

Hình 5.5 Kết quả nhận dạng vật mốc: số 2 ở hình (a) và số 3 ở hình (b)… 55

Trang 8

xii

Hình 5.6 Kết quả nhận dạng vật mốc: số 4 ở hình (a) và số 5 ở hình (b)… 55

Hình 5.7 Xe lăn nhận biết phía trước là vùng trống thông qua bản đồ 2D… 56

Hình 5.8 Xe lăn bám theo vật mốc để di chuyển ở giữa đường… 56

Hình 5.9 Xe lăn dừng lại khi đi đến vị trí vật mốc thứ 5 (điểm đích)… 57

Hình 5.10 Xe lăn phát hiện vật cản và các khoảng trống dựa vào bản đồ 2D… 57

Hình 5.11 Xe lăn phát hiện khoảng trống bên phải và di chuyển vượt qua vật cản… 58

Hình 5.12 Xe lăn phát hiện vật cản và các khoảng trống dựa vào bản đồ 2D… 59

Hình 5.13 Xe lăn phát hiện khoảng trống bên trái và di chuyển vượt qua vật cản… 60

Hình 5.14 Xe lăn dừng lại khi đi đến vị trí vật mốc thứ 5 (điểm đích)… 60

Trang 9

- 1 -

Chương 1

T NG QUAN

1.1 Tổng quan chung về lĩnh vực nghiên cứu

Xe lăn là phương tiện chủ yếu để người khuyết tật có thể di chuyển đến nơi

mà mình mong muốn Ngoài loại xe lăn cổ điển thì sự xuất hiện của loại xe lăn

có trang bị động cơ đã giúp cho người sử dụng giảm được nhiều sự vận động Cùng với sự phát triển của khoa học kỹ thuật, xe lăn cũng đã có nhiều phát triển

Đã có nhiều nghiên cứu nhằm tìm ra các phương thức điều khiển xe lăn áp dụng cho từng đối tượng người khuyết tật khác nhau Xe lăn điện được trang bị các thiết bị công nghệ cao có thể giúp cho người khuyết tật di chuyển mà không cần

sự trợ giúp Đơn giản nhất là xe lăn điện được trang bị Joystick (một cần điều khiển) mà người sử dụng có thể điều khiển hướng di chuyển của xe lăn theo ý muốn của mình Để hỗ trợ tốt hơn cho người khuyết tật, đã có nhiều hướng nghiên cứu điều khiển xe lăn điện dựa vào các hành vi của người sử dụng Jin Sun Ju và các cộng sự đã sử dụng một camera nhận dạng các cử chỉ trên khuôn mặt của người sử dụng để điều khiển xe lăn đi thẳng, đi lùi, rẽ trái, rẽ phải [1] Cũng sử dụng camera nhận dạng cử chỉ còn có nghiên cứu của Y Zhang và các cộng sự [2] Y Zhang đã dùng camera để nhận dạng các cử chỉ của bàn tay để điều khiển hướng đi cho xe lăn điện Ngoài ra, người khuyết tật có thể điều khiển

xe lăn bằng cách giao tiếp tín hiệu não với máy tính (BCI) [3-5]

Tuy nhiên, trong một số trường hợp đặc biệt, khi mà khả năng vận động của người khuyết tật bị hạn chế hay nói cách khác là người khuyết tật không thể tự điều khiển được xe lăn theo ý muốn, xe lăn cần được điều khiển tự động Chế độ

tự động của xe lăn đồng nghĩa với việc xe lăn phải tự di chuyển đến đúng nơi mà người sử dụng mong muốn, đồng thời phải tránh được những vật cản trên đường

đi Trong những năm gần đây, đã có nhiều phương pháp được áp dụng để xe lăn

tự hành như di chuyển theo đường đi đã được vạch sẵn [6], di chuyển theo tọa độ

Trang 10

- 2 -

sử dụng định vị GPS và bộ lọc Kalman [7], sử dụng các cảm biến để định vị và điều khiển xe lăn [8-12]…

Trong quá khứ cảm biến siêu âm và tia laser được lựa chọn cho các ứng dụng Trong nhiều nghiên cứu, Johann Borenstein, Yoram Koren và các cộng sự

đã sử dụng cảm biến siêu âm với nhiều phương pháp để điều khiển xe lăn điện thông minh tránh vật cản [13, 14], chẳng hạn như phương pháp loại bỏ nhanh các sai số của việc phát sóng siêu âm (EERUF), phương pháp biểu đồ trường véc tơ (VFH), phương pháp trường cưỡng bức ảo (VFF).Tuy nhiên khi lĩnh vực thị giác máy tính phát triển, nó trở thành một tiềm năng lớn Camera ngày càng được sử dụng nhiều do khả năng cung cấp thông tin về môi trường chính xác hơn các loại cảm biến như siêu âm, tia laser Camera có thể cung cấp các thông tin về màu sắc, thông tin 3D về môi trường trong khi các cảm biến như siêu âm, tia laser chỉ cung cấp thông tin 2D Nhóm Don Murray đến từ Khoa khoa học máy tính trường đại học British Columbia [15] và nhóm của Nguyễn Thanh Hải [16] đã sử dụng camera với các thuật toán áp dụng vào việc phát hiện vật cản, tìm khoảng trống để xe lăn điện vượt qua vật cản Hệ thống này có thể giúp người sử dụng cảm thấy an toàn hơn khi di chuyển trong khu vực có nhiều chướng ngại vật

Sự kết hợp giữa thuật toán phát hiện vật cản, tìm khoảng trống và định vị cho

xe lăn bằng các vật mốc sử dụng camera mở ra một hướng nghiên cứu mới Nhận dạng vật mốc cho xe lăn tự hành [17] được thực hiện để phát hiện và phân biệt các vật mốc trên đường đi của xe lăn, từ đó áp dụng vào việc xác định vị trí hiện tại của xe lăn trong quá trình di chuyển Alcantarilla và các cộng sự đề xuất phương pháp mạnh mẽ và nhanh chóng định vị cho xe lăn dựa vào thị giác máy tính, trong đó các đặc trưng của hình ảnh được trích xuất, kết hợp với các thành phần bản đồ để đưa ra vị trí hiện tại của robot tự hành [18, 19] Với các thuật toán này, xe lăn có thể tự động điều hướng, dọc theo đường đi từ vị trí bắt đầu đến vị trí đích

Sự kết hợp của một chiếc xe lăn điện và hệ thống stereo camera cho phép xe lăn di chuyển trong môi trường trong nhà linh hoạt hơn Với hệ thống camera, xe lăn có thể xác định vật mốc và di chuyển dọc theo lối đi Trong quá trình di

Trang 11

- 3 -

chuyển của xe lăn, khoảng cách và góc lệch giữa vật mốc và xe lăn được tính toán để đưa ra quyết định cho di chuyển của xe lăn như hình 1.1

Hình 1.1 Sơ đồ khối biểu diễn quá trình thu thập dữ liệu từ stereo camera và

xác định các thông số cho việc điều khiển xe lăn điện

Với những ưu điểm của việc sử dụng camera cho xe lăn điện tự hành, để tài “

Dò tìm vật mốc để điều khiển xe lăn điện đến đích dùng Stereo camera” được

lựa chọn để nghiên cứu Stereo camera với "hai mắt" là một bộ phận của hệ thống

xe lăn thông minh, cung cấp hình ảnh stereo Từ những hình ảnh stereo, hệ thống này phát hiện chướng ngại vật và vùng trống bởi các thuật toán, sau đó chiếc xe lăn có thể tránh va chạm và đi qua vùng trống Thuật toán nhận dạng vật mốc SURF được áp dụng để phát hiện và phân biệt các vật mốc Các phép chiếu hình học và các công thức lượng giác được sử dụng để tính toán các thông số, phục vụ cho việc định vị cho xe lăn Xe lăn có thể di chuyển từ điểm xuất phát cho đến đích và tránh vật cản trên đường đi một các tự động

1.2 Các k t qu nghiên cứu trong nước và ngoài nước đã công bố

Trong lĩnh vực mà người viết nghiên cứu đã có một số nghiên cứu trong và ngoài nước:

nh vật mốc lấy từ Stereo camera

Dữ liệu ảnh vật mốc lấy từ máy tính

Nhận dạng vật mốc

Tính toán tọa độ vật mốc

từ ảnh chụp camera

Xác định khoảng cách và góc lệch giữa xe lăn và vật

mốcTính toán điều khiển xe lăn

Trang 12

- 4 -

 Xe lăn điện điều khiển bằng hướng nhìn (cử động mắt) - Nguyễn Hữu Cường (Bộ môn tự động hóa, khoa công nghệ Trường ĐH Cần Thơ), người từng đoạt giải nhất “Tuổi trẻ và tự động hóa” năm 2003, do Hội Tự động hóa VN tổ chức

 Xe lăn điện điều khiển bằng nét mặt - Aachen, Đức

 Xe lăn thông minh Aviator điều khiển bằng suy nghĩ - GS Nguyễn Tấn Hùng, Trưởng khoa Kỹ thuật và công nghệ thông tin của Đại học Công nghệ Sydney

 Xe lăn điều khiển bằng nhịp thở - Viện nghiên cứu Khoa học Weizman, Rehovot, Israel

1.3 Mục tiêu của đề tài

Mục tiêu của đề tài là nhận dạng và dò tìm các vật mốc trong môi trường đã định sẵn sử dụng Stereo camera, từ đó xây dựng thuật toán điều khiển cho xe lăn điện đi đến đích theo yêu cầu của người sử dụng Trong quá trình di chuyển, xe lăn có khả năng phát hiện và tránh vật cản Việc tìm đường và đích đến dựa vào các vật mốc được sắp đặt trên đường đi, kết hợp với thông tin 3D về vật mốc được cho bởi Stereo camera để tính toán vị trí vật mốc, từ đó xác định vị trí của

xe lăn điện trên đường đi

1.4 G iới h n đề tài

Môi trường thực hiện đề tài là môi trường trong nhà với điều kiện ánh sáng tốt Loại vật mốc và số lượng đích cần tìm chưa nhiều Các thí nghiệm được thực hiện trên một đoạn đường ngắn, với các vật cản không quá phức tạp

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

 Phương pháp phân tích: nghiên cứu, phân tích tìm hiểu và áp dụng các phương pháp xử lý ảnh số như phân tích không gian màu của ảnh số, nhận dạng màu sắc, các phương pháp nhận dạng vật thể, các tính toán cho ảnh stereo …

 Phương pháp thực nghiệm: đề tài nghiên cứu kết hợp thư viện xử lý ảnh OpenCV, ngôn ngữ lập trình C++ và phần mềm LabVIEW để thực hiện

Trang 13

- 5 -

các thuật toán nhận dạng vật mốc, phát hiện vật cản và khoảng trống để điều khiển xe lăn điện Bên cạnh đó, một xe lăn điện với hệ thống Stereo camera được sử dụng để tiến hành thực nghiệm trong môi trường trong nhà

 Phương pháp đánh giá kết quả: so sánh kết quả thực nghiệm trong môi trường thực với các thông số tính toán của thuật toán để đưa ra mức độ chính xác của thuật toán

Trang 14

việc tính toán các thông số dùng để áp dụng vào các thuật toán được sử dụng trong đề tài

Thị giác máy tính bao gồm lý thuyết và các kỹ thuâ ̣t liên quan nhằm mục đích tạo ra một hệ thống nhân tạo có thể tiếp nhâ ̣n thông tin từ các hình ảnh thu được hoặc từ các tâ ̣p dữ liệu đa chiều Đối với con người, việc nhận thức môi trường xung quanh là một điều dễ dàng Tuy nhiên đối với máy tính hay một hệ thống xử lý thì điều này hoàn toàn khó khăn Thị giác máy tính cung cấp cho máy tính hay một hệ thống xử lý các thông tin về môi trường bên ngoài thông qua hình ảnh chụp lại từ máy chụp ảnh Các thông tin này qua quá trình phân tích , xử

lý và kết hợp với các mô hình như máy học, fuzzy, mạng nơron sẽ giúp cho thiết bị tiến dần tới một hệ thống nhân tạo có khả năng ra quyết định chính xác và linh hoạt hơn rất nhiều

Lĩnh vực nghiên cứu của thị giác máy tính rất đa dạng và liên quan đến nhiều lĩnh vực khác nhau Sẽ có rất nhiều hướng giả quyết, phương pháp thực hiện

Trang 15

- 7 -

tương ứng áp dụng cho các lĩnh vực Mỗi hướng giải quyết, mỗi phương pháp đều đạt được một kết quả nhất định cho những trường hợp cụ thể trong các ứng dụng khác nhau

2.1.2 H thống thị giác máy tính

Cấu trúc của một hệ thống thị giác máy tính phụ thuộc nhiều vào ứng dụng

cụ thể của hệ thống đó, vì thế mỗi một hệ thống lại có một cấu trúc riêng biệt Tuy nhiên, khi tổng hợp những cấu trúc này lại thì có thể nhâ ̣n thấy được các thành phần đặc trưng thường xuất hiện trong một hệ thống thị giác

Thu thập hình ảnh: Quá trình này thu thâ ̣p d ữ liệu ảnh từ các máy chụp

ảnh

Tiền xử lý: nh sau khi được thu thâ ̣p c ần phải qua quá trình tiền xử lý

ảnh để thỏa mãn một số yêu cầu như lấy mẫu lại để hiệu chỉnh tọa độ điểm các ảnh liên tiếp, loại bỏ nhiễu để giảm thông tin sai hay tăng độ tương phản để đảm bảo xác định được các thông tin cần thiết

Trích xuất đặc điểm: Dữ liệu trong một ảnh là rất nhiều tuy nhiên không

phải dữ liệu nào cũng hữu ích Vì thế trong giai đoạn này, hệ thống sẽ trích xuất ra những đặc điểm cơ bản nhất trong ảnh phục vụ cho các quá trình tiếp theo Những đặc điểm này thường là đường thẳng, cạnh, góc và đặc điểm phức tạp như dấu vân, hình dáng hay chuyển động

Dò tìm hay phân vùng: Đối tượng cần quan tâm có thể nằm ở bất kỳ đâu

trong một ảnh, vì thế cần phân ảnh thành những vùng ảnh và tìm ra vùng ảnh quan tâm hoặc chứa đối tượng quan tâm để xử lý Muốn phân vùng

phải dựa vào những đặc điểm của ảnh

Xử lý mức cao: buớc này các tâ ̣p d ữ liệu chỉ là một tâ ̣p điểm ảnh hoặc

vùng ảnh chứa đối tượng cần quan tâm và những đặc điểm của đối tượng

đã được trích xuất ra Vấn đề còn lại là sử d ụng các thuâ ̣t toán đ ể xử lý đối tượng theo yêu cầu đề ra

Trang 16

- 8 -

2.1.3 Lĩnh vực ứng dụng của thị giác máy tính

Thị giác máy tính có tính ứng dụng cao, từ những lĩnh vực khoa học, y học, sản xuất cho đến quân sự Đầu tiên có thể kể đến là ứng dụng trong y học Việc chuẩn đoán bệnh cho các bệnh nhân có thể được hỗ trợ từ hệ thống thị giác máy tính thông qua việc phân tích và trích xuất những thông tin đặc trưng từ ảnh Những ảnh này được chụp từ kính hiển vi, máy X quang, chụp động mạch, siêu

âm hay từ máy chụp cắt lớp Ngoài ra thị giác máy tính cũng có thể hỗ trợ việc đo kích thước cơ quan, lưu lượng máu, cấu trúc tế bào Thứ hai là trong công nghiệp, trong lĩnh vực này thị giác máy tính đôi khi còn được gọi là thị giác máy Thông tin đặc trưng trong ảnh giúp kiểm soát quá trình sản xuất như chất lượng sản phẩm, tìm kiếm lỗi khuyết tâ ̣t , kích thước sản phẩm hay vị trí và hướng của cánh tay robot Trong quân sự, hệ thống thị giác máy tính được ứng dụng trong

hệ thống phát hiện chuyển động , nhâ ̣n dạng, hay phức tạp hơn là hướng dẫn hệ thống tên lửa Một ứng dụng khác khá phổ biến của thị giác máy tính là cho phương tiện tự hành , từ tàu lặn, máy bay không người lái , hệ thống hỗ trợ lái xe phát hiện vâ ̣t cản Ngoài ra còn rất nhiều những ứng dụng hữu ích khác trong thực tế

2.2 Không gian màu RGB và phương pháp nh n d ng màu sắc s dụng không gian màu RGB

2.2.1 Không gian màu RGB

Mô hình màu RGB là một mô hình trong đó màu đỏ, xanh lá cây và màu xanh da trời là 3 thành phần màu cơ bản được trộn vào theo những cách khác nhau để tạo ra một loạt các màu sắc Màu sắc và cường độ của nó phụ thuộc vào

tỷ lệ của các màu cơ bản Thành phần màu còn được gọi là kênh màu hoặc mặt phẳng màu Trong mô hình màu RGB, một ảnh màu có thể được đại diện bởi hàm cường độ

IRGB = (FR, FG, FB) (2.1)

Trang 17

- 9 -

Trong phương trình (2.1), F R (x, y) là cường độ trong kênh màu đỏ, F G (x, y)

cường độ trong kênh màu xanh lá cây và F B(x, y) là cường độ trong kênh màu xanh da trời của điểm ảnh F(x, y)

Cường độ của mỗi kênh màu thường được lưu trữ bằng cách sử dụng 8 bit, tương ứng 256 mức lượng tử Do đó, một điểm ảnh trong một ảnh màu yêu cầu

24 bit để lưu trữ Một bộ nhớ 24 bit có thể diễn tả 16.777.216 màu sắc khác biệt

Số lượng các màu sắc phải đáp ứng đầy đủ các hiệu ứng hiển thị của hầu hết các hình ảnh

Hình 2.1 Sự pha trộn màu sắc trong không gian màu RGB

2.2.2 Phương pháp nh n d ng màu sắc s dụng không gian màu RGB

Phương pháp nhận dạng màu sắc sử dụng không gian màu RGB là một phương pháp đơn giản, có hiệu quả trong một số trường hợp cụ thể

Phương pháp này dựa vào giá trị các màu thành phần RGB trong một điểm ảnh để nhận dạng màu sắc của điểm ảnh đó Chẳng hạn đối với một điểm ảnh có giá trị các màu thành phần là (255,0,0), dựa vào bảng 2.1 có thể kết luận điểm ảnh đó có màu đỏ

Trang 18

- 10 -

#RRGGBB

Mã th p phân (R,G,B)

Trang 19

- 11 -

Phân tích ảnh màu như hình 2.2, có một quả bóng màu đỏ ở giữa ảnh Nhận thấy rằng các điểm ảnh trong quả bóng này sẽ có thành phần màu đỏ nhiều hơn

bất kỳ các điểm ảnh khác và đồng thời ta có: (F R > m + F G , F R > m + F B ), trong

đó m là giá trị ngưỡng được xác định dựa vào bảng phân tích thông số màu sắc Tiến hành thực hiện việc so sánh trên tất cả các điểm ảnh Điểm ảnh nào thỏa điều kiện được chuyển thành điểm ảnh màu trắng trong ảnh đơn sắc và ngược lại, điểm ảnh nào không thỏa điều kiện được chuyển thành điểm ảnh màu đen như hình 2.3

Đối với việc nhận dạng các màu khác cũng được thực hiện tương tự như đối với quá trình nhận dạng màu đỏ

2.3 Không gian màu HSV và phương pháp nh n d ng màu sắc s dụng không gian màu HSV

2.3.1 Không gian màu HSV

HSV (Hue – Saturation - Value) là biểu diễn về màu sắc, độ bão hòa và độ sáng của một điểm ảnh trong mô hình màu RGB dưới dạng một tọa độ hình trụ

Hình 2.4 Không gian màu HSV

Trong hình 2.4, các góc xung quanh trục thẳng đứng tương ứng với "màu sắc", khoảng cách từ trục tương ứng với "độ bão hòa" và khoảng cách dọc theo trục tương ứng với "độ sáng" Thành phần màu bắt đầu từ màu đỏ chính ở 0°, đi qua các màu xanh lá cây chính ở 120°, màu xanh da trời chính ở 240°, và sau đó trở lại màu đỏ ở 360° Các trục dọc trung tâm bao gồm các màu sắc trung tính,

Trang 20

- 12 -

không sắc, hoặc màu xám, dao động từ màu đen nhạt ở giá trị 0 phía dưới đến màu trắng nhạt ở giá trị 1 phía trên Trong HSV, pha trộn những màu sắc tinh khiết với màu trắng tạo ra sắc thái màu, làm giảm độ bão hòa; khi pha trộn với màu đen tạo ra độ bóng, giữ lại độ bão hòa không thay đổi

Hình 2.5 Bố trí các màu cơ bản theo góc tọa độ

HSV là mô hình được xây dựng từ khối lập phương RGB, với số lượng thành phần của màu đỏ, xanh lá cây và màu xanh da trời ký hiệu là R, G, B ∈ [0, 1], và xoay nó trên góc của nó Màu đen được đặt tại gốc cùng với màu trắng theo trục thẳng đứng, sau đó đo màu sắc trong hình khối bằng góc của chúng xung quanh trục thẳng đứng, bắt đầu với màu đỏ ở 0° Tiếp đến là đưa ra một đặc tính của độ sáng và xác định độ bão hòa nằm trong khoảng từ 0 dọc theo trục đến 1 tại điểm đầy đủ màu sắc nhất cho mỗi cặp của các thông số khác

2.3.2 Phương pháp nh n d ng màu sắc s dụng không gian màu HSV

Một ảnh HSV được chuyển đổi từ ảnh RGB Mỗi điểm ảnh chứa đựng 3 kênh thông tin về màu sắc, độ bão hòa, độ sáng

I HSV = (F H , F S , F V )

Trong đó 0 0 ≤ ạH ≤ 360 0

, 0 ≤ ạS ≤ 1, 0 ≤ ạV ≤ 1

Trong OpenCV, khi chuyển đổi ảnh RGB sang ảnh HSV thì thông tin về màu

sắc (F H) sẽ được lưu trữ trong mảng 8 bit, có giá trị từ 0 – 179; độ bão hòa và độ sáng cũng được lưu trữ trong mảng 8 bit có giá trị từ 0 – 255

(2.2)

Trang 21

- 13 -

Quá trình nhận dạng màu sắc của các điểm ảnh trong ảnh màu sẽ được thực hiện dựa vào không gian màu HSV Màu sắc của một vật thể khi được chụp từ camera trên thực tế phụ thuộc vào cường độ ánh sáng, độ nhạy cảm biến, góc nhìn… nên màu sắc mà chúng ta muốn nhận dạng sẽ không phải là một giá trị cố định mà sẽ nằm trong một dải các giá trị được giới hạn bởi hsv_min và hsv_max

Ví dụ như muốn nhận dạng màu đỏ, ta có thể chọn dải màu đỏ tương ứng bằng cách sử dụng một số phần mềm đơn giản để lấy các thông số cho hsv_min và hsv_max

Trang 22

(d)

hsv_min(0, 140, 80 ) hsv_max(10, 255, 255)

(f)

hsv_min(0, 80, 130 ) hsv_max(5, 230, 200)

(e)

hsv_min(0, 160, 180 ) hsv_max(5, 255, 255)

(a)

Trang 23

- 15 -

dễ dàng hơn so với việc lựa chọn ngưỡng trong không gian màu RGB và việc nhận dạng màu sắc thực tế đạt được độ tin cậy cao hơn Đây được xem như là yếu tố quan trọng trong việc nhận dạng đúng màu sắc theo yêu cầu

2.4 Các phương pháp nh n d ng v t thể

2.4.1 Phương pháp so khớp đặc điểm hình học

Nội dung của phương pháp là tìm sự tương đồng về mặt cấu trúc hình học của vâ ̣t thể được xem xét trong một ảnh với mô hình vâ ̣t thể mẫu đã được xây dựng Mô hình vâ ̣t thể mẫu là mô hình cấu trúc không gian ba ch iều được xây dựng từ những thông tin về vâ ̣t thể trong các ảnh Những ảnh này là ảnh hai chiều

và là ảnh chụp vâ ̣t thể từ nhiều hướng khác nhau , thông tin được lấy ra qua quá trình xử lý thường là cạnh , đường thẳng, các đỉnh hoặc đường bao u điểm của

phương pháp này là:

Cấu trúc hình học không thay đổi khi thay đổi góc nhìn: thông thường

ảnh chụp vâ ̣t th ể là ảnh của mô hình cấu trúc ba chiều của vâ ̣t th ể khi chiếu lên một mặt phẳng nào đó Vì thế khi thay đổi góc nhìn thì cấu trúc hình học của vâ ̣t thể không thay đổi

Cấu trúc hình học không thay đổi khi thay đổi nguồn sáng: cấu trúc hình

học được xây dựng trên những đặc điểm cạnh và đường bao nên không thay đổi khi nguồn sáng thay đổi

2.4.2 Phương pháp nh n d ng dựa trên di n m o

Phương pháp so khớp đặc điểm hình học phải xây dựng cấu trúc hình học từ

tâ ̣p ảnh của vâ ̣t mẫu thì phương pháp nhâ ̣n dạng dựa trên diện mạo sử dụng luôn

tâ ̣p ảnh về hình dạng vâ ̣t mẫu để so sánh nên phương pháp này có thể nhâ ̣n dạng

vâ ̣t thể đa dạng hơn Phương pháp này bao gồm hai giai đoạn thực hiện:

Ảiai đoạn huấn luyện (offline): Trong giai đoạn này các tâ ̣p ảnh mẫu của

vâ ̣t thể được thu thâ ̣p Tâ ̣p ảnh vâ ̣t thể được chụp dưới nhiều góc nhìn và cường độ, hướng ánh sáng khác nhau hoặc nhiều đối tượng cùng một lớp

vâ ̣t thể Tâ ̣p ảnh thường có sự tương quan cao nên để giảm số lượng ảnh

Trang 24

- 16 -

trong tâ ̣p ảnh thì các nhà nghiên cứu thường sử dụng phương pháp phân tích thành phần chính (PCA)

Ảiai đoạn nhận dạng (online): Các ảnh đầu vào được xử lý và sau đó

đem so sánh với tâ ̣p vâ ̣t mẫu, Các ảnh này thường có kích thước bằng với ảnh tâ ̣p mẫu

Trong giai đoạn huấn luyện ngoài việc giảm số lượng ảnh thì cần phải giảm

dữ liệu không cần thiết trong ảnh bằng cách biểu diễn ảnh chứa vâ ̣t thể trong không gian eigen dưới dạng vectơ hoặc đa điểm Một cách tiếp câ ̣n khác của phương pháp nhâ ̣n dạng dựa trên diện mạo là biểu diễn vâ ̣t thể trong không gian màu Trong phương pháp chỉ số hóa màu sắc, đặc điểm màu sắc được xây dựng thành biểu đồ màu sắc 3 chiều (3D color histogram) từ tâ ̣p hình ảnh về vâ ̣t th ể dưới nhiều góc quan sát khác nhau Biểu đồ màu sắc là không thay đổi dù cho có thay đổi góc quan sát Để nhâ ̣n dạng vâ ̣t thể thì chỉ cần so sánh màu sắc của ảnh chứa vâ ̣t thể với biểu đồ màu sắc

2.4.3 Phương pháp nh n d ng dựa trên đặc điểm cục bộ

Phương pháp này được xây dựng dựa trên việc so khớp giữa các đặc điểm cục bộ, những đặc điểm này là những tâ ̣p điểm ảnh nổi bâ ̣t thường là tại những điểm mà cường độ ánh sáng bị gián đoạn Những điểm này là bất biến dù cho tỉ

lệ kích thước hoặc nguồn ánh sáng thay đổi, do đó có thể mô tả được những vâ ̣t thể có hình dáng phức tạp Những ưu điểm chính của phương pháp nhâ ̣n dạng dựa trên đặc điểm cục bộ:

 Cấu trúc vâ ̣t thể sẽ được học tự động bằng việc cung cấp tâ ̣p ảnh mẫu

 Việc biểu thị vâ ̣t thể thông qua những đặc điểm bất biến dễ dàng hơn biểu thị bằng hình dạng cơ bản , nhất là trong những trường hợp hình dạng vâ ̣t thể phức tạp

 Có thể nhâ ̣n dạng vâ ̣t thể mà không cần tách vâ ̣t thể ra khỏi nền ảnh và ngay cả khi vâ ̣t thể đó nằm cùng với những vâ ̣t thể khác

Trang 25

Tập dữ liệu dò tìm: trong giai đoạn đầu tiên các thành phần điểm ảnh nổi

bâ ̣t sẽ được dò tìm và được tâ ̣p hợp thành tâ ̣p dữ liệu dò tìm, những thành

phần này được xem như ”vị trí mỏ neo” trong ảnh Một thành phần điểm ảnh được gọi là nổi bâ ̣t khi thành ph ần này miêu tả một phần vâ ̣t th ể và không thay đổi dù cho các thuộc tính như kích thước, nguồn sáng của ảnh thay đổi Thông thường tại những vùng điểm ảnh đó cường độ sáng bị gián đoạn, do đó để phát hiện những thành phần này thường sử dụng các phương pháp đạo hàm kết hợp như đạo hàm Laplace, đạo hàm Gause, đạo hàm Hessian-Laplace…

Bộ mô tả: các thành phần đặc điểm cục bộ sau khi dò tìm cần phải xây

dựng bộ mô tả các thành phần này Bộ mô tả biểu thị mối quan hệ về mặt không gian giữa các thành phần đặc điểm cục bộ với các điểm ảnh lân

câ ̣n nhằm mục đích xác định vị trí của các thành phần này trong ảnh Yêu

cầu cho một bộ mô tả là phải đảm bảo phân biệt được các thành phần đặc điểm của vâ ̣t thể trong một tâ ̣p dữ liệu và không bị ảnh hưởng bởi tâ ̣p dữ

liệu dò tìm

Chỉ số hóa: Trong quá trình học, các bộ mô tả được thiết lâ ̣p và lưu tr ữ

trong một cơ sở dữ liệu Khi nhâ ̣n dạng vâ ̣t thể, bộ mô tả cũng được tính toán từ ảnh thu thâ ̣p và được so sánh với bộ mô tả trong cơ sở dữ liệu Do

đó cơ sở dữ liệu phải được sắp xếp sao cho việc nhâ ̣n d ạng đạt hiệu quả cao về độ chính xác lẫn thời gian Việc sắp xếp là việc chỉ số hóa các bộ miêu tả, điều này phụ thuộc vào thuộc tính của bộ mô tả và phép đo khoảng cách Thông thường việc tìm kiếm trong cơ sở dữ liệu theo phương pháp tuần tự không sử dụng cấu trúc chỉ số hóa

Trang 26

- 18 -

So khớp: Khi nhâ ̣n dạng vâ ̣t thể trong một ảnh, các đặc điểm cục bộ cũng

được phát hiện theo cách thức giống như đối với ảnh mẫu Sau đó các bộ miêu tả trong ảnh sẽ được so khớp với bộ miêu tả trong cơ sở dữ liệu Quá trình so khớp là việc tính toán khoàng cách clit hoặc mahalanobis

giữa đặc điểm của ảnh và đặc điểm trong cơ sở dữ liệu, nếu khoảng cách này nằm trong khoảng cho phép thì hai bộ mô tả là tương đồng nhau

Kiểm tra: độ tin câ ̣y c ủa các phép đo không đủ để đảm bảo cho phép

khẳng định sự tương đồng giữa các bộ mô tả, vì thế bước cuối cùng trong quá trình nhâ ̣n d ạng là kiểm tra Việc kiểm tra thông qua phép biến đổi toàn cục dựa trên dạng liên kết hình học epipolar cho mô hình vâ ̣t th ể ba chiều hoặc hình dạng chung cho mô hình vâ ̣t thể phẳng

2.5 Tầm nhìn l p thể

Hai mắt của con người được đặt cách nhau một khoảng không gian nhất định (trung bình khoảng 6.25 cm) Do vậy khi hai mắt người nhìn vào một vật thể (hiểu cả theo nghĩa hẹp là một vật cụ thể hoặc nghĩa rộng là cả không gian rộng lớn quanh ta) thì hình ảnh mà hai mắt cảm thụ được sẽ khác nhau vì hai góc nhìn

là khác nhau

Hai hình ảnh xem từ mắt trái và mắt phải sẽ được bộ não (cụ thể là hệ thống thần kinh thị giác), hoạt động như “một bộ xử lý ảnh”, hợp nhất lại để tạo thành một ảnh thụ cảm 3D đơn, đem lại cảm nhận về chiều sâu của sự vật ng dụng hiện tượng này các nhà nghiên cứu đã đề ra các giải pháp để tạo ra hình ảnh nổi cho phim và truyền hình Đây cũng chính là nguyên lý cơ bản mà các camera 3D mới hiện nay làm việc

Một hệ thống stereo camera cho chúng ta thu được những hình ảnh 3 chiều

(3D) Đặc biệt, hệ thống stereo camera cung cấp hình ảnh trái và phải, với mỗi

camera chụp một hình ảnh khác nhau Thông tin môi trường thu được từ những hình ảnh hỗ trợ trong các ứng dụng khác nhau Nhiều nghiên cứu gần đây tập trung vào những thông tin hình ảnh 3D có được từ stereo camera

Trang 27

- 19 -

Hình 2.8 nh trái và phải chụp từ stereo camera

Các ảnh thu được từ 2 camera sẽ được kết hợp lại, sử dụng các phép chiếu hình học để chuyển đưa những dòng điểm ảnh theo chiều ngang, phù hợp với mặt phẳng ảnh Trong quá trình này, phương pháp dò tìm cạnh được sử dụng để xác định sự khác biệt giữa hình ảnh trái và hình ảnh phải trong một môi trường Lợi

thế chính của việc sử dụng stereo camera là có thể khắc phục vấn đề định hướng

Một bản đồ 3D sẽ cung cấp nhiều thông tin hơn so với bản đồ 2D sử dụng cảm biến laser hay cảm biến siêu âm Trong một bản đồ 3D một chướng ngại vật được nhìn từ các góc độ mong muốn

2.5.1 Mô hình Camera

Hình 2.9 Mặt phẳng hình ảnh ở phía sau của tâm C của camera

Theo hình 2.9, ta có thể xem xét một mô hình hình ảnh pinhole Trong không gian thực, định nghĩa tọa độ của điểm cảnh P = [X, Y, Z] T

Trang 28

- 20 -

hình ảnh I và tâm ống kính O thông qua trục chính Mặt phẳng ảnh I chứa điểm ảnh p = [X, Y] T là phép chiếu ảnh của điểm cảnh P = [X, Y, Z] T tại mặt phẳng này và đường thẳng đi qua tâm C của camera, trục z là trục ống kính [20] Mối quan hệ tọa độ giữa các điểm cảnh P và các điểm ảnh p thể hiện như sau:

f y

x p

Trong phương trình này, f là khoảng cách từ tâm camera C đến tâm O của

f y

x p

Với dấu trừ ở công thức này, điểm ảnh p và điểm cảnh P là trong cùng một

Trang 29

- 21 -

Hình 2.11 “Bumblebee” stereo camera

Hệ thống camera có 2 cổng kết nối với máy tính: kết nối 12 PIN GPIO và kết nối IEEE 1394A

Hình 2.12 Kích th ước của "Bumblebee" stereo camera

2.5.3 Hình học Epipolar

Hình học Epipolar là hình học của thị giác stereo Như trong hình 2.13, e R

e L nằm trên đường cơ sở B được nối bởi tâm của hai camera, C R và C L Trong mô

Trang 30

- 22 -

hình này, từ một điểm vật cản P nằm trong không gian thực, có hai điểm ảnh p R

trong mặt phẳng ảnh I R và p L nằm trong mặt phẳng ảnh IL

Hình 2.13 ảình học Epipolar của mặt phẳng ảnh trái IL và phải IR

Trong hai mặt phẳng ảnh I L và I R, một điểm ảnh trái pL có một đường

epipolar tương ứng l R trong mặt phẳng ảnh I R Tương tự như vậy, một điểm ảnh

p R có một đường epipolar tương ứng l L trong mặt phẳng ảnh I L Điều này có

nghĩa là thông qua tâm bên trái C L của camera đầu tiên, dòng epipolar bên phải lR

tượng trưng cho phép chiếu của tia trong ảnh phải từ điểm ảnh p L Do đó, tồn tại một bản đồ của một điểm ảnh trong một ảnh tương ứng với đường epipolar của một ảnh khác Điều này có nghĩa rằng các bản đồ ánh xạ tương quan với bản đồ

từ các điểm ảnh và đường epipolar, sử dụng ma trận F cơ bản

2.6 Các tính toán cho nh 3D

2.6.1 Block Matching

Stereo matching đóng một vai trò quan trọng trong việc tính toán sự sai lệch của hai ảnh Nhiều nhà nghiên cứu nghiên cứu về thị giác máy tính đã cố gắng để giải quyết vấn đề này Trong thực tế, các phương pháp được đề xuất dựa trên các đặc trưng hoặc sự tương quan [21, 22] Tất cả những phương pháp tiếp cận đã cho thấy sự hiệu quả trong nhiều ứng dụng

Trang 31

- 23 -

Epipolar hạn chế phạm vi tìm kiếm một điểm tương ứng trong một ảnh với một dòng epipolar trong các ảnh khác Trong trường hợp này, không có hạn chế nào được áp đặt theo các đường tìm kiếm Có những hạn chế khác nhau để ước lượng tương ứng trong các cặp stereo, bao gồm hạn chế sắp đặt, hạn chế ràng buộc, hạn chế sự sai lệch và hạn chế sự ràng buộc liên tục Thực tế là quá trình so khớp là rất đơn giản nếu các cặp hình ảnh được hiệu chỉnh theo một hình học tiêu chuẩn Đặc biệt, các đường epipolar trong mặt phẳng epipolar trùng với các đường quét ảnh, nơi mà các đường epipolar đi đến vô cùng

Trong thực tế, cặp hình ảnh được hiệu chỉnh có đường epipolar trùng với dòng quét ảnh Đối với các ước lượng sai lệch, một bộ so khớp tương ứng tìm kiếm mỗi điểm ảnh trong một hình ảnh tương quan, bằng cách dịch chuyển một

cửa sổ nhỏ (kích thước m×m phần tử) dọc theo dòng quét tương ứng Các giá trị

sai lệch tối thiểu và tối đa xác định vùng tìm kiếm với một kích thước bước tìm kiếm để xác định độ phân giải tìm kiếm

Hình 2.14 Mối tương quan của hai cửa sổ 3×3 dọc theo các đường epipolar

tương ứng để tìm kiếm các vùng so khớp tốt nhất

2.6.2 nh trái và nh ph i

Theo hình 2.14, tọa độ của điểm ảnh pL trong ảnh 1 và tọa độ của điểm ảnh

p Rtrong ảnh 2 là khác nhau về tọa độ theo trục ngang

Các thuật toán tương quan SAD được sử dụng để tính toán sự chênh lệch giữa hai hình ảnh

Trang 32

- 24 -

Hình 2.15 nh trái và ảnh phải với 2 điểm A và B

Hình 2.15a và 2.15b cho thấy một cặp hình ảnh được chụp từ stereoscopic camera Có thể thấy hai điểm A và B có vị trí khác nhau trong cả hai hình ảnh Điểm A trong ảnh trái tương ứng với điểm A trong ảnh phải Tương tự như vậy, điểm B trong ảnh trái cũng tương ứng với điểm B trong ảnh phải Khoảng cách từ một điểm đến cạnh trái của ảnh là khác nhau giữa ảnh trái và ảnh phải Có thể nhìn thấy dễ dàng, khoảng cách từ điểm A đến cạnh bên trái của ảnh trái là lớn hơn khoảng cách tới cạnh trái của ảnh phải Sự khác biệt về tọa độ của một điểm trong ảnh trái và phải được định nghĩa là độ sai lệch (disparity)

2.6.3 Tính toán Stereo Disparity

Xem xét điểm A trong hai hình ảnh trên trục x là D(A) = x(A left) - x(Aright), và

điểm B là D(B) = x(B left ) - x(B right ) , trong đó x(A left ) và x(A right ) là tọa độ theo trục

x được tính toán để đồng nhất Trong trường hợp độ sai lệch D(B) > D(A), điểm

B ở gần với hệ thống camera hơn điểm A

Các thuật toán tương quan SAD sử dụng để tìm sự trùng khớp tốt nhất trong các vùng tương ứng giữa hai hình ảnh Trong hình 2.16, lựa chọn một nhóm các điểm ảnh trong một vùng từ các hình ảnh tham khảo, đó là vùng lân cận Sau đó, vùng lân cận này được so sánh tương ứng với vùng lân cận trong ảnh khác Và sự trùng khớp tốt nhất được thu thập Quá trình này được lặp đi lặp lại với vùng lân cận trong ảnh Cuối cùng, một bản đồ về sự sai biệt được tạo ra [23]

Trang 33

(

,,

),,(

j y d i x L B j y i x R B

j y d i x L G j y i x R G

j y d i x L R j y i x R R

j y d i x L I j y i x R I d

y x color

SAD

M M j

M M i

M M j

M M i

Phương trình 2.5 là phương trình chung cho ảnh xám và ảnh màu Tất cả các

giá trị dương của độ sai biệt d được đánh giá bởi các hàm SAD color Kích thước

vùng lân cận của điểm ảnh (i, j) và (x, y) là (2M + 1)×(2M + 1) I R và I L đại diện cho cường độ màu sắc của ảnh trái và ảnh phải trong không gian màu RGB Điều

đó có nghĩa là I R (i, j) = (R R (i, j), G R (i, j), B R (i, j)) và I L (i, j) = (R L (i, j), G L (i, j), BL(i, j))

SAD của các điểm ảnh tương ứng trong cửa sổ ảnh trái và phải được giảm

thiểu bằng các thuật toán SAD Sự sai biệt D của hai khối trong ảnh màu được

thể hiện như sau:

color SAD D

d d d

Trang 34

- 26 -

2.6.4 Tính toán độ sâu của nh 3D

Hình 2.17 Tính toán độ sâu Z sử dụng tam giác đồng dạng

Từ độ sai biệt giữa 2 điểm tương ứng trong ảnh phải và ảnh trái, độ sâu Z

được tính toán sử dụng tam giác đồng dạng Theo hình 2.17, ta có công thức:

ưu hóa bởi các nhà phát triển thành các hàm đơn giản và rất dễ sử dụng OpenCV

hỗ trợ hai ngôn ngữ chính C/C++, python và chạy trên hệ điều hành Linux, Windows và Mac OS X

Một trong những mục đích của OpenCV là cung cấp một cấu trúc hạ tầng đơn giản cho việc sử dụng thị giác máy giúp người s ử dụng xây dựng các ứng dụng thị giác máy phức tạp một cách nhanh chóng Thư viện OpenCV chứa trên

Trang 35

- 27 -

500 hàm dùng trong nhiều lĩnh vực của xử lý ảnh , gồm kiểm tra sản phẩm trong công nghiệp, ảnh y sinh , an ninh, nhâ ̣n dạng , hiệu chỉnh máy chụp ảnh, stereo vision, và robot tự động

Hình 2.18 Cấu trúc cơ bản của OpenCV

Eigen object Kỹ thuật nhận dạng thông qua hiệu quả tính

toán, chẳng hạn như thuật toán Template matching

Mô hình Markov ẩn 1D và 2D Kỹ thuật nhận diện thống kê được giải quyết

bằng lập trình động Stereo vision Thuật toán tìm độ sâu của ảnh dựa vào ảnh từ

hai camera Phân đoạn vùng nền và vùng nổi Thuật toán tìm biên giữa các miền ảnh, phân

biệt vùng nền và vùng nổi

So khớp hình dạng thông qua

đường bao vùng Thuật toán sử dụng đường bao để so sánh sự giống nhau giữa vật trong ảnh và vật mẫu

Mô tả vân bề mặt Thuật toán xây dựng bộ mô tả đặc tính vân bề

mặt của ảnh Nhận dạng khuôn mặt Thuật toán nhận dạng khuôn mặt người trong

ảnh và video Tìm khung của vật Tìm đường thẳng trung tâm của một vùng

trong vật có thể đại diện cho vật đó 3D tracking Thuật toán tìm kiếm và bám theo vật mốc dựa

vào thuật toán stereo vision

Bảng 2.2 Mô tả một số thuật toán riêng biệt của thành phần CvAux

CV

Xử lý ảnh và thuật toán thị giác

CXCORE

Những cấu trúc cơ bản và thuật toán, hỗ trợ XML và các hàm vẽ

Trang 36

Phương pháp nhâ ̣n dạng SUR F cũng giống như các phương pháp nhâ ̣n dạng dựa trên đặc điểm cục bộ nên phương pháp bao gồm ba bước cơ bản được trình bày trong hình 3.1

Hình 3.1 Thuật toán SURạ

nh đầu vào Phát hiện điểm nổi bật Xây dựng bộ mô tả đặc điểm

So sánh các bộ mô tả

nh kết quả ngõ ra

Trang 37

- 29 -

3.1.1 Phát hi n điểm nổi b t

Các điểm nổi bâ ̣t trong ảnh thường là những điểm mà tại đó cường độ sáng

bị gián đoạn như góc, đốm màu, giao điểm chữ T… Cách thức được sử dụng để xác định được những điểm nổi bâ ̣t là đạo hàm kết hợp Trong phương pháp SURF, ma trâ ̣n Hessian và Integral Image được sử dụng để phát hiện các điểm

nổi bâ ̣t vì thuâ ̣t toán có thời gian tính toán ít và độ chính xác cao

Integral Image là một mảng 2 chiều với kích thước bằng với kích của ảnh đầu vào, với mỗi phần tử của mảng này được tính bằng cách tính tổng của điểm ảnh phía trên bên trái (dòng - 1) và (cột - 1) của nó (hình 3.2) Việc tính toán này đơn thuần chỉ đựa trên phép cộng số nguyên đơn giản, do đó tốc độ thực hiện rất nhanh

Hình 3.2 Cách tính Integral Image của ảnh

Từ hình 3.2 có có phương trình tính Integral Image của ảnh:

x y y x

y x i y

x

P

' , '

) ' , ' ( )

, (

Sau khi đã tính được Integral 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 3.3, ta có thể tính

như sau: D = A + B + C + D – (A+B) – (A+C) + A, với (A + B + C + D) chính là giá trị tại điểm P 4 trên Integral Image, tương tự như vậy (A+B) là giá trị tại điểm P 2 , (A+C) là giá trị tại điểm P 3 , và A là giá trị tại điểm P 1 Vậy ta có thể

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

P(x,y)

(3.1)

Trang 38

y x B

A

y x D C B A

y x

1 1 3

3 2

2 4

Hình 3.3 Cá ch tính nhanh các giá trị mức xám của vùng D trên ảnh

Xét điểm M( , ) trên ảnh I, ma trâ ̣n đ ạo hàm Hessian H(M, �) tại điểm M

với tỷ lệ � thay đổi được cho bởi công thức:

) , ( )

, (

) ,

( )

, (

x L x

L

x

L M

H

xy

xy xy

xx

Trong đó � ( , �) , � ( , �) , � ( , �) lần lượt là tích châ ̣p của đạo hàm

bâ ̣c hai hàm Gausse ( )

2

2

g x

 với ảnh I tại điểm M

3.1.2 Bộ mô t đặc điểm

Bộ mô tả đặc điểm thể hiện mối quan hệ về mặt không gian giữa điểm nổi

bâ ̣t và các điểm l ân câ ̣n xung quanh nhằm xác định vị trí của các điểm nổi bâ ̣t trong ảnh Việc xây dựng bộ mô tả bao gồm hai bước là xác định hướng lặp lại dựa trên thông tin từ vòng tròn xung quanh điểm nổi bâ ̣t , bước tiếp theo là dựng cửa số hình vuông đồng hướng với hư ớng được xác định từ quá trình trên và tạo

bộ mô tả SURF từ vùng hình vuông này

Tiếp theo là xem xét vùng các điểm lân câ ̣n xung quanh điểm nổi bâ ̣t Vùng

điểm lân câ ̣n là vò ng tròn có tâm là điểm nổi bâ ̣t và bán kính là 6s, với s là tỷ lệ

(hình 3.4) Việc mô tả bắt đầu bằng việc xác định hướng của vùng điểm lân câ ̣n

Trang 39

- 31 -

hay còn gọi là hướng vectơ đặc điểm Quá trình này sử dụng bộ lọc Haar Wavelet (hình 3.5) để xác định hướng Hướng được xác định bằng tổng các đáp ứng theo hai hướng trục trung độ và trục hoành độ Các đáp ứng được tính bên trong của

một cửa s ổ trượt kích thước 4s giới hạn trong góc �/3 của vùng điểm lân câ ̣n

Tổng các đáp ứng sẽ cho ra một vectơ cho mỗi góc �/3 và vectơ nào lớn nhất sẽ

là vectơ của điểm nổi bâ ̣t

Hình 3.4 Vòng tròn bán kính 6s chứa các điểm lân cận

Hình 3.5 Bộ lọc Haar Wavelet theo trục x và y tương ứng

Tiếp đến là việc trích xuất các bộ mô tả Đầu tiên dựng một vùng hình vuông xung quanh điểm nổi bâ ̣t , có hướng trùng với hướng của vectơ đặc điểm đã được

tìm ở trên Kích thước cửa sổ là 20s, vùng này sẽ được chia thành 4x4 vùng con

Trong mỗi vùng con sẽ tiếp tục áp dụng bộ lọc Haar Wavelet để tính toán vectơ

mô tả Cửa sổ trượt có kích thước 2s nên một vùng con sẽ có bốn vectơ mô tả

như trong hình 3.6 Vectơ mô tả tổng của một vùng con

),,,

 với � là tổng đáp ứng theo trục hoành, � tổng đáp ứng theo trục tung, |� | tổng giá trị tuyệt đối của đáp ứng theo trục hoành và |� | tổng giá trị tuyệt đối của đáp ứng theo trục tung như hình 3.6 Trục tung có

Trang 40

Bước cuối cùng trong phương pháp nhâ ̣n dạng SURF là so khớp các bộ mô

tả giữa trong ảnh với các bộ mô tả trong tâ ̣p dữ liệu để nhâ ̣n dạng vâ ̣t thể Bước

so khớp này dựa vào khoảng cách giữa các vectơ trong bộ mô tả, ví dụ như khoảng cách Mahalanobis hoặc clit

Ví dụ 1: Nhận dạng hình con chim từ hình mẫu trong một ảnh có chứa nhiều

Ngày đăng: 18/11/2020, 14:00

HÌNH ẢNH LIÊN QUAN

Hình 2.1 Sự pha trộn màu sắc trong không gian m àu RGB - Dò tìm vật mốc để điều khiển xe lăn điện đến đích dùng stereo camera
Hình 2.1 Sự pha trộn màu sắc trong không gian m àu RGB (Trang 17)
Hình 2.7 Kết quả nhận dạng và giới hạn ngưỡng so sánh - Dò tìm vật mốc để điều khiển xe lăn điện đến đích dùng stereo camera
Hình 2.7 Kết quả nhận dạng và giới hạn ngưỡng so sánh (Trang 22)
Hình 2.8    nh trái và phải chụp từ  stereo camera - Dò tìm vật mốc để điều khiển xe lăn điện đến đích dùng stereo camera
Hình 2.8 nh trái và phải chụp từ stereo camera (Trang 27)
Hình 2.12  Kích th ước của "Bumblebee" stereo  camera - Dò tìm vật mốc để điều khiển xe lăn điện đến đích dùng stereo camera
Hình 2.12 Kích th ước của "Bumblebee" stereo camera (Trang 29)
Hình 3.9 Mô tả phép ánh xạ giữa hai mặt phẳng ảnh 1 và ảnh 2 thông qua - Dò tìm vật mốc để điều khiển xe lăn điện đến đích dùng stereo camera
Hình 3.9 Mô tả phép ánh xạ giữa hai mặt phẳng ảnh 1 và ảnh 2 thông qua (Trang 43)
Hình 3.10 Xác định tọa độ tâm vật mốc O trong ảnh chụp từ camera - Dò tìm vật mốc để điều khiển xe lăn điện đến đích dùng stereo camera
Hình 3.10 Xác định tọa độ tâm vật mốc O trong ảnh chụp từ camera (Trang 45)
Hình 4.6 Bản đồ khoảng cách 2D theo trục X và trục Z được xây dựng từ - Dò tìm vật mốc để điều khiển xe lăn điện đến đích dùng stereo camera
Hình 4.6 Bản đồ khoảng cách 2D theo trục X và trục Z được xây dựng từ (Trang 50)
Hình 4.13 Mô tả vật cản trên đường di chuyển của xe lăn - Dò tìm vật mốc để điều khiển xe lăn điện đến đích dùng stereo camera
Hình 4.13 Mô tả vật cản trên đường di chuyển của xe lăn (Trang 55)
Hình 4.15 Xe lăn di chuyển về khoảng trống bên trái và tránh vật cản - Dò tìm vật mốc để điều khiển xe lăn điện đến đích dùng stereo camera
Hình 4.15 Xe lăn di chuyển về khoảng trống bên trái và tránh vật cản (Trang 57)
Hình 5.3  Sơ đồ khối mô tả hoạt động của hệ thống xe lăn điện - Dò tìm vật mốc để điều khiển xe lăn điện đến đích dùng stereo camera
Hình 5.3 Sơ đồ khối mô tả hoạt động của hệ thống xe lăn điện (Trang 61)
Hình 5.9 Xe lăn dừng lại khi đi đến vị trí vật mốc thứ 5 (điểm đích) - Dò tìm vật mốc để điều khiển xe lăn điện đến đích dùng stereo camera
Hình 5.9 Xe lăn dừng lại khi đi đến vị trí vật mốc thứ 5 (điểm đích) (Trang 65)
Hình 5.10 Xe lăn phát hiện vật cản  và  các khoảng trố ng  dựa vào bản đồ 2D - Dò tìm vật mốc để điều khiển xe lăn điện đến đích dùng stereo camera
Hình 5.10 Xe lăn phát hiện vật cản và các khoảng trố ng dựa vào bản đồ 2D (Trang 65)
Hình 5.11 Xe lăn phát hiện khoảng trống bên phải và di chuyển vượt qua vật cản - Dò tìm vật mốc để điều khiển xe lăn điện đến đích dùng stereo camera
Hình 5.11 Xe lăn phát hiện khoảng trống bên phải và di chuyển vượt qua vật cản (Trang 66)
Hình 5.12 Xe lăn phát hiện vật cản  và  các khoảng trống dựa vào bản đồ 2D - Dò tìm vật mốc để điều khiển xe lăn điện đến đích dùng stereo camera
Hình 5.12 Xe lăn phát hiện vật cản và các khoảng trống dựa vào bản đồ 2D (Trang 67)
Hình 5.13 Xe lăn phát hiện khoảng trống bên trái và di chuyển vượt qua vật cản - Dò tìm vật mốc để điều khiển xe lăn điện đến đích dùng stereo camera
Hình 5.13 Xe lăn phát hiện khoảng trống bên trái và di chuyển vượt qua vật cản (Trang 68)

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

🧩 Sản phẩm bạn có thể quan tâm

w