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

luận văn tốt nghiệp đề tài đèn giao thông thông minh

111 385 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 111
Dung lượng 2,73 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 y học, các thuật toán được ứng dụng để nâng cao độ tương phản, mã hóa các mức sáng thành các màu để nội suy ảnh X-quang…Các nhà thiên văn học, dùng kỹ thuật này nhằm tách các nhiễu

Trang 1

Chương 1

GIỚI THIỆU TỔNG QUÁT VỀ ĐỀ TÀI TỐT NGHIỆP

1.1 Giới thiệu về các ứng dụng cXC xử lý ảnh trong thực tế:

Các đề tài nghiên cứu về xử lý ảnh từ năm 1964 đến nay không ngừng phát triển Chúng được ứng dụng trong kỹ thuật nhằm giải quyết các vấn đề về nâng cao chất lượng thông tin ảnh

Xử lý ảnh ngày nay được ứng dụng trong nhiều lĩnh vực

Trong y học, các thuật toán được ứng dụng để nâng cao độ tương phản, mã hóa các mức sáng thành các màu để nội suy ảnh X-quang…Các nhà thiên văn học, dùng

kỹ thuật này nhằm tách các nhiễu thu được từ vệ tinh, tăng độ tương phản cho ảnh chụp để nhìn thấy được các chi tiết mà mắt thường khó phân biệt được Trong vật lý,

kỹ thuật máy tính nâng cao chất lượng ảnh được ứng dụng trong các lĩnh vực như: plasmas, microscopy điện tử…

Đối với ngành điện tử tự động thì xử lý ảnh được ứng dụng trong thực tế như: máy nhìn công nghiệp để kiểm tra sản phẩm, nhận dạng mục tiêu trong quân sự, nhận dạng vân tay, nhận dạng đồng xu, nhận dạng mặt người, cảm biến màu, theo dõi mật

độ giao thông…

Có thể thấy các đề tài liên quan đến xử lý ảnh, cũng như các ứng dụng của nó trong thực tế thì vô cùng rộng lớn Tuy nhiên, không phải bất cứ một ứng dụng nào của xử lý ảnh khi đưa vào thực tế cũng dễ dàng, việc làm một ứng dụng hoạt động tốt

đó là cả một vấn đề khó khăn bởi các yếu tố ngoại cảnh rất dễ tác động đến công việc

xử lý ảnh như: không gian thay đổi, ánh sáng thay đổi, độ tương phản của ảnh cần xử

lý với môi trường không gian là không cao…

1.2 Nội dung đề tài và các ứng dụng đã có trước đó:

1.2.1 Nội dung đề tài:

• Yêu cầu của đề tài tốt nghiệp bao gồm việc thiết kế và chế tạo hoàn thiện mô hình tại một ngã tư có hai chiều lưu thông, có mô hình đèn giao thông và camere được bố trí hợp hợp lý

• Mô hình là những chiếc xe được đặt tại hai chiều luư thông của một ngã tư, ta sắp xếp những chiếc xe đó ứng với nhiều trường hợp như : mật độ thưa, mật

độ bình thường, và mật độ cao, để ta xử dụng công cụ matlab chụp lại và đư ra kết quả phân tích Sau khi phân tích tín hiệu sẽ được gửi xuống để thực hiện đặt thời gian cho đèn giao thông

• Tìm hiểu truyền thông máy tính với vi xử lý

• Tạo giao diện người dùng

Trang 2

• Tìm hiểu các thuật toán xử lý ảnh, bắt ảnh trên Matlab.

• Phải thực hiện được giải thuật và chưong trình để đánh giá được mật độ lưu thông thông qua công cụ matlab

• Tránh được các yếu tố gây nhiễu từ môi trường ngoài như: độ tương phản giữa xe và nền đường không cao

Sơ đồ hệ thống:

1.2.2 Lý do chọn và làm đề tài “ Đèn giao thông thông minh ”:

Như đã nói, cùng với sự phát triển không ngừng của xử lý ảnh thì hàng loạt các sản phẩm ra đời được ứng dụng rộng rãi trong thực tế Các đề tài liên quan đến

xử lý ảnh trong giao thông đường bộ cũng như đường thủy ngày càng được quan tâm Nhóm “Mắt thần” gồm các thành viên đang nghiên cứu và công tác tại Trung tâm Công nghệ Mô phỏng – Học viện kỹ thuật quân sự (Bộ Quốc phòng) Với đề tài: “Hệ thống ghi vé tự động và quản lý phương tiện sử dụng công nghệ xử lý và nhận dạng ảnh” (đã đoạt Giải nhì trong cuộc thi trí tuệ Việt Nam 2006) Cùng theo đó nhóm cũng đã và đang nghiên cứu hệ thống quản lý trật tự giao thông, thống kê được lưu lượng phương tiện qua lại trên đường, đo tốc độ, chụp lại hình phương tiện vi phạm trật tự giao thông như: vượt đèn đỏ, đi sai làn đường

Đề tài của Lê Quốc Anh, đến từ Viện tin học Pháp ngữ Hà Nội (dự thi TTVN 2005) với đề tài “Giải pháp giám sát giao thông” Tác giả đã mô tả hệ thống có khả năng: biết được số lượng xe trên đường, vận tốc xe, chiều dài hàng đợi khi xảy ra ách tắc…

Thế giới đã phát triển các chương trình đếm xe và tính vận tốc tự động bằng máy tính từ lâu như hệ thống giám sát giao thông bằng công nghệ xử lý ảnh của phòng thí nghiệm máy tính của hãng IBM, hệ thống đếm xe bằng xử lý ảnh máy tính của trường đại học Berkeley (Mỹ)…

Trong thực tế chúng ta thấy, tại các ngã tư đèn xanh đèn đỏ có những lúc phía bên đường chỉ có vài phương tiện tham gia giao thông Phía bên còn lại thì mật độ lưu thông thì quá cao nhưng vẫn phải chờ cho thời gian đèn xanh đỏ được đặt cố định rồi mới được lưu thông tiếp nhiều khi còn gây ra ách tắc giao thông do những người không y thức nóng lòng muốn qua đường nhanh Vì vậy đề tài nghiên cứu “ Đèn giao thông thông minh “ được đưa ra với mục đích đánh giá được mật độ lưu thông tại các ngã tư nhằm giải quyết được vấn đề nêu trên Theo em nghĩ đây là một đề tài hết sức mới mẻ và thử sức sinh viên

Do đây là một đề tài mới mẻ và thời gian có hạn nên trong quá trình ngiên cứu còn gặp rất nhiều khó khăn trong việc xử lý Em hy vọng rằng đề tài này sẽ được các bạn sinh viên ham thích và sẽ phát triển để đề tài ngày càng hoàn thiện hơn

Trang 3

1.3 Khó khăn:

Vì nền đường thì cố định Nhưng các loại xe lưu thông trên đường thì đa dạng

Do đó vấn đề là sẽ làm như thế nào nếu như giữa xe và nền đường có màu sắc gần giống nhau?

Chẳng hạn:

Nếu giữa chiếc xe và không gian quanh nó có độ tương phản cao

Trang 4

Hình 1.2 Biểu đồ histogram

(a)

(b)

Trang 5

(c)Hình1.3 (a) Hình xe màu đỏ chụp từ webcam, (b) Ảnh xám, (c) Ảnh trắng đen.

Nếu độ tương phản giữa chiếc xe với nền đường là thấp?

(a)

(b)

Trang 6

Hình 1.4 (a) Xe chụp từ webcam, (b) Ảnh đa cấp xám, (c) Ảnh trắng đen

Hình 1.5 Biểu đồ histogram với xe màu xanh, nền đường màu đen.

Từ biểu đồ histogram hình 1.5 Đối với xe màu xanh, nền đường màu đen rõ ràng có độ tương phản rất thấp (các thành phần histogram hẹp và tập trung ở cuối) Điều này dẫn tới ảnh sau khi chuyển sang trắng đen hình 1.4 (c) là không tốt Do đó, không thể tính diện tích chiếc xe trong trường hợp này

Nhiễu bởi ánh sáng môi trường:

Ánh sáng sẽ biến thiên theo giờ giấc trong ngày Hơn nữa, nó còn chịu sự tác động trực tiếp hoặc gián tiếp từ các đối tượng như: xe vào trạm lúc ban đêm sẽ bật đèn, người đi đường chiếu đèn vào, đèn đường…

Trang 8

Giải quyết độ tương phản giữa không gian nền và xe:

Để giải quyết công việc tách xe thì giữa xe và không gian quanh nó phải có độ tương phản cao

độ tương phản của nó là thấp thì phương pháp này không hiệu quả

Đối với trường hợp trên ta có cách làm tăng độ tương phản giữa xe và nền đường bằng cách tạo nền đường sao cho có những vạch trắng xen kẽ những vạch đen,

và cách làm này rất hiệu quả và phù hợp với bố trí nền đường tại ngã tư là những vạch trắng giảm tốc độ xe

Hình 1.6 nền đường cho mô hình

Trang 9

Chương 2

GIỚI THIỆU VỀ XỬ LÝ ẢNH VÀ MATLAB

2 Giới thiệu cách thức truy cập thông tin trên help của matlab:

Trang 10

2.1.1 Thu nhận ảnh:

Thu nhận ảnh có thể sử dụng máy quay (camera), webcam, máy quét (scanner)

…Ảnh thu được có thể là ảnh trắng đen hoặc cũng có thể là ảnh màu Tuy nhiên, để

có thể xử lý và tính toán các ảnh trên máy tính thì chỉ có ảnh số là đơn giản nhất.Tùy thuộc vào chất lượng thiết bị thu nhận ảnh, các ảnh sẽ có chất lượng khác nhau Điều này ảnh hưởng lớn đến quá trình tiền xử lý ảnh

Các thiết bị ảnh có thể cho ra các kết quả tương tự hoặc ảnh số cho nên ảnh sau khi chụp phải được chuyển thành ảnh số (có thể dùng máy scanner để quét lại tấm ảnh tương tự, để chuyển nó sang ảnh số đưa lên máy tính xử lý)

2.1.2 Quá trình tiền xử lý ảnh:

Đó là quá trình xử lý và nâng cao chất lượng ảnh Ảnh sau khi thu nhận được

có thể chứa nhiều thông tin không cần thiết như: nhiễu, lòe,…Điều này làm cho ảnh

có dung lượng lớn và có chất lượng không tốt, ảnh hưởng không nhỏ đến quá trình

Trong thực tế, quá trình xử lý ảnh thì có nhiều phương pháp làm khác nhau và

vì thế chúng ta sẽ có nhiều thuật toán tìm ra đặc trưng của một tấm ảnh là khác nhau

Trang 11

2.2 Một số khái niệm về ảnh số:

2.2.1 Cơ sở về màu:

Isaac Newton phát hiện ra rằng, nếu một chùm tia sáng mặt trời đi qua một lăng kính thì chùm sáng khi qua nó không phải là ánh sáng trắng Mà nó là một phổ màu liên tục từ tím tới đỏ

Ánh sáng là những nguồn năng lượng điện từ trong dãy bước sóng quang phổ từ 400nm đến 700nm

Phổ màu được chia thành 6 vùng màu: tím, lam, lục, vàng, cam, đỏ Nếu nhìn màu đầy đủ thì không có ranh giới giữa các màu kế nhau, mà màu này liền sang màu khác

Màu mà mắt người cảm nhận được là do sự phản xạ ánh sáng từ vật thể

2.2.2 Ảnh RGB:

Ảnh RGB (ảnh màu) hay còn gọi là ảnh “truecolor” do tính trung thực của nó Ảnh này được biểu diễn theo một ma trận ba chiều kích thước m x n x 3, với m x n là kích thước ảnh theo pixels Ma trận này định nghĩa các thành phần màu red, green, blue cho mỗi điểm ảnh Ví dụ: Điểm ảnh ở vị trí (10,5) sẽ có 3 thành phần màu được xác định bởi các giá trị (10,5,1), (10,5,2) và (10,5,3) Với 1, 2, 3 là tương ứng với các màu R, G, B

2.2.3 Ảnh trắng đen, ảnh đa cấp xám:

Ảnh trắng đen chỉ bao gồm hai màu: màu đen và màu trắng Chúng ta phân sự biến đổi này thành L mức Nếu L bằng hai tức chỉ có hai mức là 0 và 1 thì đó là ảnh trắng đen, hay còn gọi là ảnh nhị phân Nếu L lớn hơn hai thì ta có ảnh đa cấp xám Việc xác định số mức này phụ thuộc vào tiêu chí lượng tử hóa L thường chọn là 32,

64, 128, 256 Trong đó ảnh đa cấp xám 256 mức là ảnh có chất lượng cao và thường được chọn

Với ảnh nhị phân thì mỗi pixel mã hóa trên một bit Còn ảnh đa cấp xám 256 mức thì mỗi pixel mã hóa trên tám bits

Chúng ta có thể thấy rõ được nguyên lý của một tấm ảnh màu, cũng như ảnh trắng đen thông qua một số lệnh trong matlab:

2.2.4 Ví dụ trong matlab về ảnh màu và ảnh trắng đen, đa cấp xám:

%Thực hiện lấy ảnh RGB có sẵn trong máy tính, ảnh được lưu sẵn tại thư mục

%work trong matlab, có path là: C:\ Matlab7.0\Work\file ảnh

>> anh=imread('k.jpg'); %phải có dấu phẩy cuối hàng vì đây là một ma trận

ảnh %có dung lượng lớn.

Trang 12

figure(1), imshow(anh); % trình diễn ảnh màu RGB

Trang 13

%Thực hiện chuyển đổi ảnh màu thành ảnh đa cấp xám, tăng độ tương phản và chuyển thành ảnh trắng đen.

>> T1=rgb2gray(anh); %chuyển thành ảnh đa cấp xám

>> figure(3),imshow(T1);

>> tuong_phan = imadjust(T1); %tăng độ tương phản

>> figure(4),imshow(tuong_phan);

>>lay_nguong = graythresh(tuong_phan); %lấy ngưỡng theo thuật toán otsu

>> trang_den = im2bw(tuong_phan,lay_nguong); %ảnh trắng đen

>> figure(5),imshow(trang_den);

Hình 2.4 Ảnh đa cấp xám

Hình 2.5 Ảnh trắng đen

Trang 14

2.2.5 Định dạng ảnh:

Ảnh Bitmap (Microsoft Windows Bitmap (*.BMP)):

Là ảnh được định dạng theo chuẩn do Microsoft đưa ra Với định dạng này, ảnh được chuyển mã và được lưu lại đầy đủ thông tin Tuy nhiên, ảnh được định dạng theo dạng này có dung lượng rất lớn vì nó không được nén

Ảnh GIF (Graphic Interchanger Format (*.GIF)):

Được định dạng theo chuẩn nén LZW dựa trên sự lặp lại của một nhóm điểm ảnh thay vì các mã loạt dài như các định dạng khác nên dung lượng lưu trữ nhỏ hơn Ảnh GIF thường được dùng để lưu trữ các ảnh đơn giản và ít có sự chuyển đổi màu giữa các vùng ảnh Chẳng hạn các ảnh đồ họa hay đồ thị, biểu đồ…Tuy nhiên, ảnh GIF có chất lượng cao, độ phân giải đồ họa cao, có thể hiển thị trên hầu hết các phần mềm đồ họa

Ảnh JPEG (Joint Photographic Expert Group (*.JPEG hay *.JPG)):

Ảnh JPEG là chuẩn nén ảnh tĩnh có mất mát, thường được dùng để lưu trữ các ảnh màu hoặc các ảnh đa mức xám khi không có yêu cầu cao về ảnh giải nén phải giống hoàn toàn ảnh gốc Dung lượng của ảnh JPEG thường rất nhỏ Người dùng có thể chủ động dung lượng của ảnh lưu trữ bằng cách chọn tỉ lệ nén nhiều hay ít Ảnh lưu với định dạng JPG có thể lưu được 24 bits/pixel dữ liệu màu (tương đương 16 triệu màu)

2.3 Các phương pháp xử lý ảnh trong quá trình tiền xử lý:

2.3.1 Thay đổi độ tương phản:

Trong ảnh số, mỗi điểm ảnh có một giá trị độ sáng khác nhau để mắt người có thể nhìn thấy và cảm nhận Tuy nhiên, nếu hai đối tượng có cùng độ sáng nhưng đặt trên hai nền ảnh khác nhau thì cho chúng ta các cảm nhận khác nhau

Khái niệm độ tương phản được đưa ra để biểu diễn sự thay đổi độ sáng của đối tượng so với nền, hay độ nổi của điểm ảnh (vùng ảnh) so với vùng nền chứa nó.Ảnh với độ tương phản thấp có thể do điều kiện sáng không đủ, không đều, hoặc sự tương đối giống nhau về màu sắc, ánh sáng giữa đối tượng và không gian quanh đối tượng hoặc do tính không tuyến tính hay biến động nhỏ của bộ cảm nhận ảnh

Để điều chỉnh lại độ tương phản của ảnh, ta điều chỉnh lại biên độ trên toàn dải hay trên dải có giới hạn bằng cách biến đổi tuyến tính đầu vào (dùng hàm biến đổi là hàm tuyến tính) hay phi tuyến (hàm mũ hay hàm logarit)

Thay đổi độ tương phản dùng trong matlab:

>> anh=imread('race_02.jpg');

>> figure(1),imshow(anh);

>> T1=rgb2gray(anh);

>> figure(3),imshow(T1);

Trang 15

>> tuong_phan = imadjust(T1); %tạo nên tương phản với imadjust

>> figure(4),imshow(tuong_phan);

>> lay_nguong = graythresh(tuong_phan);

>> trang_den = im2bw(tuong_phan,lay_nguong);

>> figure(5),imshow(trang_den);

Hình 2.6 Ảnh chưa tăng độ tương phản

Hình 2.7 Ảnh sau khi tăng độ tương phản

Công thức chung cho lệnh imadjust (đối với tất cả các ảnh xám, màu…) là:

>> J = imadjust(I,[low_in; high_in], [low_out; high_out],gamma);

Trong đó:

 I: là ma trận ảnh gray

 [low_in; high_in]: là giá trị mức xám ở ảnh ban đầu Nếu tương ứng ta nhập thông số là [0 1] thì mặc định là kiểu uint8, [0 1] tương ứng với mức lượng tử của tấm ảnh là từ [0 255], với uint16 thì [0 1] tương ứng với [0 65535]

 [low_out; high_out]: là giá trị mức xám ở ảnh sau biến đổi Các giá trị được chọn của nó nằm trong khoảng [0 1], tương tự như [low_in; high_in]

Gamma:

Nếu gamma nhỏ hơn 1 thì ảnh sau biến đổi phi tuyến với ảnh ban đầu, theo hàm mũ dạng:

Trang 16

Nếu gamma bằng 1 thì ảnh sau biến đổi sẽ tỉ lệ tuyến tính với ảnh ban đầu

Nếu gamma lớn hơn 1 thì ảnh sau biến đổi phi tuyến với ảnh ban đầu theo hàm mũ dạng:

Chú ý: Ta có thay đổi các thông số của [low_in; high_in] hoặc [low_out; high_out]

để tạo nên những tấm ảnh âm bản.

Thực hiện với Matlab:

>> T1=rgb2gray(anh); % biến đổi thành ảnh mức xám

>> figure(3),imshow(T1);

>> tuong_phan = imadjust(T1,[0 1],[1 0]); % tạo ảnh âm bản

>> figure(4),imshow(tuong_phan);

Trang 19

? Nhận xét:

Từ biểu đồ Histogram ta thấy các thành phần Histogram ở vùng sáng và vùng tối dàn tập trung về hai góc của biểu đồ (vùng tối là có giá trị từ (0 đến 50) tập trung khá nhiều, vùng sáng từ (200 đến 250) cũng khá nhiều) Điều này chứng tỏ đây là một tấm ảnh có độ tương phản cao

Thực hiện tương tự như trên với một tấm ảnh khác

Hình 2.12 Ảnh xám

Hình 2.13 Biểu đồ Histogram

Trang 21

Hình 2.15 Biểu đồ Histogram

Trang 22

? Nhận xét:

Biểu đổ Histogram hình 2.15 Các thành phần histogram tập trung hẹp và bị phân cực về phía thấp của biểu đồ Do đó, đây là một tấm ảnh có độ tương phản thấp

và tối

Trong matlab có hỗ trợ hàm strectchlim Hàm này tính toán histogram của ảnh

và xác định các giá trị giới hạn của mức xám một cách tự động Nó trả về một vector

mà ta có thể dùng làm cặp thông số [low_in; high_in] cung cấp cho hàm imadjust (trong trường hợp mặc định, hàm imadjust sử dụng hàm stretchlim để tạo ra cặp [low_in; high_in] nếu người sử dụng không cung cấp) Bình thường hàm stretchlim

sẽ lấy giá trị mức xám nằm ở mức 1% và 99% trong vùng biến thiên mức xám của ảnh Tuy nhiên, ta cũng có thể thay đổi mở rộng hoặc thu hẹp các giới hạn này bằng cách cung cấp thêm các thông số tol cho hàm stretchlim Đó là một vector gồm hai phần tử thuộc [0 1] cho biết ta sẽ chọn các giới hạn ở mức nào trong vùng biến thiên mức xám (mặc định là [0.01 0.99])

>> [low, high]=stretchlim(I, tol)

Trang 23

Hình 2.16 Ảnh ban đầu

Hình 2.17 Ảnh sau khi tách biên với sobel

Trang 24

Ứng dụng với prewitt:

Hình 2.18 Ảnh sau khi tách biên với prewitt

Ngoài hai phương pháp tách biên trên, thì trong matlab còn hỗ trợ một số phương pháp khác như:

Trang 27

vào ảnh này để xem thông tin (màu sắc,

Trang 28

2.6 Bắt ảnh:

Giao tiếp máy tính với webcam:

• Mua một webcam có kèm theo đĩa driver Nếu có webcam mà không có driver thì có thể tìm thông tin của hãng bán webcam đó (có ghi trên sản phẩm), có thể vào Phong Vũ nhờ kỹ thuật viên chép phần mềm driver vào USB

• Cài đĩa driver vô máy tính (rất dễ dàng)

• Cắm đầu nối webcam vào cổng USB

• Mở chương trình chạy, lúc này máy tính đã có thể giao tiếp với webcam

Matlab giao tiếp với Webcam:

Trong quá trình xử lý ảnh, muốn chụp, quay phim…xử lý ảnh một cách trực tiếp từ webcam với phần mềm matlab Thì cần phải thực hiện những bước sau:

1 Phải có file vfm.dll (File này có thể đi xin thầy, bạn bè…).

2 Sau khi có file vfm.dll thì thực hiện chép file này vào địa chỉ:

C:/Windows/System32.

3 Lúc này, matlab có thể hoạt động giao tiếp với webcam

Ví dụ:

Thực hiện thu ảnh từ webcam:

>> vid=videoinput(‘winvideo’,1); % khai báo ngõ vào cho webcam

>> preview(vid); % trình diễn ảnh động thu được từ webcam

>> chup_hinh=getsnapshot(vid); % chụp hình ảnh động.

>> figure(2), imshow(chuphinh2); % trình diễn ảnh tĩnh vừa chụp

>> imwrite(chuphinh2, 'chup.png', 'png'); % lưu lại ảnh vừa chụp trong matlab/work

>> delete(vid);

>> clear vid; % thực hiện xóa và đóng ngõ vào.

2.7 Tạo giao diện người sử dụng:

Giao diện người sử dụng (Graphical User Interface - GUI) là giao diện bằng hình ảnh của chương trình Một GUI tốt có thể làm cho chương trình trở nên dễ sử dụng bằng cách cung cấp những thông tin ban đầu cần thiết và với những công cụ điều khiển như: nút nhấn (Pushbutton), hộp liệt kê (list box), thanh trượt (slider), trình đơn (menu),…GUI nên được thiết kế một cách dễ hiểu và thân thiện để người

sử dụng có thể hiểu và dự đoán được kết quả của một tác động

2.7.1 Cách làm việc của một GUI:

GUI bao gồm các nút nhấn, hộp liệt kê, thanh trượt, menu,… chúng cung cấp cho người sử dụng một môi trường làm việc thân thiện

Trang 29

Với GUI thì người sử dụng chỉ cần hiểu được cách ứng dụng của nó, không cần đi chi tiết quá sâu vào chuyên môn, không cần hiểu rõ cách thức làm việc của chương trình như thế nào Tuy nhiên, để tạo một GUI là một công việc rất khó khăn đối với người lập trình bởi vì GUI trong matlab thì chưa được phổ biến, nghiên cứu kỹ, các hướng dẫn cũng như ví dụ ứng dụng là chưa nhiều.

Các thành phần chính trong một GUI của matlab:

- Component (các thành phần cấu thành): mỗi đối tượng trong GUI (nút nhấn, nhãn, hộp soạn thảo,…) sau khi kết hợp lại thì tạo thành một GUI hoàn chỉnh

- Các thành phần phân loại thành:

o Công cụ điều khiển: nút nhấn, hộp soạn thảo, thanh trượt, …

o Các thành phần tĩnh: khung hình, chuỗi ký tự,…

o Menu và axes: là các hệ trục dùng để hiển thị hình đồ họa

o Figure: các thành phần của GUI phải được sắp xếp vào trong một figure, là một cửa sổ được hiển thị trên màn hình máy vi tính

o Callback: cuối cùng, khi người sử dụng tác động vào chương trình bằng cách nhấn chuột, hay gõ bàn phím thì chương trình phải đáp ứng lại mỗi sự kiện này

Các công cụ điều khiển

gọi hàm khi ta nhấn vào nó

thái là “on” và “off” Khi

có tác động nó sẽ gọi hàm tương ứng và thay đổi trạng thái từ “on” sang

“off” và ngược lại

hai trạng thái được thể hiện bởi một vòng tròn nhỏ, trạng thái “on” tương ứng với trường hợp có dấu chấm chấm giữa vòng tròn

và ngược lại “off” Trong một nhóm Radio button ta

Trang 30

chỉ có thể chọn được một thành phần Khi có tác động vào mỗi thành phần

sẽ có một hàm được gọi

hai trạng thái được thể hiện bởi một hình vuông nhỏ, trạng thái “on” tương ứng với trường hợp có đánh dấu giữa hình vuông

và ngược lại là trạng thái

“off” Khi có tác động nó

sẽ gọi hàm tương ứng và thay đổi trạng thái từ “on” sang “off” hoặc ngược lại

chuỗi Người sử dụng có thể chọn một chuỗi bằng cách click hoặc double click vào nó Chương trình sẽ gọi một hàm khi

có một chuỗi được chọn

chúng ta chọn một chuỗi trong một nhóm các chuỗi Danh sách tất cả các chuỗi

sẽ được hiển thị khi có click chuột Khi không có click chuột công cụ chỉ thể hiện chuỗi hiện tại được chọn

Trang 31

Slider Uicontrol Là công cụ cho phép điều

chỉnh một cách liên tục giá trị trong một thanh trượt Mỗi khi giá trị của thanh trượt thay đổi sẽ có hàm được gọi

Các thành phần tĩnh

một khung hình chữ nhật Frame còn được sử dụng

để nhóm các công cụ điều khiển lại với nhau Frame không có khả năng gọi hàm

một nhãn bao gồm các ký

tự Text field không có khả năng gọi hàm

Menu và trục đồ thị

menu trên thanh công cụ Chương trình sẽ gọi hàm khi một đối tượng trong menu được chọn

hệ trục đồ thị Axes không

có khả năng gọi hàm

menu xuất hiện khi righ click vào một hình trong giao diện

Trang 32

Hình 2.20 Một số thành phần trong giao diệ

2.7.2 Tạo và hiển thị một GUI:

Mở màn hình GUI: Vào Matlab 7.0\menu\GUIDE Chọn Create New Gui.

Ví dụ: Tạo một giao diện để đánh giá mật độ lưu thông trên đường từ tấm hình cho

trước_cơ sơ để phát triển luận văn “đèn giao thông thông minh”

Hình 2.21 tạo giao diện điều khiển

Phân tích:

Chúng cần có: Năm nút Pushbutton, bảy Text field, hai Axes

Bước 1: Vào Menu\Gui để phác họa giao diện có dạng như hình vẽ:

Trang 33

Bước 2: Lưu lại giao diện với tên là: giaodien_doan3 Sau khi lưu thì ta sẽ có hai file

đó là: giaodien_doan3.fig và giaodien_doan3.m Với giaodien-doan3.fig là file chạy giao diện và giaodien_doan3.m là file code chương trình.

Hình 2.22 Cửa sổ để thực hiện viết chương trình cho giao diện

Bước 3: Quay lại giaodien_doan3.fig để thay đổi một số thuộc tính cho các nút nhấn

và textfield.

Nhấn double click vào nút pushbutton thứ nhất ta sẽ thấy cửa sổ thuộc tính hiện ra

Hình 2.23 Cửa sổ thuộc tính cho nút Pushbutton thứ nhất

Trang 34

Trong cửa sổ thuộc tính của nút nhấn Pushbutton thứ nhất vào:

Vào Style gõ: “ANH NEN”.

Vào FontSize chọn kích cỡ chữ là 10.0.

Vào FontWeigh chọn kiểu chữ đậm là bold.

Tương tự cho nút nhấn Pushbutton thứ hai,ba,bốn,năm lần lượt:

Thay Style: “ANH SO SANH”, “PHAN TICH ANH”, “RESET”, “CANCEL” Đối với textfield thì vô bảng thuộc tính chọn Style sau đó ghi: “Danh Gia Mat Do

Luu Thong” cho text10, “TRUONG DAI HOC TON DUC THANG,KHOA DIEN TU….”cho các text còn lại

DIEN-Sau khi thay đổi thuộc tính ta có màn hình giao diện sau:

Trang 35

'Chon 1 buc anh');

'*.*','Chon file anh bat ky (*.*)'},

'Chon 1 buc anh');

Trang 37

%disp('mat do luu thong thua')

set(handles.text10,'string','Mat Do Luu Thong Thua');

else

if 25<dt_tyle&dt_tyle<39

%disp('mat do luu thong binh thuong')

set(handles.text10,'string','Mat Do Luu Thong Binh Thuong');

else

if 39<dt_tyle&dt_tyle<100

%disp('mat do luu thong qua cao')

set(handles.text10,'string','Mat Do Luu Thong Qua Cao');

end

end

end

function pushbutton4_Callback(hObject, eventdata, handles)

global IMG IMG1;

IMG=IMG1;

image(IMG)

function pushbutton5_Callback(hObject, eventdata, handles)

close;

Trang 38

2.8 Kết quả:

Sau khi chạy chương trình ta thu được kết quả sau:

Hình 2.25 Ảnh gốc và ảnh được so sánh

Trang 39

Hình 2.26 Ảnh gốc và ảnh được so sánh sau khi được phân vùng giới hạn

Trang 40

Hình 2.27 Ảnh gốc và ảnh được so sánh sau khi được chuyển về ảnh đa cấp sám

Ngày đăng: 06/03/2015, 22:06

HÌNH ẢNH LIÊN QUAN

Hình 1.2 Biểu đồ histogram - luận văn tốt nghiệp đề tài đèn giao thông thông minh
Hình 1.2 Biểu đồ histogram (Trang 4)
Hình 1.6  nền đường cho mô hình - luận văn tốt nghiệp đề tài đèn giao thông thông minh
Hình 1.6 nền đường cho mô hình (Trang 8)
Hình 2.2 Hình màu RGB - luận văn tốt nghiệp đề tài đèn giao thông thông minh
Hình 2.2 Hình màu RGB (Trang 12)
Hình 2.3 Màu R tách từ RGB - luận văn tốt nghiệp đề tài đèn giao thông thông minh
Hình 2.3 Màu R tách từ RGB (Trang 12)
Hình 2.10 Ảnh xám - luận văn tốt nghiệp đề tài đèn giao thông thông minh
Hình 2.10 Ảnh xám (Trang 18)
Hình 2.13 Biểu đồ Histogram - luận văn tốt nghiệp đề tài đèn giao thông thông minh
Hình 2.13 Biểu đồ Histogram (Trang 19)
Hình 2.12 Ảnh xám - luận văn tốt nghiệp đề tài đèn giao thông thông minh
Hình 2.12 Ảnh xám (Trang 19)
Hình 2.16 Ảnh ban đầu - luận văn tốt nghiệp đề tài đèn giao thông thông minh
Hình 2.16 Ảnh ban đầu (Trang 23)
Hình 2.18 Ảnh sau khi tách biên với prewitt - luận văn tốt nghiệp đề tài đèn giao thông thông minh
Hình 2.18 Ảnh sau khi tách biên với prewitt (Trang 24)
Hình 2.21 tạo giao diện điều khiển - luận văn tốt nghiệp đề tài đèn giao thông thông minh
Hình 2.21 tạo giao diện điều khiển (Trang 32)
Hình 2.20 Một số thành phần trong giao diệ - luận văn tốt nghiệp đề tài đèn giao thông thông minh
Hình 2.20 Một số thành phần trong giao diệ (Trang 32)
Hình 2.22 Cửa sổ để thực hiện viết chương trình cho giao diện - luận văn tốt nghiệp đề tài đèn giao thông thông minh
Hình 2.22 Cửa sổ để thực hiện viết chương trình cho giao diện (Trang 33)
Hình 2.25  Ảnh gốc và ảnh được so sánh - luận văn tốt nghiệp đề tài đèn giao thông thông minh
Hình 2.25 Ảnh gốc và ảnh được so sánh (Trang 38)
Hình 2.30  ảnh sau khi  tăng độ tương phản và lọc trung vị - luận văn tốt nghiệp đề tài đèn giao thông thông minh
Hình 2.30 ảnh sau khi tăng độ tương phản và lọc trung vị (Trang 42)

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