1. **Image Segmentation**
1.1. **Khái niệm:**
1.1.1. Phân vùng ảnh thành các vùng có ý nghĩa
1.1.2. Dựa trên các đặc trưng: mức xám, màu sắc, kết cấu, độ sâu, chuyển động
1.2. **Ứng dụng:**
1.2.1. Nhận dạng vật thể
1.2.2. Nén video dựa trên đối tượng (MPEG4)
1.2.3. Hỗ trợ robot di động
1.3. **Phương pháp:**
1.3.1. Thresholding (Phân ngưỡng):
1.3.1.1. Chọn ngưỡng T để phân tách vật thể và nền
1.3.1.2. Dựa trên histogram của ảnh
1.3.1.3. Hạn chế: khó chọn ngưỡng tối ưu khi histogram phức tạp
1.3.1.4. Các biến thể: Global Thresholding, Otsu's method
1.3.2. Clustering (Phân cụm):
1.3.2.1. Phân nhóm các pixel dựa trên sự tương đồng (e.g. mức xám)
1.3.2.2. K-means clustering
1.3.3. Region Growing:
1.3.3.1. Bắt đầu từ các "hạt giống" (seed points)
1.3.3.2. Mở rộng vùng dựa trên tiêu chí tương đồng
1.3.4. Edge-based Segmentation:
1.3.4.1. Phát hiện biên cạnh
1.3.4.2. Kết nối các điểm biên cạnh để tạo thành đường bao khép kín
1.4. **Point, Line and Edge Detection (Phát hiện điểm, đường và cạnh):**
1.4.1. Point Detection: Sử dụng toán tử Laplacian
1.4.2. Line Detection: Sử dụng các mặt nạ lọc hướng (e.g. Horizontal, Vertical, +45°, -45°)
1.4.3. Edge Detection:
1.4.3.1. Hough Transform: phát hiện đường thẳng, đường tròn
1.4.3.2. Sử dụng đạo hàm bậc nhất (Gradient) và bậc hai (Laplacian)
1.4.3.3. Các toán tử: Sobel, Prewitt, Roberts
1.4.3.4. Canny Edge Detector: thuật toán phát hiện biên cạnh hiệu quả, ít nhiễu
2. **AlexNet**
2.1. **Kiến trúc:**
2.1.1. 5 Convolutional Layers
2.1.2. 3 Fully-Connected Layers
2.1.3. Softmax
2.1.4. Pooling: Overlapping pooling, window 3x3, stride 2
2.1.5. Activation function: ReLU
2.2. **Overfitting và cách khắc phục:**
2.2.1. Data augmentation: image translation, horizontal reflection, thay đổi cường độ RGB
2.2.2. Dropout: ngẫu nhiên bỏ qua một số neural trong quá trình training
2.3. **Training:**
2.3.1. Stochastic gradient descent (mini-batch)
2.3.2. Momentum
2.3.3. Weight decay
2.4. **Kết quả:**
2.4.1. Đạt kết quả tốt trên ImageNet LSVRC-2012
2.4.2. Top-1 and top-5 error rate thấp
3. **YOLO v1**
3.1. **Kiến trúc:**
3.1.1. One-stage object detection
3.1.2. CNN
3.1.3. Output: 7x7x30 (với S=7, B=2, C=20)
3.2. **Đặc trưng:**
3.2.1. Sử dụng lưới S x S (S=7) chia ảnh đầu vào
3.2.2. Mỗi ô lưới dự đoán B bounding boxes (B=2)
3.2.3. Mỗi bounding box dự đoán: x, y, w, h, confidence score
3.2.4. Mỗi ô lưới dự đoán xác suất cho C lớp (C=20)
3.3. **Confidence score:**
3.3.1. Confidence score = Pr(Object) * IoU
3.3.2. Pr(Class_i | Object) x Pr(Object) x IOU_pred^truth = Pr(Class_i) * IOU_pred^truth
3.4. **Training:**
3.4.1. Pre-train trên ImageNet
3.4.2. Fine-tune trên PASCAL VOC
3.5. **Hạn chế:**
3.5.1. Khó phát hiện các vật thể nhỏ trong nhóm
3.5.2. Độ chính xác định vị chưa cao
3.6. **Ưu điểm**
3.6.1. Nhanh hơn các phương pháp two-stage
3.6.2. Độ chính xác (mAP) tốt trên PASCAL VOC
4. **Viola-Jones**
4.1. **Phát hiện khuôn mặt (Face Detection):**
4.1.1. Object detection problem
4.1.1.1. Bounding box(es)
4.1.1.2. Single/Multiple object detection
4.1.1.3. Class(es) of object(s)
4.1.2. Haar-like features:
4.1.2.1. Window size: 24x24
4.1.2.2. ~160K features
4.1.2.3. Kết hợp Integral Image để tăng tốc độ
4.1.3. Feature selection:
4.1.3.1. Weak classifiers
4.1.3.2. Lựa chọn các features hữu ích (~6K features)
4.1.4. AdaBoost algorithm:
4.1.4.1. Kết hợp nhiều weak classifiers thành một strong classifier
4.1.5. Cascade structure:
4.1.5.1. Loại bỏ nhanh các vùng không phải là khuôn mặt
4.1.5.2. Giảm thiểu tính toán
4.1.6. Sliding window:
4.1.6.1. Duyệt qua toàn bộ ảnh với các kích thước cửa sổ khác nhau
4.1.7. Integral image:
4.1.7.1. Tính toán nhanh tổng các giá trị pixel trong một vùng hình chữ nhật
4.2. **Đánh giá:**
4.2.1. Confusion matrix
4.2.2. Detection rate (recall, true positive rate, sensitivity)
5. **Giới thiệu về Computer Vision**
5.1. **Khái niệm cơ bản:**
5.1.1. **Phân loại ảnh:**
5.1.1.1. Binary Image (Ảnh nhị phân):
5.1.1.1.1. Chỉ cần 1 bit để lưu trữ giá trị của mỗi pixel.
5.1.1.1.2. Mỗi pixel chỉ nhận một trong hai giá trị: 0 (đen) hoặc 1 (trắng).
5.1.1.1.3. Thích hợp cho các ứng dụng như: nhận dạng ký tự quang học (OCR), xử lý tài liệu văn bản, ảnh vân tay.
5.1.1.2. Gray-scale Image (Ảnh đa mức xám):
5.1.1.2.1. Phù hợp cho các ứng dụng xử lý ảnh tổng quát.
5.1.1.2.2. Mỗi pixel biểu diễn một mức độ sáng khác nhau, thường từ 0 (đen) đến 255 (trắng).
5.1.1.2.3. Thường sử dụng 8 bits (1 byte) để lưu trữ giá trị của mỗi pixel.
5.1.1.3. Color Image (Ảnh màu):
5.1.1.3.1. Phù hợp cho các ứng dụng cần phân biệt màu sắc.
5.1.1.3.2. Mỗi pixel biểu diễn một màu sắc, thường được biểu diễn bằng ba thành phần màu cơ bản: Red (R), Green (G), Blue (B).
5.1.1.3.3. Mỗi thành phần màu thường được biểu diễn bằng 8 bits (1 byte).
5.1.1.3.4. Mô hình màu phổ biến: RGB, HSV, YCbCr.
5.1.2. Digital Image là gì?
5.1.2.1. Biểu diễn: Ảnh số được lưu trữ dưới dạng ma trận 2 chiều, trong đó mỗi phần tử của ma trận tương ứng với một pixel.
5.1.2.2. Định nghĩa: Ảnh số là sự biểu diễn của một ảnh hai chiều (2D) dưới dạng một tập hợp hữu hạn các giá trị số, được gọi là các phần tử ảnh (picture elements) hay pixels.
5.1.2.3. Giá trị pixel: Mỗi pixel mang thông tin về cường độ sáng (mức xám) hoặc màu sắc tại vị trí đó trong ảnh.
5.1.2.4. Ảnh là sự xấp xỉ của cảnh thực: Quá trình số hóa ảnh (lấy mẫu và lượng tử hóa) làm mất mát thông tin, do đó ảnh số chỉ là sự xấp xỉ của cảnh thực.
5.1.3. **Digital Image Processing (DIP) là gì?**
5.1.3.1. Định nghĩa: Xử lý ảnh số là quá trình sử dụng các thuật toán trên máy tính để thao tác và biến đổi ảnh số.
5.1.3.2. Mục đích:
5.1.3.2.1. Chuẩn bị dữ liệu cho các ứng dụng Computer Vision.
5.1.3.2.2. Cải thiện chất lượng hình ảnh: giảm nhiễu, tăng độ tương phản, làm nét ảnh.
5.1.3.2.3. Trích xuất thông tin từ ảnh: phát hiện biên, phân vùng ảnh, nhận dạng vật thể.
5.1.3.3. Mối quan hệ với Signals and Systems: DIP là một nhánh con của lĩnh vực xử lý tín hiệu và hệ thống, tập trung vào xử lý tín hiệu hình ảnh.
5.1.4. **Computer Vision là gì?**
5.1.4.1. Định nghĩa: Computer Vision là một lĩnh vực khoa học máy tính nhằm mục đích làm cho máy móc có khả năng "nhìn" và hiểu được nội dung của hình ảnh và video giống như con người.
5.1.4.2. Mục tiêu: Xây dựng các hệ thống có thể tự động phân tích, xử lý và trích xuất thông tin ngữ nghĩa từ dữ liệu hình ảnh và video.
5.1.5. **Các mức độ xử lý (từ DIP đến Computer Vision):**
5.1.5.1. a. Low Level (Xử lý mức thấp):
5.1.5.1.1. Đầu ra: Ảnh đã được xử lý.
5.1.5.1.2. Đầu vào: Ảnh gốc.
5.1.5.1.3. Ví dụ: Giảm nhiễu, tăng cường biên cạnh, điều chỉnh độ sáng/tương phản.
5.1.5.2. b. Mid Level (Xử lý mức trung):
5.1.5.2.1. Ví dụ: Phân đoạn ảnh (segmentation), trích xuất đặc trưng (feature extraction), phát hiện đối tượng (object detection).
5.1.5.2.2. Đầu vào: Ảnh đã được xử lý ở mức thấp.
5.1.5.2.3. Đầu ra: Các thuộc tính của ảnh (features) như: biên, vùng, kết cấu.
5.1.5.3. c. High Level (Xử lý mức cao):
5.1.5.3.1. Đầu vào: Các thuộc tính đã được trích xuất ở mức trung.
5.1.5.3.2. Đầu ra: Sự hiểu biết về nội dung của ảnh/video, đưa ra quyết định.
5.1.5.3.3. Ví dụ: Nhận dạng vật thể (object recognition), phân loại hành động (action classification), chú thích ảnh (image captioning), trả lời câu hỏi hình ảnh (visual question answering), điều khiển robot.
5.2. **Ứng dụng:**
5.2.1. Image Enhancement (Cải thiện chất lượng ảnh):
5.2.1.1. Tăng độ tương phản (Contrast Enhancement): Giúp các chi tiết trong ảnh dễ phân biệt hơn.
5.2.1.2. Khử nhiễu (Noise Reduction): Loại bỏ các điểm ảnh ngẫu nhiên gây ra bởi cảm biến, quá trình truyền dẫn,...
5.2.1.3. Làm nét ảnh (Image Sharpening): Làm nổi bật các biên cạnh và chi tiết trong ảnh.
5.2.2. Medicine (Y học):
5.2.2.1. Phân tích ảnh MRI, X-quang, CT: Hỗ trợ chẩn đoán bệnh, xác định vị trí khối u, đo kích thước cơ quan,...
5.2.3. Law Enforcement (Thực thi pháp luật):
5.2.3.1. Nhận dạng biển số xe (License Plate Recognition): Giám sát giao thông, thu phí tự động, truy tìm phương tiện.
5.2.3.2. Nhận dạng vân tay (Fingerprint Recognition): Xác định danh tính tội phạm, kiểm soát ra vào.
5.2.3.3. Nhận dạng khuôn mặt (Face Recognition): Giám sát an ninh, nhận diện tội phạm, chấm công.
5.2.4. Human Computer Interfaces (Giao diện người-máy):
5.2.4.1. Nhận dạng khuôn mặt (Face Recognition): Mở khóa thiết bị, xác thực người dùng.
5.2.4.2. Nhận dạng cử chỉ (Gesture Recognition): Điều khiển thiết bị bằng cử chỉ tay, tương tác trong game.
5.2.4.3. Theo dõi ánh mắt (Eye Tracking): Nghiên cứu hành vi người dùng, hỗ trợ người khuyết tật.
5.2.5. Smart Cars (Xe thông minh):
5.2.5.1. Hệ thống hỗ trợ lái xe: Cảnh báo va chạm, hỗ trợ phanh khẩn cấp, giữ làn đường, điều khiển hành trình thích ứng.
5.2.5.2. Xe tự lái (Autonomous Driving): Tự động điều khiển xe mà không cần sự can thiệp của con người.
5.2.6. Industrial Inspection (Kiểm tra công nghiệp):
5.2.6.1. Phát hiện lỗi sản phẩm trên dây chuyền sản xuất.
5.2.6.2. Kiểm tra chất lượng mối hàn, linh kiện điện tử.
5.2.6.3. Đảm bảo chất lượng sản phẩm, giảm thiểu chi phí sản xuất.
5.3. **Các giai đoạn chính trong xử lý ảnh số**
5.3.1. Image Acquisition (Thu nhận ảnh):
5.3.1.1. Quá trình thu nhận ảnh từ thế giới thực bằng các thiết bị như camera, máy quét,...
5.3.1.2. Chuyển đổi tín hiệu ánh sáng thành tín hiệu số.
5.3.2. Image Enhancement (Cải thiện chất lượng ảnh):
5.3.2.1. Các kỹ thuật nhằm cải thiện chất lượng hình ảnh, giúp con người dễ dàng quan sát và phân tích hơn.
5.3.2.2. Bao gồm: điều chỉnh độ sáng/tương phản, lọc nhiễu, làm nét ảnh,...
5.3.3. Image Restoration (Phục hồi ảnh):
5.3.3.1. Khôi phục ảnh bị suy giảm chất lượng do nhiễu, mờ, méo,...
5.3.3.2. Sử dụng các mô hình toán học để ước lượng ảnh gốc.
5.3.4. Morphological Processing (Xử lý hình thái học):
5.3.4.1. Các phép toán dựa trên hình dạng và cấu trúc của vật thể trong ảnh.
5.3.4.2. Ứng dụng: trích xuất các thành phần của ảnh, làm mỏng, làm dày, loại bỏ nhiễu,...
5.3.5. Segmentation (Phân vùng ảnh):
5.3.5.1. Chia ảnh thành các vùng (region) có ý nghĩa, thường là các vật thể hoặc các vùng có chung đặc trưng.
5.3.5.2. Là bước quan trọng trong nhiều ứng dụng Computer Vision.
5.3.6. Object Recognition (Nhận dạng vật thể):
5.3.6.1. Xác định danh tính của các vật thể trong ảnh.
5.3.6.2. Gán nhãn cho các vật thể đã được phát hiện.
5.3.7. Image Compression (Nén ảnh):
5.3.7.1. Giảm dung lượng lưu trữ ảnh bằng cách loại bỏ thông tin dư thừa.
5.3.7.2. Giúp tiết kiệm dung lượng lưu trữ và tăng tốc độ truyền tải.
5.3.8. Color Image Processing (Xử lý ảnh màu):
5.3.8.1. Các kỹ thuật xử lý ảnh dựa trên thông tin màu sắc.
5.3.8.2. Bao gồm các phép biến đổi màu, phân đoạn màu,...
6. **Morphological Image Processing**
6.1. **Khái niệm:**
6.1.1. Xử lý hình thái học dựa trên hình dạng và cấu trúc
6.1.2. Sử dụng các phép toán tập hợp trên ảnh nhị phân
6.2. **Phép toán cơ bản:**
6.2.1. Erosion (Co):
6.2.1.1. Loại bỏ nhiễu, tách rời các vật thể dính liền
6.2.1.2. Làm mòn biên cạnh, loại bỏ các chi tiết nhỏ
6.2.1.3. A ⊖ B = {z | (B)_z ⊆ A}
6.2.2. Phép toán phức hợp:
6.2.2.1. Opening (Mở): Erosion theo sau bởi Dilation (cùng phần tử cấu trúc)
6.2.2.1.1. A ∘ B = (A ⊖ B) ⊕ B
6.2.2.1.2. Loại bỏ các chi tiết nhỏ, làm trơn đường bao
6.2.2.2. Closing (Đóng): Dilation theo sau bởi Erosion (cùng phần tử cấu trúc)
6.2.2.2.1. Điền vào các lỗ hổng, làm trơn đường bao
6.2.2.2.2. A • B = (A ⊕ B) ⊖ B
6.2.3. Dilation (Giãn):
6.2.3.1. A ⊕ B = {z | (B̂)_z ∩ A ≠ ∅}
6.2.3.2. Làm dày biên cạnh, điền vào các lỗ hổng
6.2.3.3. Kết nối các thành phần bị đứt gãy
6.3. **Ứng dụng:**
6.3.1. Đếm vật thể
6.3.2. Loại bỏ nhiễu
6.3.3. Phát hiện biên cạnh
6.3.4. Tách rời vật thể
7. ** Image Enhancement**
7.1. **Point Processing**
7.1.1. Khái niệm Point Processing:
7.1.1.1. Định nghĩa: Biến đổi giá trị của từng pixel một cách độc lập dựa trên một hàm biến đổi T.
7.1.1.2. Công thức: s = T(r)
7.1.1.2.1. T: hàm biến đổi (transformation function).
7.1.1.2.2. r: giá trị pixel đầu vào (original image pixel value).
7.1.1.2.3. s: giá trị pixel đầu ra (processed image pixel value).
7.1.1.3. Đặc điểm:
7.1.1.3.1. Không phụ thuộc vào vị trí của pixel trong ảnh.
7.1.1.3.2. Không phụ thuộc vào giá trị của các pixel lân cận.
7.1.2. Negative Images (Ảnh âm bản):
7.1.2.1. Mục đích: Làm nổi bật các chi tiết sáng trên nền tối.
7.1.2.2. Công thức: s = L - 1 - r (với L là số mức xám, thường là 256).
7.1.2.3. Ví dụ: Ứng dụng trong y học, làm nổi bật các khối u trong ảnh chụp X-quang.
7.1.3. Thresholding (Phân ngưỡng):
7.1.3.1. Mục đích: Tách biệt vật thể khỏi nền dựa trên một ngưỡng giá trị T.
7.1.3.2. Công thức:
7.1.3.2.1. s = 1 nếu r > T và 0 nếu r <= T
7.1.3.3. Ứng dụng: Phân đoạn ảnh (segmentation), tạo ảnh nhị phân.
7.1.4. Logarithmic Transformations (Biến đổi logarithmic):
7.1.4.1. Mục đích: Nén dải động của ảnh, làm rõ các chi tiết ở vùng tối.
7.1.4.2. Công thức: s = c * log(1 + r) (với c là hằng số, thường là 1).
7.1.4.3. Ứng dụng: Xử lý ảnh có dải động cao, ví dụ như ảnh Fourier Transform.
7.1.5. Power Law (Gamma) Transformations (Biến đổi lũy thừa):
7.1.5.1. Mục đích: Điều chỉnh độ tương phản của ảnh.
7.1.5.2. Công thức: s = c * r^γ (với c là hằng số, thường là 1, γ là số mũ gamma).
7.1.5.2.1. γ < 1: Tăng độ sáng cho vùng tối, nén vùng sáng.
7.1.5.2.2. γ > 1: Tăng độ sáng cho vùng sáng, nén vùng tối.
7.1.5.3. Ứng dụng:
7.1.5.3.1. Gamma correction: Hiệu chỉnh độ sáng cho màn hình hiển thị.
7.1.5.3.2. Điều chỉnh độ tương phản cho phù hợp với mục đích sử dụng.
7.2. **Histogram Equalization**
7.2.1. Histogram là gì?
7.2.1.1. Định nghĩa: Histogram của ảnh là một biểu đồ thể hiện tần suất xuất hiện của các mức xám (hoặc các giá trị pixel) trong ảnh.
7.2.1.1.1. Trục tung: Biểu diễn số lượng pixel có mức xám tương ứng.
7.2.1.1.2. Trục hoành: Biểu diễn các mức xám (từ 0 đến L-1, với L là số mức xám).
7.2.1.2. Ý nghĩa:
7.2.1.2.1. Là cơ sở cho các kỹ thuật xử lý ảnh như cân bằng histogram (histogram equalization) và khớp histogram (histogram matching).
7.2.1.2.2. Cung cấp thông tin tổng quan về phân bố độ sáng/tối của ảnh.
7.2.1.2.3. Giúp đánh giá độ tương phản của ảnh.
7.2.1.3. Công thức tính histogram: h(r_k) = n_k
7.2.1.3.1. r_k: mức xám thứ k.
7.2.1.3.2. n_k: số lượng pixel có mức xám r_k.
7.2.1.4. Histogram chuẩn hóa: p(r_k) = n_k / n
7.2.1.4.1. n: tổng số pixel trong ảnh.
7.2.1.4.2. p(r_k): xác suất xuất hiện của mức xám r_k.
7.2.2. Một số dạng histogram điển hình:
7.2.2.1. Ảnh tối: Histogram tập trung về phía bên trái (các mức xám thấp).
7.2.2.2. Ảnh sáng: Histogram tập trung về phía bên phải (các mức xám cao).
7.2.2.3. Ảnh tương phản thấp: Histogram tập trung vào một dải hẹp các mức xám.
7.2.2.4. Ảnh tương phản cao: Histogram trải rộng ra toàn bộ dải mức xám.
7.2.3. Histogram Equalization (Cân bằng Histogram):
7.2.3.1. Mục tiêu: Biến đổi histogram của ảnh sao cho phân bố các mức xám trở nên đồng đều hơn, từ đó tăng cường độ tương phản của ảnh.
7.2.3.2. Nguyên lý:
7.2.3.2.1. Sử dụng hàm biến đổi s = T(r) sao cho histogram của ảnh đầu ra p_s(s) xấp xỉ phân bố đều.
7.2.3.3. Hàm biến đổi T(r):
7.2.3.3.1. T(r) phải là hàm đơn điệu tăng (để bảo toàn thứ tự các mức xám).
7.2.3.3.2. T(r) phải ánh xạ từ [0, L-1] sang [0, L-1] (để đảm bảo giá trị đầu ra nằm trong dải mức xám cho phép).
7.2.3.3.3. T(r) được xác định dựa trên hàm phân phối tích lũy (Cumulative Distribution Function - CDF) của histogram ảnh đầu vào:
7.2.3.4. Ưu điểm:
7.2.3.4.1. Tăng cường độ tương phản của ảnh.
7.2.3.4.2. Thực hiện tự động, không cần tham số.
7.2.3.5. Nhược điểm:
7.2.3.5.1. Có thể làm tăng nhiễu trong ảnh.
7.2.3.5.2. Có thể tạo ra các artifact (hiện tượng giả) trong ảnh.
7.2.3.5.3. Không phải lúc nào cũng cho kết quả mong muốn, đặc biệt với các ảnh có histogram hẹp.
7.2.4. Histogram Matching:
7.2.4.1. Mục tiêu: Biến đổi histogram của ảnh đầu vào sao cho giống với một histogram cho trước (histogram đặc tả).
7.2.4.2. Nguyên lý:
7.2.4.2.1. Thực hiện histogram equalization cho ảnh đầu vào, thu được hàm biến đổi s = T(r).
7.2.4.2.2. Thực hiện histogram equalization cho histogram đặc tả p_z(z), thu được hàm biến đổi v = G(z).
7.2.4.2.3. Tìm ánh xạ z = G^(-1)(s) từ ảnh đã cân bằng sang ảnh có histogram mong muốn.
7.2.4.3. Ưu điểm:
7.2.4.3.1. Cho phép biến đổi histogram của ảnh theo ý muốn.
7.2.4.3.2. Có thể sử dụng để chuẩn hóa histogram của các ảnh khác nhau.
7.2.4.4. Nhược điểm:
7.2.4.4.1. Phức tạp hơn histogram equalization.
7.2.4.4.2. Cần phải có histogram đặc tả.
7.3. **Spatial Domain Filtering**
7.3.1. **Khái niệm:**
7.3.1.1. Định nghĩa: Xử lý ảnh trong miền không gian (spatial domain) là thao tác trực tiếp trên các pixel của ảnh.
7.3.1.2. Mục tiêu: Cải thiện chất lượng ảnh, trích xuất thông tin từ ảnh.
7.3.1.3. Phương pháp: Sử dụng các bộ lọc không gian (spatial filters) để thực hiện các phép toán trên một vùng lân cận của mỗi pixel.
7.3.2. **Bộ lọc không gian (Spatial Filters):**
7.3.2.1. Định nghĩa: Là một ma trận (thường là vuông) có kích thước nhỏ, được gọi là kernel, mask, template, hoặc window.
7.3.2.2. Nguyên lý hoạt động:
7.3.2.2.1. Thay thế giá trị của pixel trung tâm bằng kết quả của phép toán.
7.3.2.2.2. Di chuyển kernel qua từng pixel của ảnh.
7.3.2.2.3. Tại mỗi vị trí, thực hiện phép toán giữa các giá trị trong kernel và các giá trị pixel tương ứng trong vùng lân cận.
7.3.2.3. Biểu diễn toán học:
7.3.2.3.1. w(s,t): các hệ số của kernel (mask coefficients).
7.3.2.3.2. g(x,y) = ∑[w(s,t) * f(x+s, y+t)] (s=-a,...,a; t=-b,...,b)
7.3.2.3.3. f(x,y): ảnh đầu vào.
7.3.2.3.4. g(x,y): ảnh đầu ra.
7.3.2.3.5. (2a+1)x(2b+1): kích thước của kernel.
7.3.3. **Phân loại bộ lọc:**
7.3.3.1. Linear Filters (Bộ lọc tuyến tính):
7.3.3.1.1. Ví dụ: Bộ lọc trung bình (mean filter), bộ lọc Gaussian.
7.3.3.1.2. Kết quả đầu ra là tổng tuyến tính của các pixel trong vùng lân cận.
7.3.3.2. Nonlinear Filters (Bộ lọc phi tuyến):
7.3.3.2.1. Kết quả đầu ra không phải là tổng tuyến tính của các pixel trong vùng lân cận.
7.3.3.2.2. Ví dụ: Bộ lọc trung vị (median filter), bộ lọc min/max.
7.3.4. **Correlation and Convolution (Tương quan và tích chập):**
7.3.4.1. Correlation (Tương quan):
7.3.4.1.1. Công thức:
7.3.4.1.2. Là quá trình di chuyển kernel qua ảnh và tính tổng tích của các hệ số kernel với các giá trị pixel tương ứng trong vùng lân cận.
7.3.4.1.3. Ý nghĩa: Đo lường sự tương đồng giữa kernel và vùng ảnh.
7.3.4.2. Convolution (Tích chập):
7.3.4.2.1. Tương tự như correlation, nhưng kernel được lật theo chiều ngang và chiều dọc trước khi thực hiện phép toán.
7.3.4.2.2. Công thức:
7.3.4.2.3. Tính chất:
7.3.4.3. Mối quan hệ giữa Correlation và Convolution:
7.3.4.3.1. Nếu kernel đối xứng, correlation và convolution cho kết quả giống nhau.
7.3.4.3.2. Convolution có tính chất giao hoán, thuận tiện cho việc phân tích trong miền tần số.
7.3.5. **Smoothing Linear Filters (Bộ lọc làm mịn tuyến tính):**
7.3.5.1. Mục đích: Giảm nhiễu, làm mờ ảnh.
7.3.5.2. Nguyên lý: Thay thế giá trị pixel bằng trung bình (hoặc trung bình có trọng số) của các pixel trong vùng lân cận.
7.3.5.3. Mean Filters (Bộ lọc trung bình):
7.3.5.3.1. Tất cả các hệ số của kernel đều bằng nhau (ví dụ: 1/9 cho kernel 3x3).
7.3.5.3.2. Làm mờ ảnh, giảm nhiễu.
7.3.5.4. Weighted Average Filters (Bộ lọc trung bình có trọng số):
7.3.5.4.1. Các hệ số của kernel có giá trị khác nhau, thường là các giá trị giảm dần từ tâm ra biên.
7.3.5.4.2. Cho phép làm mịn ảnh nhưng vẫn giữ được một số chi tiết.
7.3.5.5. Gaussian Filter (Bộ lọc Gaussian):
7.3.5.5.1. Là một dạng đặc biệt của bộ lọc trung bình có trọng số.
7.3.5.5.2. Các hệ số được tính theo hàm phân phối Gaussian.
7.3.5.5.3. Có khả năng làm mịn ảnh tốt, ít làm mờ biên cạnh hơn so với bộ lọc trung bình thông thường.
7.3.5.6. Ảnh hưởng của kích thước kernel:
7.3.5.6.1. Kích thước kernel càng lớn, mức độ làm mịn càng cao, nhưng đồng thời cũng làm mờ ảnh và mất chi tiết nhiều hơn.
7.3.5.6.2. Lựa chọn kích thước kernel phù hợp là rất quan trọng, phụ thuộc vào mức độ nhiễu và yêu cầu của ứng dụng.
7.3.6. **Smoothing Non-linear Filters (Bộ lọc làm mịn phi tuyến):**
7.3.6.1. Order-Statistic Filters (Bộ lọc thống kê thứ tự):
7.3.6.1.1. Dựa trên việc sắp xếp các giá trị pixel trong vùng lân cận theo thứ tự tăng dần hoặc giảm dần.
7.3.6.1.2. Kết quả đầu ra là giá trị pixel ở một vị trí cụ thể trong dãy đã sắp xếp.
7.3.6.1.3. Median Filter (Bộ lọc trung vị):
7.3.6.1.4. Max Filter (Bộ lọc cực đại):
7.3.6.1.5. Min Filter (Bộ lọc cực tiểu):
7.3.7. **Sharpening Filters (Bộ lọc làm nét):**
7.3.7.1. Mục đích: Làm nổi bật các biên cạnh và chi tiết trong ảnh, làm cho ảnh trông sắc nét hơn.
7.3.7.2. Nguyên lý: Sử dụng đạo hàm (derivatives) để phát hiện sự thay đổi đột ngột về cường độ sáng.
8. **Digital Image Fundamentals**
8.1. **Ánh sáng và phổ điện từ :**
8.1.1. Ánh sáng: Là một dạng năng lượng điện từ mà mắt người có thể cảm nhận được.
8.1.2. Phổ điện từ: Tập hợp tất cả các dạng sóng điện từ, được sắp xếp theo bước sóng hoặc tần số.
8.1.3. Ánh sáng nhìn thấy được: Chỉ là một phần nhỏ trong phổ điện từ, có bước sóng từ khoảng 380nm đến 780nm.
8.1.4. Màu sắc: Được xác định bởi bước sóng của ánh sáng.
8.2. **Biểu diễn ảnh :**
8.2.1. Ma trận điểm ảnh (Pixel Matrix): Ảnh số được biểu diễn dưới dạng ma trận 2D, mỗi phần tử là một pixel.
8.2.2. Kích thước ảnh (Image Size): Được xác định bởi số lượng hàng và cột của ma trận pixel (e.g., 640x480, 1920x1080).
8.2.3. Giá trị pixel (Pixel Value): Biểu diễn cường độ sáng (mức xám) hoặc màu sắc tại mỗi pixel.
8.2.3.1. Mức xám (Grayscale): Thường được biểu diễn bằng các giá trị từ 0 (đen) đến 255 (trắng).
8.2.3.2. Màu sắc (Color): Thường được biểu diễn bằng các kênh màu (e.g., RGB, HSV).
8.3. **Độ phân giải (Resolution)**
8.3.1. Độ phân giải không gian (Spatial Resolution):
8.3.1.1. Mức độ chi tiết của ảnh.
8.3.1.2. Được xác định bởi số lượng pixel trên một đơn vị độ dài (e.g., dpi - dots per inch).
8.3.1.3. Ảnh có độ phân giải cao hơn sẽ có nhiều chi tiết hơn.
8.3.2. Độ phân giải cường độ (Intensity Level Resolution):
8.3.2.1. Số lượng mức cường độ (mức xám) được sử dụng để biểu diễn giá trị pixel.
8.3.2.2. Ảnh có độ phân giải cường độ cao hơn sẽ có khả năng phân biệt các mức độ sáng/tối tốt hơn.
8.4. **Độ bão hòa (Saturation):**
8.4.1. Hiện tượng xảy ra khi giá trị pixel vượt quá giới hạn biểu diễn.
8.5. **Nhiễu (Noise): **
8.5.1. Các giá trị ngẫu nhiên không mong muốn xuất hiện trong ảnh, làm giảm chất lượng ảnh.
8.6. **Mối quan hệ giữa các Pixels**
8.6.1. Láng giềng (Neighbors):
8.6.1.1. 4-neighbors (N4(p)): 4 pixel lân cận theo chiều ngang và dọc (trên, dưới, trái, phải).
8.6.1.2. Diagonal neighbors (ND(p)): 4 pixel lân cận theo đường chéo.
8.6.1.3. 8-neighbors (N8(p)): Bao gồm cả 4-neighbors và diagonal neighbors.