// Hình ảnh màu xám, mặt nạ nhị phân
hủy morph (inImage, outImage, hạt nhân, loại)
{// một nửa kích thước của hạt nhân, kích thước hạt nhân là n * n (dễ dàng hơn nếu n là số lẻ)
sz = (kernel.n - 1) / 2; cho X trong inImage.rows {cho Y trong inImage.cols {if (isOnBoundary (X, Y, inImage, sz)) {// kiểm tra xem điểm ảnh (X, Y) đối với trường hợp ranh giới và đối phó với nó (bản sao điểm ảnh như là) // phải xem xét một nửa kích thước của hạt nhân val = inImage (X, Y); // Nhanh chóng sửa chữa} else {list = []; // lấy khu phố của điểm ảnh này (X, Y) cho tôi trong kernel.n {J trong kernel.n {if (kernel (I, J) == 1 ) {list.add (inImage (X + I-sz, Y + J-sz));}}} nếu loại giãn nở == {// giãn nở: thiết lập để một nếu bất kỳ 1 là hiện nay, không khác val = max ( danh sách);} else if loại == xói mòn {// xói mòn: thiết lập để không nếu có 0 là hiện nay, một cách khác val = min (danh sách);}} // thiết lập đầu ra hình ảnh điểm ảnh outImage (X, Y) = val; }}}
đang được dịch, vui lòng đợi..