Bài giảng Xử lý tín hiệu nâng cao - Chương 1: Tổng quan về công cụ MATLAB
lượt xem 4
download
Chương 1 trình bày những nội dung chính sau: Giới thiệu matlab, tổng quan về lập trình matlab, cách sử dụng biến trong matlab, các lệnh và các hàm cơ bản, cách thao tác với ma trận, vẽ đồ thị trong matlab, làm việc với hàm và m-file, lập trình GUI.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Xử lý tín hiệu nâng cao - Chương 1: Tổng quan về công cụ MATLAB
- Xử lý tín hiệu nâng cao CHƯƠNG I Tổng quan về công cụ MATLAB
- Tài liệu tham khảo 1. Xử lý tín hiệu nâng cao - Nguyễn Quốc Trung 2. Digital signal processing using MATLAB - Viney K.Ingle & John G.Proakis 3. Digital Signal and Image Processing Using MATLAB - Gerard Blanchet & Maurice Charbit 4. Digital image processing using MATLAB - Gonzalez Woods & Eddins 5. Xử lý số tín hiệu - Hồ Văn Sung 2
- Nội dung Giới thiệu Matlab Tổng quan về lập trình Matlab Cách sử dụng biến trong Matlab Các lệnh và các hàm cơ bản Cách thao tác với ma trận Vẽ đồ thị trong Matlab Làm việc với hàm và m-file Lập trình GUI 3
- Giới thiệu Matlab Matlab được phát triển bởi MathWorks Là một ngôn ngữ lập trình thông dịch Hỗ trợ lập trình hướng đối tượng Ứng dụng rộng rãi Có khả năng liên kết với nhiều ngôn ngữ lập trình khác 4
- Lịch sử phát triển Cuối thập niên 1970. MATLAB, nguyên sơ được viết bởi ngôn ngữ Fortran Năm 1983, Jack Little, một người đã học ở MIT và Stanford, đã viết lại MATLAB bằng ngôn ngữ C Năm 1984: Phiên bản đầu tiên MATLAB 1.0 viết bằng C cho MS-DOS PC Năm 1986, MATLAB 2 ra đời trong đó hỗ trợ UNIX. Năm 1987, MATLAB 3 phát hành. 5
- Lịch sử phát triển Năm 1992 MATLAB 4 thêm vào hỗ trợ 2-D và 3-D Năm 1996 MATLAB 5 bao gồm thêm các kiểu dữ liệu, bộ sửa lỗi và bộ tạo dựng GUI Năm 2000 MATLAB 6 Năm 2002 MATLAB 6.5 Năm 2004 MATLAB 7 Tháng 6, 2009, phiên bản MATLAB R2009a 6
- Màn hình chính 7
- Tổng quan về lập trình trong Matlab Lập trình hướng thủ tục Cú pháp, từ khóa Sử dụng các thư viện Toolbox Lập trình trong Matlab Sử dụng dòng lệnh Lập trình m-file Thiết kế chương trình có GUI 8
- Sử dụng biến trong Matlab Không cần khai báo kiểu, số chiều, độ dài biến. Mỗi khi một cái tên mới xuất hiện với phép gán, Matlab tạo biến và tự động cấp phát bộ nhớ cho nó. Ví dụ: sosv = 110 tạo một biến tên sosv (là một ma trận 1x1) lưu giá trị 110. Nếu đó là biến cũ, nó sẽ thay đổi nội dung mới nếu thực hiện phép gán. Ví dụ: >>X = 3 >>X = 4 // X = 4. 9
- Cách đặt tên biến Tên biến phải là một từ, không chưa dấu cách, tên biến tối đa là 63 ký tự Tên biến phân biệt chữ hoa và chữ thường Tên biến bắt đầu bằng chữ cái Ký tự dấu chấm “.” không được sử dụng để trong đặt tên biến. 10
- Các biến đặc biệt Các biến đặc biệt Giá trị ans biến mặc định trả về kết quả pi số pi eps Số nhỏ nhất lớn hơn 0 inf Để chỉ số vô cùng NaN hoặc nan Để chỉ số ko xác định như kết quả của 0/0 i và j Số phức, i=j=sqrt(-1) realmin Số dấu chấm động nhỏ nhất (2.2251e-308) realmax Số dấu chấm động lớn nhất (1.7977e+308) 11
- Véc tơ và ma trận Các bài toán trong Matlab được quy về tính toán và xử lý trên ma trận Ví dụ, tạo một ma trận trong Matlab: >> M=[3 4 5 ; 2 1 4] M = 3 4 5 2 1 4 Các phần tử trong một cột cách nhau bởi dấu cách (space) hoặc dấu phẩy Các hàng được cách nhau bằng dấu “;” Chỉ số các phần tử bắt đầu từ 1 12
- Một số lệnh thông dụng clc: Xóa màn hình cửa sổ lệnh who: xem tên biến trong không gian làm việc của Matlab >> who Your variables are: A M N whos: xem chi tiết hơn về các biến >> whos Name Size Bytes Class A 1x10 80 double array M 6x3 144 double array N 3x3 72 double array Grand total is 37 elements using 296 bytes clear: Xóa các biến trong bộ nhớ của Matlab help: yêu cầu sự giúp đỡ 13
- Các toán tử Toán tử Ký hiệu Phép cộng + Phép trừ Phép nhân * Phép chia / hoặc \ Phép lũy thừa ^ Chuyển vị ma trận ' Các toán tử quan hệ >, =,
- Các hàm toán học thông dụng Tên hàm Ý nghĩa sin(x), cos(x), tan(x) Các hàm lượng giác asin(x), acos(x), atan(x) Các hàm lượng giác ngược exp(x) Hàm mũ ex log(x), log10(x), log2() Logarit cơ số e, 10, 2 abs(x) Hàm lấy trị tuyệt đối Round(x), floor(x), fix(x), Các hàm làm tròn ceil(x) 15
- Thực hành 1.1 Dự đoán kết quả xuất ra màn hình: a. 2 ; 4 b. 2 / 4 c. 2 \ 4 d. 2 , 4 e. 2 : 4 1.2 Tính bằng tay các biểu thức sau, rồi thử lại bằng Matlab: a. 2 / 2 * 3 b. 6 – 2 / 5 + 7 ^ 2 – 1 c. 10 / 2 \ 5 – 3 + 2 * 4 d. 3 ^ 2 / 4 e. 3 ^ 2 ^ 2 f. round(6 / 9 + 3 * 2) g. floor(6 / 9 + 3 * 2) h. ceil(6 / 9 + 3 * 2) k. fix(4/9)+fix(3*(5/6)) 16
- Thực hành 1.3 Xác định công dụng của hàm solve, thực hiện một ví dụ với hàm này 1.4 Tạo một số ngẫu nhiên Có giá trị từ 0 đến 1 Có giá trị từ 0 đến 100 Có giá trị từ 30 đến 70 1.5 Xác định ý nghĩa của các hàm mod(a,b) gcd(a,b) lcm(a,b) 17
- Các toán tử và các hàm thao tác với ma trận Có thể dùng các hàm sau để tạo các ma trận đặc biệt: zeros(N): Tạo ma trận các phần tử đều bằng 0 có kích thước N ones(N): Tạo ma trận các phần tử đều bằng 1 có kích thước N rand(N): Tạo ma trận ngẫu nhiên có kích thước N, các phần tử phân bố đều. randn(N): Tạo ma trận ngẫu nhiên có kích thước N, các phần tử tuân theo phân bố chuẩn magic(N): Tạo ma trận magic (tổng giá trị trong 1 hàng bằng tổng giá trị trong 1 cột bằng tổng giá trị đường chéo) có kích thước N eye(N): Tạo ma trận đơn vị 18
- Các toán tử và các hàm trên ma trận Các toán tử trên ma trận Cộng: X=A+B Trừ: X=A-B Nhân: X=A*B Chia: X=A/B (A=X*B) hoặc X=A\B (B=A*X) Lũy thừa: X=A^2 (X=A*A) Xóa cột: A(:,3)=[] để xóa cột 3 trong ma trận A Xóa hàng: A(3,:)=[] để xóa hàng 3 trong ma trận A Các hàm thông dụng với ma trận Tính kích thước: d=size(A) Tính định thức: d=det(A) Tính ma trận nghịch đảo: X=inv(A) 19
- Thực hành 1.6 Tạo một vector: Có 10 phần tử có giá trị nguyên được lấy ngẫu nhiên trong khoảng [0, 100] Có 10 phần tử có giá trị nguyên được lấy ngẫu nhiên trong khoảng [-20 ,10] 1.7 Cho x = [3 1 5 7 9 2 6], dự đoán kết quả các dòng lệnh sau và thử lại bằng Matlab: a. x(3) b. x(1:7) c. x(1:end) d. x(1:end-1) e. x(6:-2:1) f. x([1 6 2 1 1]) g. sum(x) 1.8 Giải hệ phương trình: 2 x1 + x2 + 5 x3 + x4 = 5 x1 + x2 − 3 x3 − 4 x4 = −1 3x1 + 6 x2 − 2 x3 + x4 = 8 2 x1 + 2 x2 + 2 x3 − 3 x4 = 2 20
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Thực hành xử lý tín hiệu với Matlab part 1
43 p | 263 | 104
-
Thực hành xử lý tín hiệu với Matlab part 2
43 p | 259 | 81
-
Thực hành xử lý tín hiệu với Matlab part 3
43 p | 189 | 70
-
Thực hành xử lý tín hiệu với Matlab part 4
43 p | 181 | 65
-
Thực hành xử lý tín hiệu với Matlab part 5
43 p | 150 | 63
-
Thực hành xử lý tín hiệu với Matlab part 7
43 p | 197 | 61
-
Thực hành xử lý tín hiệu với Matlab part 6
43 p | 148 | 53
-
Thực hành xử lý tín hiệu với Matlab part 8
43 p | 143 | 47
-
Bài giảng Xử lý tín hiệu số (NB)
110 p | 96 | 17
-
Bài giảng Xử lý tín hiệu nâng cao - Chương 6: Xử lý ảnh trong Matlab
32 p | 102 | 10
-
Bài giảng Xử lý tín hiệu nâng cao - Chương 3: Biến đổi Fourier của tín hiệu rời rạc
44 p | 101 | 8
-
Bài giảng Xử lý tín hiệu nâng cao - Chương 2: Tín hiệu rời rạc
21 p | 186 | 8
-
Bài giảng Xử lý tín hiệu số: Chương 5 - Lã Thế Vinh
27 p | 112 | 7
-
Bài giảng Xử lý tín hiệu số: Chương 6 - Lã Thế Vinh
121 p | 95 | 6
-
Bài giảng Xử lý tín hiệu số: Chương 4 - Lã Thế Vinh
42 p | 84 | 6
-
Bài giảng Xử lý tín hiệu nâng cao - Chương 4: Biểu diễn hệ thống và tín hiệu rời rạc trên miền Z
30 p | 70 | 5
-
Bài giảng Xử lý tín hiệu số (Slide bài giảng)
155 p | 134 | 4
-
Tập bài giảng Xử lý tín hiệu số
262 p | 38 | 4
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn