Trong tích chập, hai hàm toán học được kết hợp để tạo ra hàm thứ ba. Trong các chức năng xử lý hình ảnh thường được gọi là hạt nhân. Một hạt nhân không có gì khác ngoài một mảng (vuông) pixel (một hình ảnh nhỏ để nói). Thông thường, các giá trị trong kernel cộng lại thành một. Điều này là để đảm bảo không có năng lượng được thêm hoặc xóa khỏi hình ảnh sau khi hoạt động.
Cụ thể, hạt nhân Gaussian (được sử dụng cho mờ Gaussian) là một mảng pixel vuông trong đó các giá trị pixel tương ứng với các giá trị của đường cong Gaussian (ở dạng 2D).
Mỗi pixel trong ảnh được nhân với nhân Gaussian. Điều này được thực hiện bằng cách đặt pixel trung tâm của kernel trên pixel hình ảnh và nhân các giá trị trong ảnh gốc với các pixel trong kernel trùng nhau. Các giá trị kết quả từ các phép nhân này được thêm vào và kết quả đó được sử dụng cho giá trị tại pixel đích. Nhìn vào hình ảnh, bạn sẽ nhân giá trị tại (0,0) trong mảng đầu vào với giá trị tại (i) trong mảng kernel, giá trị tại (1,0) trong mảng đầu vào với giá trị tại (h ) trong mảng kernel, v.v. và sau đó thêm tất cả các giá trị này để lấy giá trị cho (1,1) ở hình ảnh đầu ra.
Để trả lời câu hỏi thứ hai của bạn trước, hạt nhân càng lớn, thao tác càng tốn kém. Vì vậy, bán kính mờ càng lớn, thao tác sẽ mất nhiều thời gian hơn.
Để trả lời câu hỏi đầu tiên của bạn, như đã giải thích ở trên, tích chập có thể được thực hiện bằng cách nhân từng pixel đầu vào với toàn bộ kernel. Tuy nhiên, nếu hạt nhân đối xứng (mà là hạt nhân Gaussian), bạn cũng có thể nhân độc lập từng trục (x và y), điều này sẽ làm giảm tổng số phép nhân. Theo thuật ngữ toán học thích hợp, nếu một ma trận có thể tách rời, nó có thể được phân tách thành ma trận (M × 1) và (1 × N). Đối với nhân Gaussian ở trên, điều này có nghĩa là bạn cũng có thể sử dụng các hạt nhân sau:
1256⋅ ⎡⎣⎢⎢⎢⎢⎢⎢1464141624164624362464162416414641⎤⎦⎥⎥⎥⎥⎥⎥= = 1256⋅⎡⎣⎢⎢⎢⎢⎢⎢14641⎤⎦⎥⎥⎥⎥⎥⎥⋅ [ 14641]
Bây giờ bạn sẽ nhân từng pixel trong ảnh đầu vào với cả hai nhân và thêm các giá trị kết quả để lấy giá trị cho pixel đầu ra.
Để biết thêm thông tin về cách xem một hạt nhân có thể tách rời, hãy theo liên kết này .
Chỉnh sửa: hai hạt nhân hiển thị ở trên sử dụng các giá trị hơi khác nhau. Điều này là do tham số (sigma) được sử dụng cho đường cong Gaussian để tạo các hạt nhân này hơi khác nhau trong cả hai trường hợp. Để giải thích về các tham số ảnh hưởng đến hình dạng của đường cong Gaussian và do đó, các giá trị trong nhân theo liên kết này
Chỉnh sửa: trong hình ảnh thứ hai ở trên, nó nói kernel được sử dụng được lật. Điều này tất nhiên chỉ làm cho bất kỳ sự khác biệt nếu hạt nhân bạn sử dụng không đối xứng. Lý do tại sao bạn cần lật hạt nhân phải làm với các thuộc tính toán học của hoạt động tích chập (xem liên kết để được giải thích sâu hơn về tích chập). Nói một cách đơn giản: nếu bạn không lật kernel, kết quả của thao tác tích chập sẽ được lật. Bằng cách lật kernel, bạn sẽ có được kết quả chính xác.