Tải bản đầy đủ - 0 (trang)
Hình 2.16: Đường thẳng Hough trong hệ tọa độ Đề-các [15]

Hình 2.16: Đường thẳng Hough trong hệ tọa độ Đề-các [15]

Tải bản đầy đủ - 0trang

Chương 3



PHẦN MỀM ỨNG DỤNG

Phần này trình phần mềm và các gói cơng cụ chính được sử dụng trong đề

tài: Matlab cùng với các cơng cụ của nó là: Image Processing Toolbox, Image

Acquistion Toolbox, Computer Vision Toolbox, Data Acquistion Toolbox.

3.1. Matlab

III.1.1. Giới thiệu Matlab.

Matlab (Maxtrix Laboratory) là một công cụ phần mềm được xây dựng bởi

MathWork đã trở nên rất phổ biến với các kỹ sư, các nhà khoa học và nhà nghiên

cứu trong cả hai lĩnh vực công nghiệp và hàn lâm, do nhiêu yếu tố, trong đó, sự sẵn

có của các bộ cơng cụ đặc biệt được đóng gói theo từng chuyên ngành thuộc các

lĩnh vực quan trọng, từ các mạng nơron đến các lĩnh vực tài chính hay xử lý ảnh.

Dùng Matlab có thể giải quyết được các vấn đề một cách đơn giản, trực quan mà

không cần đòi hỏi người sử dụng phải là những lập trình viên chuyên nghiệp.



Hình 3.1: Giao diện khi khởi động



31



Matlab cùng bộ cơng cụ rất mạnh của nó cho phép giải quyết các bài toán

khác nhau đặc biệt là hệ phương trình tuyến tính, phi tuyến hay các bài tốn ma trận

với kết quả nhanh chóng và chính xác. Bộ lệnh này lên tới hàng ngàn và ngày càng

được mở rộng thông qua các hàm ứng dụng được tạo lập bởi người sử dụng hay

thông qua thư viện trợ giúp.

Bên cạnh đó, Matlab cho phép xử lý dữ liệu, biểu diễn đồ họa một cách mềm

dẻo, đơn giản và chính xác trong không gian hai chiều cũng như ba chiều, giúp

người sử dụng có thể quan sát kết quả một cách trực quan và đưa ra giải pháp tốt

nhất. Được tích hợp một số ngơn ngữ lập trình thơng dụng như C, C++, Fortran,

Java… do đó những ứng dụng của Matlab có thể được chuyển đổi một cách dễ

dàng, mềm dẻo sang những ngơn ngữ đó.

Trong lĩnh vực xử lý ảnh số, Matlab được xem là một công cụ rất mạnh trong

thời gian qua. Hiện nay, ở Việt Nam và trên thể giới đã có nhiều ứng dụng từ việc

xử lý ảnh với Matlab như: Các hệ thống giữ xe tự động, nhận diện khn mặt…

Phiên bản mới nhất tính đến tháng 3/2014 là bảng R2014a (8.3).

III.1.2. Các thành phần cơ bản của Matlab.

Phần này trình bày các yếu tố cơ bản của Matlab gồm: Môi trường làm việc,

các kiểu dữ liệu và sự hoạt động của các dòng lệnh.

III.1.2.1. Môi trường làm việc.

Môi trường làm việc của Matlab bao gồm:

 Matlab Desktop: thơng thường gồm 5 của sổ chính: Command Window,

Workspace Browser, Current Directory Window, Command History Window

và một hoặc nhiều Figure Window – để hiển thị hình ảnh hoặc đồ thị.

 Matlab Editor: Dùng để tạo và chỉnh sửa các M-files. Bao gồm các hàm để

lưu, xem và sửa lỗi các M-files.

 Help System: Là cửa sổ trợ giúp được hiển thị dưới dạng trình duyệt HTML,

bao gồm các chức năng tìm kiếm và trợ giúp.



32



Hình 3.2: Cửa sổ làm việc

III.1.2.2. Kiểu dữ liệu.

Matlab hổ trợ các kiểu dữ liệu được liệt kê ở Bảng 3.1. Tám kiểu dữ liệu đầu

trong bảng là kiểu số. Trong Matlab kiểu dữ liệu mặt định là Double cho kiểu số. Có

thể chuyển đổi giữa các kiểu dữ liệu trong Matlab. Một chuổi (string) trong Matlab

đơn giản là một mảng 1x n ký tự.

Bảng 3.1: Các kiểu dữ liệu của Matlbab.

Kiểu dữ

liệu

unit8

unit16

unit32

int8

int16

int32

single

double

logical

char



Diễn tả

8-Bit số nguyên không dấu (1byte cho mỗi phần tử)

16-Bit số nguyên không dấu (2byte cho mỗi phần tử)

32-Bit số nguyên không dấu (4byte cho mỗi phần tử)

8-Bit số nguyên có dấu (1byte cho mỗi phần tử)

16-Bit số nguyên có dấu (2byte cho mỗi phần tử)

32-Bit số nguyên có dấu (4byte cho mỗi phần tử)

Số thập phân với độ chính xác đơn (4byte cho mỗi phần tử)

Số thập phân với độ chính xác kép (8byte cho mỗi phần tử)

Kiểu logic có giá trị 0 (fales) hoặc 1 (true) (1byte cho mỗi phần tử)

Kiểu ký tự (2byte cho mỗi phần tử)



33



III.1.2.3. Mảng và ma trận.

Một trong những điểm mạnh của Matlab là khả năng xử lý một tập số được

sặp xếp theo một thứ tự nào đó (gọi là mảng) như là một biết đơn (single variable).

Khả năng này làm cho chương trình viết bằng Matlab rất gọn và dễ hiểu. Mảng là

một đối tượng cơ sở của Matlab.

3.2.3.1. Mảng một chiều: Véc tơ

Mảng kiểu dòng (Véc tơ dòng): Các phần tử được ngăn cách bằng khoảng

trắng hoặc dấu phẩy hoặc cả hai cho dễ nhìn. Tất cả các phần tử được đặt trong dấu

ngoặc vuông [ ]. Matlab hiển thị véc tơ dòng theo hàng ngang.

Mảng kiểu cột (Véc tơ cột): Các phần tử được ngăn cách bằng dấu chẩm

phẩy (;). Matlab hiển thị véc tơ cột theo phương dọc.

Mảng có các phần từ cách đều: Khi muốn khai báo một mảng có các phần tử

cách đều theo số gia q: Tên_mảng = [phần tử đầu: số gia q: phần tử cuối].

3.2.3.2. Mảng hai chiều: Ma trận

Một mảng trong Matlab có thể có nhiều dòng, nhiều cột. Một mảng hai chiều

như vậy được gọi là ma trận.

Một ma trận có kích thước m x n, chính là một mảng có n dòng, m cột.

Các véc tơ được Matlab xem là các mảng hai chiều đặc biệt: chúng có kích

thước 1 x n (véc tơ dòng) hoặc m x 1 (véc tơ cột). Matlab xếp véc tơ và ma trận vào

lớp double array trong workspace.

Có thể chỉnh sửa các phần tử của ma trận bằng cú pháp:

open(‘ten_ma_tran’).

3.2.3.3. Các hàm thông dụng đối với đối số là mảng.

 Hàm size(X): trả về một véc tơ dòng [m n] chứa kích thước của mảng X

có m dòng, n cột.

 Hàm length(X): trong đó X là một ma trận, sẽ trả về số dòng hoặc số cột

lớn nhất.

 Hàm max(X) :

o Nếu X là một véc tơ, sẽ trả về phần tử lớn nhất trong X.



34



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Hình 2.16: Đường thẳng Hough trong hệ tọa độ Đề-các [15]

Tải bản đầy đủ ngay(0 tr)

×