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

Dùng Matlab nhận dạng trạng thái đèn giao thông là màu gì

57 1,8K 36
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 57
Dung lượng 1,45 MB

Nội dung

Từ Matlab xuất tín hiệu ra Vi Xử Lý (thông qua cổng COM) để điều khiển xe

Trang 1

TÓM TẮT NỘI DUNG ĐỒ ÁN

1 NỘI DUNG

 Dùng Matlab nhận dạng trạng thái đèn giao thông là màu gì Đểnhận biết được màu sắc của đèn giao thông cần trải qua 2 bước:

Bước 1: Tách biên dạng hình tròn của đèn giao thông

Bước 2: Nhận dạng màu sắc của đèn giao thông trong biênhình tròn đó

 Từ Matlab xuất tín hiệu ra Vi Xử Lý (thông qua cổng COM) đểđiều khiển xe

2. KẾT QUẢ ĐẠT ĐƯỢC

 Tìm hiểu về các bộ tách biên và sử dụng bộ tách biên Sobel đểtách được biên của đèn giao thông

 Nhận dạng được màu sắc của đèn giao thông (xanh, đỏ)

 Xuất được tín hiệu từ Matlab ra cổng COM để điều khiển Vi Xử

Lý rồi từ Vi Xử Lý điều khiển xe (đèn xanh xe chạy, đèn đỏ xe dừng)

3 HẠN CHẾ

Xe chạy được khoảng cách không xa chỉ khoảng 4m

Trang 2

NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN

Ngày……tháng……năm…… Giáo viên hướng dẫn

Ký tên

Trang 3

NHẬN XÉT CỦA HỘI ĐỒNG GIÁM KHẢO

Ngày……tháng……năm……

Hội đồng

Ký tên

Trang 4

LỜI CẢM ƠN

Chúng em xin chân thành cảm ơn tất cả các thầy cô trường Đại HọcCông Nghiệp TP Hồ Chí Minh đã dạy dỗ, chỉ bảo chúng em trong suốt thờigian qua

Chúng em xin chân thành cảm ơn thầy Trần Văn Trinh đã tận tìnhhướng dẫn chúng em trong thời gian làm Đồ Án 2B

Chúng tôi xin cảm ơn tất cả bạn bè đã giúp đỡ và cùng chúng tôinghiên cứu học tập

Nhóm sinh viên thực hiện:

Lê Văn Hoan

Nguyễn Thành Luân

Trang 5

MỤC LỤC PHẦN A: LÝ THUYẾT TỔNG QUAN Trang 9

CHƯƠNG I: THUẬT TOÁN TÁCH BIÊN VÀ NHẬN

DẠNG MÀU ……… 10

1. Giới thiệu về các bộ tách biên ……….10

1.1 Cơ sở của việc tách biên……….10

1.2 Bộ tách biên Sobel……… 12

1.3 Bộ tách biên Canny……….14

1.4 Bộ tách biên Prewitt………16

1.5 Bộ tách biên Roberts……… 17

1.6 Bộ tách biên Laplace của hàm Gauss……… 17

2. Phương pháp nhận dạng màu……….18

2.1 Mô hình màu RGB……….……… 18

2.2 Mô hình màu CMY…….……….19

2.3 Mô hình màu CYMK……… 19

2.4 Mô hình màu HSV……… 20

2.5 Các kỹ thuật tái hiện ảnh……… 20

CHƯƠNG II: TÌM HIỂU CHUNG VỀ PHẦN MỀM MATLAB……… 22

1 Tạo giao diện người dùng nhờ công cụ GUIDE của MATLAB……… 22

2 Toolbox bắt ảnh……… 25

2.1 Nhiệm vụ của Toolbox……… 25

2.2 Các bước thu thập ảnh cơ bản của Toolbox……… 25

3 Toolbox xử lý ảnh……… 28

3.1 Các loại ảnh trong MATLAB……….28

3.1.1 Ảnh chỉ số……….29

3.1.2 Ảnh biểu diễn theo độ sáng……… 29

3.1.3 Ảnh nhị phân………30

3.1.4 Ảnh RGB……… 30

Trang 6

3.2 Các hàm xử lý ảnh cơ bản trong MATLAB……… 31

3.2.1 Đổi màu và loại ảnh……….31

3.2.2 Xử lý hình học……… 32

3.2.3 Lọc nhiễu……… 32

3.2.4 Phân tích ảnh………32

3.2.5 Biến đổi ảnh……… 32

CHƯƠNG III: SƠ LƯỢC CƠ CHẾ HOẠT ĐỘNG CỦA MÔ HÌNH XE THÔNG MINH……… 33

1 Sơ đồ tổng quát……… 33

2 Cơ chế hoạt động………33

CHƯƠNG IV: SƠ ĐỒ NGUYÊN LÝ VÀ NGUYÊN LÝ HOẠT ĐỘNG CỦA MẠCH……… 34

1 Sơ đồ nguyên lý……… 34

2 Nguyên lý hoạt động……… 34

PHẦN B: PHẦN MỀM ĐIỀU KHIỂN MÔ HÌNH XE THÔNG MINH……… 36

1 Lưu đồ giải thuật……… 37

2 Qúa trình xử lý ảnh………38

2.1 Xử lý video giao tiếp qua Webcam chụp lại ảnh trên mô hình… 38

2.2 Chuyển ảnh màu dạng RGB thành ảnh mức xám……… 39

2.3 Tách biên và loại bỏ các thành phần nhiễu……….40

2.4 Làm phẳng nhị phân và lấp đầy các lỗ trống……… 41

2.5 Xác định trọng tâm, biên, tính khoảng cách………41

2.6 Xác định màu của đèn giao thông……… 42

2.7 Cửa sổ giao diện……… 43

PHẦN C: KẾT LUẬN……… 44

PHẦN D: PHỤ LỤC………46

1. Code của Callback……….47

2. Chương trình giao tiếp với vi xử lý……….55

Trang 7

3. Tài liệu tham khảo……….56

Trang 8

LỜI MỞ ĐẦU

Hiện nay đất nước ta đang chuyển mình theo sự phát triển chung củathế giới bằng việc Việt Nam đã gia nhập tổ chức kinh tế thế giới WTO.Đây là một bước ngoặt quan trọng nhằm thúc đẩy nền kinh tế nước ta pháttriển sánh vai với các cường quốc năm châu.Với tốc độ phát triển như hiệnnay chúng ta không chỉ cần một lượng lao động khổng lồ mà còn đòi hỏi cótrình độ, chất lượng tay nghề, kỹ thuật lao động và thiết bị sản xuất Mức

độ phát triển của khoa học kỹ thuật ngày càng cao thì vấn đề tự động hoángày càng được chú trọng

Những năm gần đây MATLAB và các Toolbox kèm theo đã trở thànhcông cụ không thể thiếu của các cán bộ nghiên cứu giảng dạy, sinh viên đạihọc, cao học và nghiên cứu sinh thuộc các ngành khoa học kỹ thuật nước

ta Điều này có được là do MATLAB cung cấp một công cụ tính toán vàlập trình bậc cao dễ sử dụng hiệu quả và thân thiện với người dùng.MATLAB cung cấp cho người sử dụng các phương thức để thực hiện các

mô phỏng trên máy tính, ngoài ra MATLAB còn có thể giao tiếp với Vi Xử

Lý, PLC,…cùng với các thiết bị phần cứng để thực hiện các ứng dụng vàothực tế Vì vậy trong phạm vi hiểu biết của mình, chúng em đã tìm hiểu và

thực hiện đề tài “Mô hình xe thông minh” Đây là sự kết hợp giữa

MATLAB và Vi Xử Lý để điều khiển xe không người lái (xe thông minh).Trong quá trình thực hiện Đồ Án 2B cùng với sự nỗ lực của bản thân

và áp dụng những kiến thức được trang bị ở trường, chúng em đã có nhiều

cố gắng để thực hiện tốt Đồ Án Tuy nhiên do kiến thức và khả năng còn cóhạn nên khó tránh khỏi những thiếu sót Chúng em rất mong nhận được sựthông cảm và đóng góp ý kiến của các thầy cô trong hội đồng giám khảo để

Đồ Án của chúng em được hoàn chỉnh hơn Xin chân thành cảm ơn

TP Hồ Chí Minh, ngày 03 tháng 11 năm 2010 Nhóm sinh viên thực hiện:

Lê Văn Hoan Nguyễn Thành Luân

Trang 10

CHƯƠNG I

THUẬT TOÁN TÁCH BIÊN VÀ NHẬN DẠNG

MÀU

1 GIỚI THIỆU VỀ CÁC BỘ TÁCH BIÊN

1.1 Cơ sở của việc tách biên

Biên là tập hợp những pixel (nằm trên đường biên giới giữa 2vùng) liên kết với nhau Một biên lý tưởng có các thuộc tính của mô hình ởhình 1.1

Hình 1.1: Mô hình biên lý tưởng

Tuy nhiên trong thực tế các yếu tố như là chất lượng của hệ thốngthu nhận hình ảnh, tốc độ lấy mẫu, điều kiện chiếu sáng của mỗi bức ảnh,

… ảnh hưởng đến chất lượng của hình ảnh Vì vậy kết quả là biên giốngvới một đoạn dốc được thể hiện trong hình 1.2

Trang 11

Hình 1.2: Mô hình biên trong thực tế

Vì vậy chúng ta không bao giờ có một đường biên mảnh (có độ dàymột pixel) Thay vào đó, một điểm biên bây giờ là một điểm bất kì chứatrong đoạn dốc và biên là tập hợp những điểm liên thông Độ dày củađường biên được xác định bởi chiều dài của đoạn dốc, khi biên biến đổi từđầu đến cuối mức xám

độ dày của biên

Hình 1.3: Mô hình miêu tả độ dày của biên

Hình 1.4 cho thấy đạo hàm bậc 1 của biên

Trang 12

Hình 1.4: Mô hình miêu tả đạo hàm bậc 1 của biên

Từ hình vẽ ta thấy đạo hàm bậc 1 có giá trị 1 tại nơi biên được tách

và giá trị 0 tại nơi biên không được tách Vì vậy độ lớn của đạo hàm bậc 1

có thể được sử dụng để phát hiện ra dấu hiệu của một biên tại một điểmtrong hình (nghĩa là xác định điểm đó có nằm trên dốc không)

1.2 Bộ tách biên Sobel

Bộ tách biên Sobel sử dụng mặt lạ Sobel để tính các đạo hàm bậcnhất Gx và Gy ,nói cách khác đạo hàm tại điểm tâm trong một lân cận đượctính theo bộ tách Sobel

7 4 1 9 6 3

2 3 2 1 9 8 7 2

/ 1

Trang 13

Để tính Gx và Gy ta dựa vào mặt lạ Sobel

-1 0 1

-2 0 2

1 0 -1

Sobel

) 2

( ) 2

(z7 z8 z9 z1 z2 z3

) 2

( ) 2

Trang 14

Cú pháp của bộ tách biên Sobel

[g, t] = edge (f, ‘sobel’, T, dir)Trong đó: f là ảnh đầu vào

g là ảnh logic chứa giá trị 1 tại những nơi biên đượctách và chứa giá trị 0 tại những nơi biên không được tách

Trang 15

r

e r

Trong đó r2 x2 y2

 là độ lệch chuẩnHàm làm trơn này khi chập với một ảnh sẽ làm mờ ảnh, độ mờđược xác định bởi 

 Tách biên là phương pháp gián đoạn các giá trị cường độ Sựgián đoạn được tính bằng cách sử dụng đạo hàm bậc nhất Đạo hàm bậcnhất lựa chọn trong xử lý ảnh là gradient (độ dốc) Gradient của hàm 2-Df(x,y) được định nghĩa dưới dạng vector

G f

y x

Biên độ của vector này:

 2 21 / 2  2  21 / 2

/ /

G y

x, ) tan 1(

Trang 16

 Điểm biên được xác định tăng lên đến các đỉnh trong gradientbiên độ ảnh Sau thuật toán tìm đỉnh của các đỉnh này và đặt giá trị 0 vàotất cả các pixel không nằm trên đỉnh Các pixel đỉnh được đặt bằng haingưỡng T1 và T2 Các pixel đỉnh lớn hơn T2 được gọi là các pixel biên

“mạnh” Các pixel đỉnh nằm giữa T1 và T2 được gọi là các pixel biên

“yếu”

 Cuối cùng thuật toán thực hiện biên kết nối bằng cách kết hợpcác pixel “yếu” với các pixel mạnh

Cú pháp của bộ tách biên Canny là:

[g, t] = edge (f, ‘canny’, T, sigma) Trong đó: f là ảnh đưa vào để tách biên

T là một vector, T = [T1 T2]

sigma là độ lệch chuẩn có giá trị mặc định là 1

g là ảnh sau khi tách biên

1.4 Bộ tách biên Prewitt

Bộ tách biên Prewitt sử dụng mặt nạ Prewitt như hình bên dưới xấp

xỉ phương pháp số theo đạo hàm bậc nhất Gx, Gy

-1 0 1 -1 0 1

1 0 -1

-1

Prewitt

) (

) (z7 z8 z9 z1 z2 z3

) (

)

Trang 17

Cú pháp gọi hàm:

[g, t] = edge (f, ‘prewitt’, T, dir)Tham số này đồng nhất với tham số Sobel Bộ tách Prewitt đơngiản hơn so với bộ tách biên Sobel nhưng nó dễ sinh ra nhiễu hơn so với bộtách biên Sobel Việc tính toán các giá trị hoàn toàn giống với bộ tách biênSobel

1.5 Bộ tách biên Roberts

Bộ tách biên Roberts sử dụng mặt nạ Roberts như hình bên dướixấp xỉ phương pháp số theo đạo hàm bậc nhất Gx, Gy

0 0

-1 1

0 0 1 -1

Roberts

Cú pháp gọi hàm:

[g, t] = edge (f, ‘roberts’, T, dir)Tham số này đồng nhất với tham số Sobel Bộ tách Roberts là mộttrong những bộ tách biên xưa nhất trong xử lý ảnh số và cũng là bộ táchbiên đơn giản nhất

1.6 Bộ tách biên Laplace của hàm Gauss (LoG)

Xét hàm Gauss

2 2 2

)

r

e r

Trong đó: r2 x2 y2 và σ là độ lệch chuẩn Đây là một hàm trơn

khi nó chập với một ảnh nó sẽ làm mờ ảnh Độ mờ được xác định bởi giátrị của σ Toán tử Laplace của hàm này (đạo hàm bậc hai theo r)

2 2 2 4

2 2

Với những lý do rõ ràng, hàm này gọi là toán tử Laplace của hàm

Gauss (LoG) Vì đạo hàm bậc hai là toán tử tuyến tính chập với một hàmảnh  2h(r) giống như chập với hàm trơn và sau đó tính kết quả của toán

tử Laplace Đây là chìa khoá khái niệm cơ bản của bộ tách LoG Chúng tachập ảnh bằng  2h(r) biết nó có hai tác động: làm mịn (giảm nhiễu) và nó

tính toán toán tử Laplace, làm cong một biên ảnh kép, định vị các biên sau

đó tìm các điểm giao zero giữa các biên kép Cú pháp tổng quát là:

[g , t ] = edge(f, ‘log’, T, sigma)

Trang 18

Trong đó: sigma là độ lệch chuẩn, giá trị mặc định của sigma là 2,các tham số còn lại giống phần trước Những biên không lớn hơn T ta bỏ

qua Nếu T không được cho hoặc rỗng, edge chọn giá trị một cách tự động.

2 PHƯƠNG PHÁP NHẬN DẠNG MÀU

Là phương pháp diễn giải các đặc tính và tác động của màu trongngữ cảnh nhất định Không có mô hình màu nào là đầy đủ cho mọi khíacạnh của màu, người ta sử dụng các mô hình màu khác nhau để mô tả cáctính chất được nhận biết khác nhau của màu

Thí dụ:

+ Mô hình màu RGB: ánh sáng Red, Green và Blue ứng dụngcho màn hình, TV

+ Mô hình HSV: Nhận thức của con người

+ Mô hình CYK: Máy in

Trang 19

màu = 0.299R + 0.587G + 0.114B

2.2 Mô hình màu CMY

- Gồm 3 thành phần màu cơ bản cyan, magenta, yellow Là bù màucủa không gian GRB

Mối quan hệ giữa 2 không gian: màu ban đầu + màu bổ túc =>trắng

R + C => W

Y + B => W

M + B => W Phương pháp pha trộn màu trong cuộc sống

2.3 Mô hình màu CMYK

Là sự mở rộng mô hình màu CMK bằng cách thêm vào thànhphần màu Black (K) Bởi vì với thành phần màu Black tinh khiết sẽ cho ta

độ tương phản cao hơn

Mối quan hệ CMY và CMYK

Trang 20

• Hue: Bước sóng gốc của ánh sáng Trong mô hình Hue được biểudiễn bằng góc từ 00 đến 3600

• Value: Cường độ hay độ chói ánh sáng Value có giá trị [0, 1],V=0 -> màu đen Đỉnh lục giác có cường độ màu cực đại

• Saturation: Thước đo độ tinh khiết ánh sáng gốc S trongkhoảng [0, 1] Biểu diễn tỷ lệ độ tinh khiết của màu sẽ chọn với độ tinhkhiết cực đại

Nhận xét

Mô hình HSV trực giác hơn mô hình RGB Bắt đầu từ Hue (H chotrước và V=1, S=1) thay đổi S: Bổ sung hay bớt trắng, thay đổi V: Bổ sunghay bớt đen cho đến khi có màu mong muốn

2.5 Các kỹ thuật tái hiện ảnh

- Kỹ thuật tái hiện ảnh được dùng khi ta cần hiển thị lại ảnh trênmột số thiết bị vật lý không có khả năng hiện lại hết các mức xám có thậtcủa ảnh số: màn hình đơn sắc, máy in, máy vẽ

 Kỹ thuật phân ngưỡng (Thresholding)

Kỹ thuật này đặt ngưỡng để hiển thị các tông màu liên tục Giá trịcủa ngưỡng sẽ quyết định điểm có được hiển thị hay không, và hiển thị nhưthế nào

Tái hiện 2 màu: dùng cho ảnh 256 mức xám, bản chất củaphương pháp này là ngưỡng dựa vào lược đồ xám Ngưỡng chọn ở đây là

127

Cho ảnh số S(M,N), khi đó

Tái hiện 4 màu: Với qui định cách hiện 4 màu như sau:

Trang 21

 Kỹ thuật Dithering

Kỹ thuật này sử dụng một ma trận mẫu gọi là ma trận Dither

- Mỗi phần tử của ảnh gốc sẽ được so sánh với phần tửtương ứng của ma trận Dither Nếu lớn hơn, phần tử ở đầu ra sẽ sáng vàngược lại

- Ma trận Dither cấp 2n sẽ được tính như sau:

CHƯƠNG II TÌM HIỂU VỀ PHẦN MỀM MATLAB

Trang 22

1 TẠO GIAO DIỆN NGƯỜI DÙNG NHỜ CÔNG CỤ GUIDE CỦA MATLAB

Giao diện người dùng (graphical user interface GUI) cho phép thựchiện các lệnh MATLAB thông qua các menu, nút nhấn,… tương tự như cácngôn ngữ Visual Basic, Delphi Lập trình GUI được thực hiện nhờ công cụGUIDE (GUI Development Environnment) hoặc bằng cách soạn thảo mộtfile m

Từ >> gõ guide, cửa sổ GUIDE Quick Start xuất hiện:

Có thể chọn các mẫu giao diện thiết kế sẵn hay nhấn OK để chọnGUI trống Sau đây là cửa sổ biên soạn GUI:

Trang 23

Vùng bên trái chứa danh sách thành phần của đối tượng, vùng có ôlưới là vùng hiển thị - nơi đặt các component, bấm chuột trái vàocomponent muốn tạo, sau đó đưa chuột ra vùng layout nơi muốn đặtcomponent, bấm chuột trái dùng kỹ thuật kéo chuột để chọn kích thướccomponent.

Các component mà GUI cho phép là:

 Axes: vẽ hệ trục

 Check box: là hộp kiểm tra cho phép đưa vào các chọn lựa khibấm chuột vào đó

 Edit Text: là hộp văn bản đưa chuỗi ký tự vào đó

 Frame: khung bao một vùng cửa sổ hình

 List box: gồm một văn bản các mục để chọn lựa

 Pop-up menu: menu sổ xuống trình bày một bảng các chọn lựakhi nhấp chuột vào đó

 Push button (nút nhấn): phát sinh một hành động nào đó khinhấp chuột

 Radio button: tương tự như Check box nhưng chỉ chọn một

 Slider (con trượt): dùng để đưa giá trị vào trong một tầm giớihạn

Trang 24

 Static Text: dòng văn bản dùng để đặt nhãn, tiêu đề, hướng dẫn.

 Toggle button (nút bật): giống push button nhưng có hiển thịtrạng thái thay đổi mỗi khi nhấn

 Popup Menu: tạo menu

Bấm kép chuột vào component trong vùng layout để soạn tính chấtcủa component, ví dụ bấm kép chuột vào Push button sẽ hiện ra cửa sổProperty Inspector như sau:

Cửa sổ Property Inspector có rất nhiều thuộc tính, sau đây là cácthuộc tính cơ bản nhất:

 Tag: Tên mà ta gắn cho component, ví dụ pushbutton-start

 BackgroundColor: Màu nền của component

 ForegroundColor: Màu chữ trên component

 FontName, FontAngle, FontSize, FontWeight: Các đặc tính củafont chữ trên component

 String: Văn bản hiển thị trên component Trong trường hợpmuốn sử dụng font tiếng Việt ví dụ như VNI-Times ta có thể chọnFontName phù hợp, nhưng thường không thể đánh trực tiếp ký tự có dấu, ta

có thể soạn văn bản tiếng Việt trong Word sau đó copy và paste vào string

Trang 25

trong Property Inspector, lúc đó các ký tự tiếng Việt sẽ hiện ra không đúngtrên layout editor nhưng khi chạy chương trình thì sẽ hiển thị đúng.

 Enable: Cho phép component hoạt động hay không

 Visible: Hiển thị component hay không

Quan trọng nhất đối với các component là callback tức là các hàmcon mà file m sẽ gọi khi tác động vào component, ví dụ khi bấm chuột vàopushbutton, togglebutton, di chuyển con trượt của slider hay khi viết vănbản vào EditText rồi bấm Enter

Soạn thảo các callback: ở cửa sổ soạn thảo layout editor nhấp chuộtphải vào component muốn soạn thảo sau đó chọn View Callbacks ->callback ta sẽ vào màn hình soạn thảo callback cho component đó (Lưu ý

rằng các dòng lệnh sẽ được viết sau dòng “function tên

component_Callback (hobject, eventdata, handles)”)

Sau khi soạn thảo hoàn tất và lưu, MATLAB sẽ lưu hai file có cùngtên nhưng khác nhau về phần mở rộng:

File có phần mở rộng fig chứa nội dung của giao diện

File có phần mở rộng m chứa những đoạn mã liên quan đếngiao diện

2 TOOLBOX BẮT ẢNH (Image Acquisition Toolbox)

2.1 Nhiệm vụ của Toolbox

Image Acquisition Toolbox là tập hợp các hàm của MATLAB cónhiệm vụ thu thập hình ảnh số từ các thiết bị thu hình Cụ thể là:

 Thu thập hình ảnh từ các thiết bị thu hình khác nhau, từ loạichuyên dụng đến loại rẻ tiền như Webcam (giao tiếp USB)

 Trình chiếu (preview) luồng dữ liệu video từ thiết bị thu hình

 Trích hình ảnh từ luồng dữ liệu video

 Thiết lập các callback cho các sự kiện khác nhau

 Chuyển dữ liệu hình ảnh vào không gian workspace củaMATLAB để xử lý ảnh tiếp theo

2.2 Các bước thu thập hình ảnh cơ bản với Toolbox

Bước 1: Gắn thiết bị thu hình vào máy tính và cài đặt driver điều khiển

 Gắn thiết bị thu hình vào máy tính

 Cài đặt driver (trình điều khiển) cho thiết bị (được cho bởi nhàsản xuất)

 Xem thử hình ảnh video hiện trên máy tính thông qua phầnmềm của nhà sản xuất

Trang 26

 Khởi động MATLAB

Bước 2: Chỉ định thông tin phần cứng:

 Ta cần chỉ định cho MATLAB biết phần cứng nào dùng để lấy

dữ liệu (vì có thể có nhiều camera kết nối với PC)

Gõ l nh imaqhwinfo ệnh imaqhwinfo để biết tên các loại thiết bị có thể dùng để biết tên các loại thiết bị có thể dùng ết tên các loại thiết bị có thể dùng bi t tên các lo i thi t b có th dùng ại thiết bị có thể dùng ết tên các loại thiết bị có thể dùng ị có thể dùng ể biết tên các loại thiết bị có thể dùng.

‘coreco’ Thiết bị của công ty coreco

‘DCAM’ Các thiết bị dùng chuẩn IEEE 1394

‘dt’ Các thiết bị của Data Translation

‘Matrox’ Các thiết bị của hãng Matrox

‘winvideo’ Các thiết bị dùng chuẩn Windows Driver Model (WDM)

hoặc Video for Windows (VFW) Bao gồm các loại USBWEBCAM và camera IEEE 1394

Chỉ định thiết bị: Tuỳ vào loại thiết bị (adaptor name), mỗi thiết bị

cùng loại gắn vào PC được đánh số ID, thiết bị thứ nhất có deviceID = 1,thiết bị thứ hai có deviceID = 2,…

Để liệt kê xem loại winvideo có bao nhiêu thiết bị gắn vào máy, tacũng dùng lệnh imaqhwinfor với đối số là winvideo

Có một thiết bị với DeviceID là 1 Ta có thể tìm hiểu thêm thôngtin về thiết bị này

>>imaqhwinfo(‘winvideo’,1)

ans=

DefaultFormat: ‘RGB24_320x240’

DeviceFileSupported: 0DeviceName: ‘USB PC Camera-168’

Trang 27

DeviceID: 1ObjectConstructor: [1x25 char]

SupportedFormats: {1x14 cell}

Đây là Webcam đã gắn vào máy để làm đề tài này

Bước 3: Tạo đối tượng đại diện cho luồng dữ liệu video

Để tạo luồng dữ liệu video ta dùng lệnh videoinput

Ví dụ:

>>vid = videoinput(‘winvideo’,1)

Summary of Video Input Object Using ‘USB PC Camera-168’

Acquisition Source(s): input1 is available

Acquisition Parameters: ‘input1’ is the current selected source

10 frames per trigger using the selected source

‘RGB24_320x240’ video data to be logged upon START.Grabbing first of every 1 frame(s)

Log data to ‘memory’ on trigger

Trigger Parameters: 1 ‘immediate’ trigger(s) on START

Status: Waiting for START

0 frames acquired since starting

0 frames available for GETDATA

Bước 4: Hiển thị luồng video trên màn hình để xem thử

Để xem trước luồng dữ liệu video ta dùng lệnh preview

Ví dụ: preview(vid)

Màn hình lúc này hiện lên cửa sổ video của đối tượng vid

Để kết thúc xem ta dùng lệnh stoppreview hoặc để đóng cửa sổpreview ta dùng lệnh closepreview(vid)

Bước 5: Lấy một khung ảnh và lưu thành file đồ hoạ.

Để lấy một ảnh vào xử lý ta dùng lệnh getsnapshot

Để lưu ảnh thành file đồ hoạ ta dùng lệnh imwrite

Ví dụ: hinh = getsnapshot (vid);

imwrite (hinh, ‘d.jpg’);

Bước 6: Làm sạch bộ nhớ

Sau khi lấy dữ liệu hình ảnh ta có thể giải phóng bớt bộ nhớ bằngcác lệnh sau:

Trang 28

3 TOOLBOX XỬ LÝ ẢNH (Image Processing Toolbox)

Có nhiều loại file ảnh như:

 BMP (Microsofl Windows Bitmap)

 HDF (Hierarchical Data Format)

 ICO (Windows Icon Resources)

 JPG, JPEG (Joint Photographic Experts Group)

 PCX (Paintbrush)

 PNG (Portable Network Graphics)

 TIFF (Tagged Image File Format)

 XWD (X Window Dump)

Sau đây liệt kê một số hàm đọc và lưu ảnh:

image, imshow Hiển thị ảnh

imagesc Sắp xếp dữ liệu và hiển thị

imread Đọc ảnh từ file đồ hoạ

immovie Tạo phim từ nhiều loạt nhiều khuôn hình

imwrite Cất ảnh vào file đồ hoạ

imfinfo Lấy thông tin ảnh từ file

ind2rgb Đổi ảnh có chỉ số sang ảnh RGB

3.1 Các loại ảnh trong MATLAB

MATLAB coi ảnh như một ma trận hai chiều, mỗi phần tử là mộtphần tử hình pixel, do đó ta có thể xử lý hình như đối với ma trận, các phần

tử ma trận có thể là double (64 bit), uint 16 (16 bit), uint 8 (8 bit) Có cácloại ảnh trong MATLAB như sau:

3.1.1 Ảnh chỉ số

Ảnh được biểu diễn bởi hai ma trận, một ma trận dữ liệu ảnh X vàmột ma trận màu (còn gọi là bản đồ màu) Ma trận có thể là kiểu uint8,

Ngày đăng: 12/04/2013, 15:44

HÌNH ẢNH LIÊN QUAN

Hình 1.1: Mơ hình biên lý tưởng - Dùng Matlab nhận dạng trạng thái đèn giao thông là màu gì
Hình 1.1 Mơ hình biên lý tưởng (Trang 10)
Hình 1.1: Mô hình biên lý tưởng - Dùng Matlab nhận dạng trạng thái đèn giao thông là màu gì
Hình 1.1 Mô hình biên lý tưởng (Trang 10)
Hình 1.2: Mơ hình biên trong thực tế - Dùng Matlab nhận dạng trạng thái đèn giao thông là màu gì
Hình 1.2 Mơ hình biên trong thực tế (Trang 11)
Hình 1.3: Mơ hình miêu tả độ dày của biên - Dùng Matlab nhận dạng trạng thái đèn giao thông là màu gì
Hình 1.3 Mơ hình miêu tả độ dày của biên (Trang 11)
Hình 1.2: Mô hình biên trong thực tế - Dùng Matlab nhận dạng trạng thái đèn giao thông là màu gì
Hình 1.2 Mô hình biên trong thực tế (Trang 11)
Hình 1.3: Mô hình miêu  tả độ dày của biên - Dùng Matlab nhận dạng trạng thái đèn giao thông là màu gì
Hình 1.3 Mô hình miêu tả độ dày của biên (Trang 11)
Hình 1.4: Mơ hình miêu tả đạo hàm bậc 1 của biên - Dùng Matlab nhận dạng trạng thái đèn giao thông là màu gì
Hình 1.4 Mơ hình miêu tả đạo hàm bậc 1 của biên (Trang 12)
Hình 1.4: Mô hình miêu tả đạo hàm bậc 1 của biên - Dùng Matlab nhận dạng trạng thái đèn giao thông là màu gì
Hình 1.4 Mô hình miêu tả đạo hàm bậc 1 của biên (Trang 12)
Hình 1.5: Ảnh đã được tách biên - Dùng Matlab nhận dạng trạng thái đèn giao thông là màu gì
Hình 1.5 Ảnh đã được tách biên (Trang 15)
Hình 1.5: Ảnh đã được tách biên - Dùng Matlab nhận dạng trạng thái đèn giao thông là màu gì
Hình 1.5 Ảnh đã được tách biên (Trang 15)
Bộ tách biên Roberts sử dụng mặt nạ Roberts như hình bên dưới xấp xỉ phương pháp số theo đạo hàm bậc nhất Gx, Gy - Dùng Matlab nhận dạng trạng thái đèn giao thông là màu gì
t ách biên Roberts sử dụng mặt nạ Roberts như hình bên dưới xấp xỉ phương pháp số theo đạo hàm bậc nhất Gx, Gy (Trang 17)
+ Mơ hình màu RGB: ánh sáng Red, Green và Blue ứng dụng cho màn hình, TV. - Dùng Matlab nhận dạng trạng thái đèn giao thông là màu gì
h ình màu RGB: ánh sáng Red, Green và Blue ứng dụng cho màn hình, TV (Trang 18)
2.4.Mơ hình màu HSV - Dùng Matlab nhận dạng trạng thái đèn giao thông là màu gì
2.4. Mơ hình màu HSV (Trang 20)
∗ Pop-up menu: menu sổ xuống trình bày một bảng các chọn lựa khi nhấp chuột vào đĩ. - Dùng Matlab nhận dạng trạng thái đèn giao thông là màu gì
op up menu: menu sổ xuống trình bày một bảng các chọn lựa khi nhấp chuột vào đĩ (Trang 23)
immovie Tạo phim từ nhiều loạt nhiều khuơn hình imwriteCất ảnh vào file đồ hoạ - Dùng Matlab nhận dạng trạng thái đèn giao thông là màu gì
immovie Tạo phim từ nhiều loạt nhiều khuơn hình imwriteCất ảnh vào file đồ hoạ (Trang 28)
Hình 2.1: Biểu diễn ảnh bằng phương pháp chỉ số - Dùng Matlab nhận dạng trạng thái đèn giao thông là màu gì
Hình 2.1 Biểu diễn ảnh bằng phương pháp chỉ số (Trang 29)
Hình 2.1: Biểu diễn ảnh bằng phương pháp chỉ số - Dùng Matlab nhận dạng trạng thái đèn giao thông là màu gì
Hình 2.1 Biểu diễn ảnh bằng phương pháp chỉ số (Trang 29)
Hình 2.2: Biểu diễn ảnh theo độ sáng - Dùng Matlab nhận dạng trạng thái đèn giao thông là màu gì
Hình 2.2 Biểu diễn ảnh theo độ sáng (Trang 30)
Hình 2.3: Ảnh nhị phân - Dùng Matlab nhận dạng trạng thái đèn giao thông là màu gì
Hình 2.3 Ảnh nhị phân (Trang 30)
Hình 2.2: Biểu diễn ảnh theo độ sáng - Dùng Matlab nhận dạng trạng thái đèn giao thông là màu gì
Hình 2.2 Biểu diễn ảnh theo độ sáng (Trang 30)
Hình 2.3: Ảnh nhị phân - Dùng Matlab nhận dạng trạng thái đèn giao thông là màu gì
Hình 2.3 Ảnh nhị phân (Trang 30)
Hình 2.4: Biểu diễn ảnh RGB - Dùng Matlab nhận dạng trạng thái đèn giao thông là màu gì
Hình 2.4 Biểu diễn ảnh RGB (Trang 31)
Hình 2.4: Biểu diễn ảnh RGB - Dùng Matlab nhận dạng trạng thái đèn giao thông là màu gì
Hình 2.4 Biểu diễn ảnh RGB (Trang 31)
là hình trịn? Tách biên - Dùng Matlab nhận dạng trạng thái đèn giao thông là màu gì
l à hình trịn? Tách biên (Trang 33)
1. SƠ ĐỒ TỔNG QUÁT - Dùng Matlab nhận dạng trạng thái đèn giao thông là màu gì
1. SƠ ĐỒ TỔNG QUÁT (Trang 33)
Hình 4.1: Sơ đồ nguyên lý của mơ hình xe thơng minh - Dùng Matlab nhận dạng trạng thái đèn giao thông là màu gì
Hình 4.1 Sơ đồ nguyên lý của mơ hình xe thơng minh (Trang 34)
SƠ ĐỒ NGUYÊN LÝ VÀ NGUYÊN LÝ HOẠT  ĐỘNG CỦA MẠCH - Dùng Matlab nhận dạng trạng thái đèn giao thông là màu gì
SƠ ĐỒ NGUYÊN LÝ VÀ NGUYÊN LÝ HOẠT ĐỘNG CỦA MẠCH (Trang 34)
PHẦN MỀM ĐIỀU KHIỂN MƠ HÌNH XE THƠNG MINH - Dùng Matlab nhận dạng trạng thái đèn giao thông là màu gì
PHẦN MỀM ĐIỀU KHIỂN MƠ HÌNH XE THƠNG MINH (Trang 37)

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