【Matlab學習手記】簡單的印章提取

簡單的印章提取程序

網上隨便找了一幅圖,效果如下:

 原理:主要根據R、G、B三個顏色分量的差異來實現。

這個程序比較簡單,要求印章顏色和背景文字顏色有明顯差異,這樣方便根據RGB的差異來提取目標信息。

clear; clc;
imData = imread('test.jpg');
[m, n, r] = size(imData);
reData = imData;
for i = 1 : m
    for j = 1 : n
        mini = min(imData(i,j,:));
        maxi = max(imData(i,j,:));
        if maxi - mini < 10   % 根據實際情況修改         
            reData(i, j, 1) = 255;
            reData(i, j, 2) = 255;
            reData(i, j, 3) = 255;
        elseif maxi - mini < 100
            reData(i, j, 1) = 255;
        else
            reData(i, j, 1) = 255;
            reData(i, j, 2) = 50;
            reData(i, j, 3) = 50;
        end
    end
end
subplot(1, 2, 1)
imshow(imData)
subplot(1, 2, 2)
imshow(reData)

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章