Cơ bản về xử lý ảnh số
153
Bảng 11.3.
Các phép toán số học trên ảnh
Tên hàm
Cú pháp
Mô tả
imabsdiff
z = imabsdiff(x,y)
Trừ mỗi phần tử của Y từ phần tử tương ứng của X,
sau đó trả về trị tuyệt đối của hiệu
imadd
z = imadd(x,y,out_class)
Cộng hai ảnh hoặc cộng một ảnh với một hằng số,
output_class là chuỗi xác định kiểu dữ liệu của
tổng
imcomplement
im2 = imcomplement(im)
Lấy bù của ảnh im
imdivide
z = imdivide(x,y)
Chia các phần tử của ảnh x cho phần tử tương ứng của
y, các giá trị phân số được làm tròn
imlincomb
z = imlincomb(k1,a1,k2,a2,
..., kn,an,k,out_class)
Lấy tổ hợp tuyến tính của các ảnh: z = k1.*a1 +
k2.*a2 + ... + kn.*an + k
immultiply
z = immultiply(x,y)
Nhân hai ảnh hoặc nhân một ảnh với một hằng số, nếu
kết quả bị tràn thì sẽ được giới hạn lại trong tầm cho
phép
imsubstract
z = imsubtract(x,y)
Trừ hai ảnh hoặc trừ một ảnh cho một hằng số, nếu
kết quả bị tràn thì sẽ được giới hạn lại trong tầm cho
phép
Phép cộng hai ảnh thường dùng để xếp chồng một ảnh lên trên một ảnh khác. Phép cộng một
ảnh với một hằng số làm tăng độ sáng của ảnh.
Ví dụ 11-2. Chồng lẫn hai ảnh trên một nền chung:
I = imread('rice.png');
% Đọc ảnh thứ nhất
J = imread('cameraman.tif'); % Đọc ảnh thứ hai
K = imadd(I,J);
% Cộng hai ảnh
imshow(I)
%
Hiển thị ảnh thứ nhất
imshow(J)
%
Hiển thị ảnh thứ hai
imshow(K)
%
Hiển thị ảnh tổng
Sau khi thực hiện chương trình ta được ảnh kết quả như sau (hình 11.5):
Hình 11.5.
Ví dụ 11-3. Làm tăng độ sáng ảnh bằng phép cộng với hằng số: