Bối cảnh và vấn đề nghiên cứu
Trong chương trình đào tạo kỹ sư ngành Điện tử - Viễn thông (ĐTVT), xử lý ảnh số là một học phần chuyên ngành quan trọng, đòi hỏi người học vừa phải nắm vững nền tảng toán học biến đổi tín hiệu, vừa phải có kỹ năng hiện thực hóa thuật toán trên các công cụ tính toán chuyên dụng. Môi trường MATLAB với hệ thống ma trận mạnh mẽ và gói công cụ xử lý ảnh Image Processing Toolbox (IPT) cung cấp nền tảng tính toán kỹ thuật giúp tối ưu hóa việc mô phỏng, phân tích và thực thi các giải thuật xử lý ảnh.
Đồ án "Báo cáo đồ án ĐTVT1" do tác giả thực hiện dưới sự hướng dẫn của GVHD Bùi Minh Thành tập trung vào việc nghiên cứu cơ sở lý thuyết, cú pháp lập trình và phương pháp triển khai các kỹ thuật xử lý ảnh số trên phần mềm MATLAB.
Mục tiêu và nhiệm vụ nghiên cứu của đồ án bao gồm:
- Nghiên cứu tổng quan về môi trường MATLAB, các cấu trúc dữ liệu ma trận, cú pháp lập trình cơ bản và công cụ xây dựng giao diện đồ họa người dùng (MATLAB GUI).
- Phân loại, khảo sát cấu trúc các kiểu ảnh số cơ bản trong MATLAB (Indexed, Grayscale, Binary, RGB) và hệ thống các hàm đọc/ghi, chuyển đổi và biến đổi hình học.
- Phân tích các phép biến đổi toán học hai chiều áp dụng trong xử lý ảnh gồm biến đổi Fourier rời rạc (DFT), biến đổi Cosine rời rạc (DCT) và biến đổi Radon.
- Nghiên cứu và hiện thực hóa các giải thuật nâng cao chất lượng ảnh trong miền không gian (biến đổi mức xám, xử lý histogram, lọc tuyến tính và phi tuyến, làm mịn và làm sắc nét bằng toán tử vi phân Laplace) cùng cơ sở lọc ảnh trong miền tần số.
Đối tượng nghiên cứu là các mô hình biểu diễn dữ liệu ảnh số, các phép toán đại số ma trận và các thuật toán nâng cao chất lượng ảnh. Phạm vi nghiên cứu được thực hiện trong khuôn khổ đồ án môn học ĐTVT1, ứng dụng trực tiếp các hàm trong Image Processing Toolbox của MATLAB.
Cơ sở lý thuyết và phương pháp
Cơ sở lý thuyết
Đồ án xây dựng dựa trên các nền tảng lý thuyết xử lý tín hiệu và ảnh số:
- Lý thuyết biểu diễn ảnh số: Mô hình hóa ảnh dưới dạng ma trận hai chiều hoặc ba chiều tương ứng với các mức xám hoặc các kênh màu độc lập.
- Lý thuyết biến đổi tích phân và biến đổi trực giao:
- Biến đổi Fourier rời rạc 2 chiều (2-D DFT): Biểu diễn ảnh thành tổng các hàm mũ phức với các thành phần biên độ, tần số và pha.
- Biến đổi Cosine rời rạc 2 chiều (2-D DCT): Tập trung năng lượng thông tin của ảnh vào một số ít hệ số biến đổi bậc thấp.
- Biến đổi Radon: Biểu diễn ảnh dưới dạng tập hợp các tích phân đường từ nhiều hướng chiếu quay quanh tâm ảnh.
- Lý thuyết nâng cao chất lượng ảnh miền không gian:
- Hàm biến đổi mức xám điểm $s = T(r)$ (bao gồm biến đổi âm bản, biến đổi logarit, biến đổi lũy thừa gamma).
- Lý thuyết thống kê mức xám thông qua hàm mật độ xác suất của biểu đồ tần suất (histogram), giải thuật cân bằng histogram (histogram equalization) và phối hợp histogram (histogram matching).
- Lý thuyết lọc không gian: Phép toán tương quan (correlation) và tích chập (convolution) với mặt nạ lọc; thống kê thứ tự hạng (order-statistics); lý thuyết vi phân bậc một và đạo hàm bậc hai (toán tử Laplace) phục vụ phát hiện cạnh và làm sắc nét chi tiết.
Phương pháp nghiên cứu
- Phương pháp phân tích - tổng hợp lý thuyết: Hệ thống hóa các công thức toán học rời rạc, cơ chế tính toán ma trận và cấu trúc hàm chuẩn trong MATLAB.
- Phương pháp thực nghiệm mô phỏng: Lập trình kịch bản (Script), viết hàm con (M-file) và thiết kế giao diện đồ họa (GUI) để kiểm thử trực tiếp các giải thuật trên tập ảnh thử nghiệm (ảnh y tế mô ngực, ảnh bo mạch điện tử bị nhiễu salt & pepper, các hàm kiểm tra đối xứng).
Thiết kế và triển khai
Hệ thống được thiết kế và triển khai trên nền tảng MATLAB và Image Processing Toolbox với hai cấu phần chính:
1. Thiết kế giao diện người dùng đồ họa (MATLAB GUI)
- Công cụ khởi tạo: Sử dụng công cụ
GUIDE(thông qua lệnhguidehoặcFile -> New -> GUI). - Cấu trúc tệp tin: Khi tạo và lưu một giao diện, MATLAB sinh ra hai tệp liên kết cùng tên:
- Tệp
.fig: Lưu trữ cấu trúc bố cục, các đối tượng trực quan và thuộc tính giao diện. - Tệp
.m: Chứa các hàm điều khiển luồng chương trình và các đoạn mã xử lý sự kiện (Callback).
- Tệp
- Thành phần điều khiển: Triển khai các thành phần UI controls gồm nút nhấn (Push Button), hộp liệt kê (Listbox), thanh trượt (Slider), menu lựa chọn, khung hiển thị đồ thị và hình ảnh (
axes). - Cơ chế quản trị thuộc tính và sự kiện:
- Sử dụng công cụ
Property Inspectorđể thiết lập hai thuộc tính định danh chính:String(chuỗi ký tự hiển thị) vàTag(tên định danh đối tượng trong mã nguồn). - Tương tác dữ liệu giữa các thành phần giao diện thông qua hàm
set(thay đổi giá trị thuộc tính) vàget(truy xuất giá trị thuộc tính). - Chuyển đổi định dạng dữ liệu giao tiếp với người dùng bằng các hàm
num2str()vàstr2num().
- Sử dụng công cụ
2. Triển khai các khối thuật toán xử lý ảnh
- Khối hàm đọc/ghi và hiển thị: Tích hợp
imread,imwrite,imfinfo,imshow,image,imagesc,imview. - Khối xử lý hình học và nội suy: Triển khai thuật toán thay đổi kích thước (
imresize), quay ảnh (imrotate), trích xuất vùng ảnh (imcrop) dựa trên các phương pháp nội suy lân cận gần nhất (nearest neighbor), song tuyến tính (bilinear $2 \times 2$) và song bậc ba (bicubic $4 \times 4$). - Khối lọc không gian: Ứng dụng hàm
imfilter(cho lọc tuyến tính),nlfiltervàcolfiltkết hợppadarray(cho lọc phi tuyến),ordfilt2vàmedfilt2(cho lọc trung vị). - Khối vi phân làm sắc nét: Xây dựng ma trận mặt nạ Laplace 4 lân cận, 8 lân cận, hàm
fspecialvà bộ lọc tăng cường High-boost.
Nội dung chính theo từng chương
CHƯƠNG I: TÌM HIỂU CƠ BẢN VỀ MATLAB VÀ GUI
Chương này trình bày tổng quan về công cụ MATLAB, các quy chuẩn lập trình và cách xây dựng giao diện ứng dụng:
- Tổng quan môi trường MATLAB: Môi trường tính toán ma trận kỹ thuật, cơ chế làm việc tại cửa sổ Command Line, quy tắc sử dụng dấu chấm phẩy (
;) để ẩn hiển thị kết quả, sử dụng lệnhhelpvàlookforđể tra cứu tài liệu hướng dẫn. - Quy ước biến và toán tử: MATLAB phân biệt chữ hoa và chữ thường, không yêu cầu khai báo biến trước. Hệ thống toán tử gồm:
- Số học:
+,-,*,/,\(chia đảo),^. - Quan hệ:
<,<=,>,>=,==,~=. - Logic:
&,|(OR),~(NOT). - Hằng số đặc biệt:
pi($3.14159265$),i,j,eps($2^{-52}$),inf(vô cùng lớn),NaN(Not a Number).
- Số học:
- Thao tác ma trận và vector: Sử dụng toán tử
:để tạo dãy số hoặc trích xuất hàng/cột (A(:,j),A(i,:),A(k:l,m:n)). Phép toán chuyển vị ('), các phép toán số học từng phần tử (.*,./,.^), và các ma trận đặc biệt:zeros(m,n),eye(n),ones(m,n). - Cấu trúc điều khiển và hàm M-file: Cấu trúc rẽ nhánh
if, else, elseif, vòng lặpfor, while. Cú pháp xây dựng hàm M-file:function[outputArgs] = function_name(inputArgs)và lưu tệp trùng tên hàm. - Kỹ thuật vẽ đồ thị: Biểu diễn dữ liệu bằng các hàm
plot,plot3,loglog,semilogx,semilogy, tạo nhiều cửa sổ bằngfigure, chia khung vẽ bằngsubplotcùng các hàm gán nhãntitle,xlabel,ylabel,zlabel,legend. - Xây dựng GUI: Nguyên lý hoạt động của GUIDE, quản lý tệp
.figvà.m, cơ chếProperty Inspector, xử lý hàm Callback tương ứng với tên thẻ (<Tag>_Callback), các lệnhgetvàset.
CHƯƠNG II: CƠ BẢN VỀ ẢNH VÀ CÁC HÀM XỬ LÝ ẢNH CƠ BẢN TRONG MATLAB
Chương này đi sâu vào cấu trúc dữ liệu ảnh số trong MATLAB và các nhóm hàm nền tảng:
- Phân loại 4 kiểu ảnh số trong MATLAB:
- Ảnh Indexed: Biểu diễn bằng ma trận dữ liệu ảnh
X(kiểuuint8,uint16hoặcdouble) liên kết với ma trận bản đồ màumapkích thước $m \times 3$ kiểudoublecó giá trị trong đoạn $[0, 1]$. - Ảnh Grayscale (mức xám): Biểu diễn bằng ma trận 2 chiều kiểu
uint8,uint16hoặcdoublexác định độ sáng từng điểm ảnh. - Ảnh Nhị phân (Binary): Biểu diễn bằng ma trận 2 chiều kiểu
logicalvới hai giá trị 0 (đen) và 1 (trắng). - Ảnh RGB (Truecolor): Biểu diễn bằng ma trận 3 chiều kích thước $m \times n \times 3$ xác định 3 thành phần Red, Green, Blue.
- Ảnh Indexed: Biểu diễn bằng ma trận dữ liệu ảnh
- Các phép biến đổi ảnh hai chiều:
- Biến đổi Fourier rời rạc (DFT 2-D): Cú pháp
F = fft2(X, Mrows, Ncols)và biến đổi ngượcf = ifft2(...). Sử dụngfftshiftđể dịch chuyển thành phần DC về tâm ảnh. - Biến đổi Cosine rời rạc (DCT 2-D): Tập trung thông tin vào các hệ số chính, cú pháp
B = dct2(A, M, N)vàA = idct2(B, M, N)dựa trên thuật toán FFT để tăng tốc độ tính toán. - Biến đổi Radon: Tính toán các tích phân đường từ nhiều góc quay, cú pháp
[R, Xp] = radon(I, theta).
- Biến đổi Fourier rời rạc (DFT 2-D): Cú pháp
- Hệ thống hàm xử lý ảnh cơ bản:
- Đọc/ghi và kiểm tra thông tin:
imread,imwrite,imfinfo(truy xuất các trườngfilename,filemoddate,filesize,format,formatversion,width,height,bitdepth,colortype). - Chuyển đổi kiểu dữ liệu và kiểu ảnh:
im2double,im2uint8,im2uint16,dither,gray2ind,grayslice,im2bw,ind2gray,ind2rgb,mat2gray,rgb2gray,rgb2ind. - Phép toán số học ảnh trong IPT:
imabsdiff,imadd,imcomplement,imdivide,imlincomb,immultiply,imsubtract(tự động xử lý kiểu dữ liệu và tràn số). - Hiển thị ảnh: So sánh các hàm
image,imagesc,imview(Image Viewer trên nền Java) vàimshow. - Biến đổi hình học: 3 phương pháp nội suy (lân cận gần nhất, song tuyến tính, song bậc ba); các hàm
imresize,imrotate,imcrop.
- Đọc/ghi và kiểm tra thông tin:
CHƯƠNG III: NÂNG CAO CHẤT LƯỢNG ẢNH
Chương này trình bày chi tiết các giải thuật cải thiện chất lượng ảnh số:
- Biến đổi mức xám trong miền không gian ($s = T(r)$):
- Ảnh âm bản: $s = L - 1 - r$, làm nổi bật chi tiết sáng trong vùng tối lớn (minh họa qua ảnh chụp X-quang mô ngực).
- Biến đổi log: $s = c \cdot \log(1 + r)$, mở rộng dải mức xám thấp, nén dải mức xám cao, tăng chi tiết vùng tối.
- Biến đổi lũy thừa (gamma): $s = c \cdot r^\gamma$. Với $\gamma < 1$, mở rộng dải tối tương tự hàm log; với $\gamma = 1$, là biến đổi tuyến tính; với $\gamma > 1$, làm tăng độ tương phản ảnh. Thực hiện trong MATLAB bằng hàm
imadjustvàimcomplement.
- Xử lý biểu đồ tần suất (Histogram):
- Hàm mật độ xác suất rời rạc: $p(r_k) = \frac{n_k}{n}$, tính toán bằng lệnh
imhist(f, b)/numel(f). - Cân bằng histogram (
histeq(f, nlev)): Trải đều các mức xám trên toàn dải $[0, 1]$, tăng dải động và độ tương phản. - Phối hợp histogram (Histogram matching): Định hình biểu đồ tần suất theo một phân bố xác định trước nhằm khắc phục hiện tượng mất tương phản khi cân bằng histogram cho các ảnh có vùng tối chiếm diện tích quá lớn.
- Hàm mật độ xác suất rời rạc: $p(r_k) = \frac{n_k}{n}$, tính toán bằng lệnh
- Kỹ thuật lọc không gian:
- Lọc tuyến tính: Sử dụng mặt nạ $m \times n$ ($m = 2a+1, n = 2b+1$), thực hiện phép tính tương quan (
'corr') hoặc tích chập ('conv'). Cơ chế xử lý biên đệm (padding) trong hàmimfiltervới các tùy chọn: đệm hằng số $P$,'replicate','symmetric','circular'. Yêu cầu chuẩn hóa ma trận lọc để tránh hiện tượng bão hòa giá trị 255 ở kiểuuint8. - Lọc phi tuyến: Sử dụng hàm
colfiltvới tham số'sliding'(nhanh hơnnlfilternhờ xử lý theo cột ma trận), kết hợp hàm đệmpadarrayvà các hàm tự định nghĩa như lọc trung bình nhân (gmean). - Ứng dụng làm mịn ảnh: Sử dụng bộ lọc trung bình tuyến tính đồng nhất ($1/9$) và có trọng số ($1/16$); bộ lọc thống kê thứ tự hạng (
ordfilt2); bộ lọc trung vị (medfilt2) triệt tiêu hiệu quả nhiễu muối tiêu (salt and pepper) mà không làm suy giảm độ sắc nét của cạnh như bộ lọc trung bình. - Ứng dụng làm sắc nét ảnh: Phân tích vi phân bậc một và bậc hai trên hàm rời rạc (đạo hàm bậc một tạo cạnh dày; đạo hàm bậc hai nhạy với chi tiết tinh và điểm cô lập). Toán tử vi phân bậc hai Laplace:
$$\nabla^2 f = [f(x+1,y) + f(x-1,y) + f(x,y+1) + f(x,y-1)] - 4f(x,y)$$
Xây dựng ma trận mặt nạ lọc 4 lân cận, 8 lân cận, hàm
fspecial('laplacian', alpha), kỹ thuật khôi phục nền bằng phép cộng ảnh gốc với ảnh lọc Laplace, và bộ lọc tăng cường High-boost với hệ số $A \ge 1$.
- Lọc tuyến tính: Sử dụng mặt nạ $m \times n$ ($m = 2a+1, n = 2b+1$), thực hiện phép tính tương quan (
- Cơ sở lọc ảnh trong miền tần số: Biến đổi Fourier rời rạc 2 chiều $F(u,v)$, công thức biến đổi ngược, phổ biên độ $|F(u,v)|$, góc pha $\phi(u,v)$, mật độ phổ công suất $P(u,v)$ và tính chất tuần hoàn trong miền tần số.
Kết quả và đóng góp
Kết quả chính rút ra từ đồ án
- Phân loại và quản lý kiểu dữ liệu ảnh: Xác lập rõ ràng cơ chế quản lý 4 kiểu ảnh chính trong MATLAB, sự tương thích của các kiểu dữ liệu (
uint8,uint16,double,logical) và các hàm chuyển đổi tương ứng. - Tổng hợp hệ thống hàm xử lý ảnh: Hệ thống hóa các hàm chuẩn trong Image Processing Toolbox thành các nhóm chức năng rõ ràng.
| Nhóm chức năng | Tên hàm trong MATLAB IPT | Đặc điểm / Tham số chính |
|---|---|---|
| Đọc / Ghi / Thông tin | imread, imwrite, imfinfo |
Hỗ trợ nhiều định dạng, trích xuất 9 trường thông số tệp |
| Chuyển đổi kiểu ảnh | rgb2gray, im2bw, gray2ind, ind2rgb, mat2gray |
Chuyển đổi giữa các không gian màu và mức xám |
| Toán học số học | imadd, imsubtract, immultiply, imdivide, imabsdiff, imlincomb, imcomplement |
Tự động xử lý kiểu dữ liệu và chống tràn số |
| Biến đổi hình học | imresize, imrotate, imcrop |
Hỗ trợ nội suy: Nearest, Bilinear ($2 \times 2$), Bicubic ($4 \times 4$) |
| Biến đổi phổ | fft2, ifft2, fftshift, dct2, idct2, radon |
Biến đổi Fourier 2D, DCT 2D và tích phân đường Radon |
| Xử lý mức xám & Histogram | imadjust, imhist, histeq |
Biến đổi log, lũy thừa $\gamma$, cân bằng và phối hợp histogram |
| Lọc không gian | imfilter, colfilt, nlfilter, padarray, ordfilt2, medfilt2, fspecial |
Lọc tích chập/tương quan, lọc trung vị, toán tử Laplace, High-boost |
- Kết quả thực nghiệm trên ảnh mẫu:
- Biến đổi âm bản và biến đổi log giúp làm rõ các cấu trúc mô ngực bị che khuất trong vùng tối.
- Thuật toán phối hợp histogram giải quyết triệt để hiện tượng dồn mức xám khi cân bằng histogram thông thường trên ảnh có nền tối áp đảo.
- Lọc trung vị (
medfilt2) loại bỏ hoàn toàn nhiễu muối tiêu trên bo mạch mà vẫn bảo toàn biên dạng mạch điện tốt hơn so với lọc trung bình $3 \times 3$. - Lọc Laplace kết hợp cộng ảnh gốc phục hồi chi tiết sắc nét cho các đường biên bị mờ.
Đóng góp của tài liệu
- Cung cấp tài liệu tổng hợp có hệ thống từ cú pháp cơ bản của MATLAB, lập trình GUI đến các giải thuật xử lý ảnh nâng cao.
- Giải thích rõ cơ chế toán học rời rạc kết hợp với cú pháp hàm thực thi tương ứng trong IPT.
Hạn chế và hướng nghiên cứu tiếp
Hạn chế
- Nội dung tài liệu chủ yếu tập trung vào các giải thuật nâng cao chất lượng ảnh trong miền không gian; phần xử lý trong miền tần số chỉ mới dừng lại ở mức giới thiệu công thức toán học rời rạc của biến đổi Fourier 2 chiều (DFT), chưa triển khai sâu các bộ lọc thông thấp (ILPF, BLPF, GLPF) hay thông cao trên miền tần số.
- Chưa đi sâu vào các cấu trúc biến đổi wavelet đa phân giải hoặc các kỹ thuật nén ảnh, nhận dạng đối tượng nâng cao.
Hướng nghiên cứu tiếp
- Mở rộng triển khai đầy đủ các bộ lọc tần số (Butterworth, Gaussian) để làm mịn và sắc nét ảnh trong miền tần số.
- Xây dựng một ứng dụng giao diện GUI hoàn chỉnh tích hợp toàn bộ các công cụ: xử lý hình thái học (Morphology), phục hồi ảnh nhiễu và nén ảnh.
Giá trị tham khảo
Tài liệu là nguồn tham khảo trực tiếp cho:
- Sinh viên chuyên ngành Kỹ thuật Điện tử - Viễn thông, Kỹ thuật Điều khiển & Tự động hóa, Công nghệ Thông tin đang thực hiện đồ án môn học hoặc khóa luận tốt nghiệp về xử lý ảnh số.
- Người bắt đầu học lập trình MATLAB và thiết kế giao diện đồ họa (GUI) thông qua công cụ GUIDE.
- Các phần đáng tham khảo nhất gồm: Bảng tổng hợp cú pháp hàm IPT, cơ chế thiết lập biên đệm (padding) trong lọc không gian, và giải thuật lọc Laplace làm sắc nét ảnh.
Câu hỏi thường gặp
1. Phép toán tương quan (Correlation) và tích chập (Convolution) khác nhau như thế nào trong hàm imfilter?
Trong lọc tuyến tính, phép tương quan thực hiện dịch chuyển trực tiếp mặt nạ lọc qua từng điểm ảnh và tính tổng tích các hệ số. Phép tích chập cũng thực hiện quy trình tương tự nhưng mặt nạ lọc được quay $180^\circ$ trước khi tiến hành tính toán. Trong hàm imfilter, chế độ mặc định là tương quan ('corr'), người dùng có thể chuyển sang tích chập bằng tham số 'conv'. Khi mặt nạ lọc đối xứng, kết quả của hai phép toán là như nhau.
2. Tại sao bộ lọc trung vị (medfilt2) lại vượt trội hơn bộ lọc trung bình khi xử lý nhiễu muối tiêu (salt and pepper)?
Nhiễu muối tiêu tạo ra các điểm ảnh có mức xám cực đại (trắng) hoặc cực tiểu (đen) khác biệt hoàn toàn với vùng lân cận. Bộ lọc trung bình lấy giá trị trung bình cộng của tất cả điểm ảnh trong cửa sổ lọc, khiến mức xám của nhiễu bị hòa vào các điểm xung quanh làm ảnh bị nhòe mờ. Ngược lại, bộ lọc trung vị sắp xếp các giá trị theo thứ tự tăng dần và lấy giá trị ở vị trí chính giữa, giúp loại bỏ hoàn toàn các giá trị nhiễu đột biến mà không làm suy giảm độ sắc nét của biên ảnh.
3. Trong lọc phi tuyến, tại sao hàm colfilt được ưu tiên hơn nlfilter và vì sao cần dùng padarray trước?
Hàm colfilt chuyển đổi các vùng lân cận trượt của ảnh thành các cột trong một ma trận lớn để xử lý song song theo cột, giúp tốc độ thực thi nhanh hơn đáng kể so với việc duyệt từng phần tử 2 chiều của nlfilter. Tuy nhiên, do colfilt tự động gán giá trị đệm biên mặc định là 0 và không cho phép tùy biến trực tiếp trong hàm, người lập trình cần sử dụng hàm padarray từ trước để đệm ảnh theo các quy tắc phù hợp ('replicate', 'symmetric', 'circular').
4. Đạo hàm bậc một và đạo hàm bậc hai (toán tử Laplace) khác nhau như thế nào khi làm sắc nét ảnh?
Khi phân tích đáp ứng với các thành phần mức xám:
- Tại các đoạn dốc thoải (ramp), đạo hàm bậc một cho đáp ứng khác 0 trên toàn đoạn tạo ra đường cạnh dày; đạo hàm bậc hai chỉ cho đáp ứng khác 0 tại điểm đầu và điểm cuối đoạn dốc, tạo ra đường cạnh mảnh và sắc hơn.
- Tại các điểm nhiễu cô lập hoặc đường mảnh, đáp ứng của đạo hàm bậc hai lớn hơn đạo hàm bậc một, do đó đạo hàm bậc hai nhạy bén hơn với các chi tiết tinh và được sử dụng phổ biến hơn trong việc làm sắc nét ảnh.
5. Cấu trúc của kiểu ảnh Indexed trong MATLAB được tổ chức như thế nào?
Ảnh Indexed được lưu trữ bởi hai ma trận riêng biệt: một ma trận dữ liệu ảnh X (thuộc kiểu uint8, uint16 hoặc double) và một ma trận bản đồ màu map kích thước $m \times 3$ kiểu double với các giá trị chuẩn hóa trong đoạn $[0, 1]$. Giá trị của mỗi phần tử trong ma trận X không đại diện trực tiếp cho mức xám hay màu sắc mà là chỉ số hàng trỏ vào ma trận map để lấy ra bộ ba giá trị màu [Red, Green, Blue]. Do tính chất địa chỉ này, không thể tùy tiện lượng tử hóa hoặc chuyển đổi kiểu dữ liệu trực tiếp trên ma trận X.
Kết luận
Báo cáo đồ án ĐTVT1 của tác giả dưới sự hướng dẫn của GVHD Bùi Minh Thành đã hệ thống hóa đầy đủ kiến thức nền tảng về môi trường tính toán MATLAB, kỹ thuật lập trình giao diện người dùng GUI và các giải thuật xử lý ảnh số cốt lõi. Tài liệu làm rõ cơ sở toán học và cách thức triển khai thực nghiệm các phép biến đổi hình học, biến đổi trực giao (DFT, DCT, Radon) cùng các kỹ thuật nâng cao chất lượng ảnh trong miền không gian và miền tần số. Đây là tài liệu học thuật có cấu trúc rõ ràng, phục vụ hiệu quả cho việc nghiên cứu và thực hành đồ án môn học chuyên ngành Điện tử - Viễn thông.