Xử lý ảnh số Lý thuyết và thực hành với Matlab.

Xử lý ảnh số Lý thuyết và thực hành với Matlab là một tài liệu chuyên sâu về xử lý ảnh số, tập trung vào lý thuyết và ứng dụng thực hành với phần mềm MATLAB.

Dưới đây là tóm tắt các nội dung chính:

  • Giới thiệu về Xử lý ảnh số:
    • Định nghĩa ảnh số (ảnh một màu, ảnh nhiều màu) và các khái niệm cơ bản như pixel, cường độ, mức xám.
    • Mục tiêu chính của xử lý ảnh số: số hóa và mã hóa ảnh để truyền thông, in ấn, lưu giữ; cải thiện chất lượng và khôi phục ảnh; phân đoạn và mô tả ảnh.
    • Vai trò của MATLAB như một công cụ tính toán và gói phần mềm hiệu quả trong xử lý ảnh số.
  • Biểu diễn ảnh số:
    • Dưới dạng ma trận: Ảnh số được biểu thị bằng một mảng số nguyên 2 chiều (ma trận), mỗi phần tử là một pixel với giá trị mức xám. Trình bày hai cách biểu diễn ma trận ảnh (từ f(0,0) đến f(M-1,N-1) và từ f(1,1) đến f(M,N)).
    • Số bit cần để mã hóa/lưu giữ ảnh: Công thức b = M × N × m (M, N là kích thước ảnh, m là số bit cho mỗi pixel).
    • Độ phân giải của ảnh: Phụ thuộc vào kích thước (N) và độ lớn (m) của các pixel, ảnh hưởng đến chi tiết hiển thị.
    • Qui định về tọa độ: Hệ tọa độ pixel (r, c) và hệ tọa độ không gian (x, y), sự tương đương và khác biệt giữa chúng.
    • Dưới dạng véctơ: Ảnh số có thể được biểu diễn dưới dạng véctơ cột để thuận tiện cho tính toán (ví dụ: chuyển ma trận 3×3 thành véctơ 9×1).
  • Các toán tử tuyến tính tác động lên ảnh:
    • Khái niệm toán tử tuyến tính và hàm mở rộng điểm (đáp ứng xung).
    • Phép nhân chập 2 chiều (convolution) và cách thực hiện trong MATLAB bằng hàm conv2.
    • Mối quan hệ giữa ảnh lối vào và ảnh lối ra khi dùng biểu diễn véctơ (g = Hf).
    • Trường hợp toán tử tuyến tính có thể phân tách được và biểu diễn dưới dạng ma trận.
  • Mục đích của xử lý ảnh suy từ các phép biến đổi:
    • Cải thiện chất lượng ảnh.
    • Nén ảnh.
    • Tạo ảnh trong mắt nhìn tự động (làm nổi bật các nét điển hình).
    • Khôi phục ảnh.
  • Đọc, hiển thị và ghi ảnh trong MATLAB:
    • Đọc ảnh: Sử dụng hàm imread với các định dạng file phổ biến (.tif, .jpg, .gif, .bmp, .png, .xwd).
    • Kiểm tra thông tin ảnh: Hàm size để biết kích thước (M, N) và whos để biết tên, kích thước, số byte, lớp dữ liệu.
    • Hiển thị ảnh: Sử dụng hàm imshow với các tùy chọn hiển thị mức xám, dải cường độ hoặc hiển thị nhiều ảnh trên cùng một màn hình. Hàm pixval để hiển thị thông tin pixel chi tiết.
    • Ghi ảnh: Sử dụng hàm imwrite để lưu ảnh vào đĩa với các định dạng và tham số nén khác nhau. Hàm imfinfo để xem thông tin chi tiết của ảnh đã lưu.
  • Các lớp dữ liệu và loại ảnh trong MATLAB:
    • Giới thiệu 4 loại ảnh chính: ảnh đánh dấu chỉ số, ảnh RGB, ảnh cường độ và ảnh nhị phân.
    • Các loại dữ liệu trong MATLAB: Logic, char, numeric (int8, uint8, int16, uint16, int32, uint32, int64, uint64, single, double), cell, cấu trúc, hàm handle, lớp người dùng, lớp Java.
    • Ảnh cường độ: Lưu dưới dạng ma trận (double, uint8, uint16), hiển thị bằng imagesc.
    • Ảnh nhị phân: Lớp logic, chỉ nhận giá trị 0 hoặc 1, hiển thị bằng imshow hoặc imview.
    • Ảnh RGB: Lưu dưới dạng mảng m×n×3, xác định 3 thành phần màu (đỏ, xanh lá cây, xanh nước biển), không sử dụng bảng màu, hiển thị bằng image.
  • Chuyển đổi giữa các lớp dữ liệu và loại ảnh:
    • Chuyển đổi lớp dữ liệu (doubleuint8uint16) bằng cách gọi trực tiếp.
    • Chuyển đổi giữa các loại ảnh bằng các hàm như im2uint8im2uint16mat2grayim2doubleim2bw.
    • Giải thích sự thay đổi ý nghĩa dữ liệu khi chuyển đổi giữa các loại ảnh.
    • Ví dụ về chuyển đổi ảnh màu thành ảnh đen trắng và nhị phân.
  • Đánh dấu chỉ số mảng dữ liệu nhiều chiều:
    • Truy cập phần tử bằng chỉ số nguyên, sử dụng véctơ làm chỉ số và toán tử hai chấm (:).
    • Đánh dấu tuyến tính (truy cập phần tử ma trận bằng một chỉ số duy nhất).
    • Đánh dấu chỉ số mảng dùng hàm logicals.
  • Một số mảng chuẩn quan trọng:
    • Liệt kê và mô tả các hàm tạo mảng chuẩn thường dùng trong MATLAB: zerosonestruefalsemagicrandrandn.
  • Các phép toán cơ sở trong xử lý ảnh số học:
    • Các loại phép toán: số học, so sánh, logic.
    • Các phép toán số học cơ bản trên ma trận (cộng, trừ, nhân, chia, lũy thừa, chuyển vị).
    • Các hàm số học bổ sung trong MATLAB Image Processing Toolbox (imabsdiffimaddimcomplementimdivideimlincomimmultiplyimsubtract).
    • Ví dụ minh họa sử dụng các phép toán số học để xử lý ảnh cộng hưởng từ (tăng độ nét, lấy nghịch đảo, cắt lớp, lấy cửa sổ, lấy ngưỡng, chuyển đổi nhị phân).
  • Biểu diễn ảnh theo quan điểm thống kê:
    • Sự cần thiết của mô tả thống kê trong xử lý ảnh (hiện tượng ngẫu nhiên, nhiễu).
    • Các khái niệm cơ sở của biến số ngẫu nhiên rời rạc (hàm phân bố xác suất, giá trị kỳ vọng, phương sai, hàm phân bố liên kết, hiệp biến, tự tương quan).

Tóm lại, tài liệu cung cấp cái nhìn toàn diện từ các khái niệm cơ bản về ảnh số, cách biểu diễn, các phép toán xử lý đến việc ứng dụng MATLAB một cách chi tiết và thực tế, đồng thời giới thiệu cả khía cạnh thống kê trong xử lý ảnh.

Công nghệ thông tin Sách giáo trình

Xử lý ảnh số Lý thuyết và thực hành với Matlab.
  • Tác giả: TS. Hồ Văn Sung
  • Ngôn ngữ: Tiếng Việt