-
大小: 3KB文件類型: .m金幣: 1下載: 0 次發(fā)布日期: 2021-05-06
- 語(yǔ)言: Matlab
- 標(biāo)簽:
資源簡(jiǎn)介
以matlab為平臺(tái)進(jìn)行圖像處理,預(yù)處理銀行卡卡號(hào)后進(jìn)行卡號(hào)定位,并自動(dòng)切割出卡號(hào)部分的圖像。代碼注釋明確,適合小白閱讀。
代碼片段和文件信息
clear;
close?all;
clc;
%%?彈出讀取圖像的提示框
[filename?filepath]?=?uigetfile(‘.jpg‘?‘輸入一個(gè)需要識(shí)別的銀行卡圖像‘);
file?=?strcat(filepath?filename);
img?=?imread(file);
figure;
imshow(img);
title(‘銀行卡圖像‘);
%%?灰度處理
img1?=?rgb2gray(img);????%?RGB圖像轉(zhuǎn)灰度圖像
figure;
subplot(2?1?1);
imshow(img1);
title(‘灰度圖像‘);
subplot(2?1?2);
imhist(img1);
title(‘灰度直方圖‘);
%%?圖像二值化
T=16?/?255;
bw22=im2bw(img1T);%轉(zhuǎn)換圖像為二進(jìn)制圖像
bw2=double(bw22);
figure;
imshow(bw2);
title(‘圖像二值化‘);%得到二值圖像
%%?邊緣提取
img4?=?edge(bw2‘canny‘);?
figure(‘name‘‘邊緣檢測(cè)‘);
imshow(img4);
title(‘canny算子邊緣檢測(cè)‘);
%%?圖像腐蝕
se=[1;1;1];
img5?=?imerode(img4?se);
figure(‘name‘‘圖像腐蝕‘);
imshow(img5);
title(‘圖像腐蝕后的圖像‘);
%%?平滑圖像,圖像膨脹
se?=?strel(‘rectangle‘?[15?15]);
img6?=?imclose(img5?se);
figure(‘name‘‘平滑處理‘);
imshow(img6);
title(‘平滑圖像的輪廓‘);
%%?從圖像中刪除所有少于3000像素8鄰接
img7?=?bwareaopen(img6?500);
figure(‘name‘?‘移除小對(duì)象‘);
imshow(img7);
title(‘從圖像中移除小對(duì)象‘);
%%?切割出圖像
[y?x?z]?=?size(img7);
img8?=?double(img7);????%?轉(zhuǎn)成雙精度浮點(diǎn)型
評(píng)論
共有 條評(píng)論