matlab进行图片的简单去除背景方法


1.选择要识别的图片

2.对图片进行二值化处理

3.对二值化图片进行腐蚀再膨胀(或者膨胀再腐蚀)

%初始化
clc;clear all;
%开始计时
tic
%输入需要识别的图像
[filename,pathname,fi]=uigetfile(...
                    {'*.*', 'all image file (*.*)';...
                     '*.bmp','all image file (*.bmp)';...
                     '*.jpg','all image file (*.jpg)'},...
                     '请选择要识别的图片',...
                     'MultiSelect', 'on');
in_image=imread([pathname filename]);
figure;imshow(in_image);title('原始图像');%显示原始图像

 BW = im2bw(in_image(:,:,3),0.6);
 se = strel('disk',4)
 figure;imshow(BW);title('去除背景');
 %se=[0 0 0 0 0;0 0 0 0 0;0 0 1 0 0;0 0 0 0 0;0 0 0 0 0]
 BW = imdilate(BW,se);%imerode
 %   figure;imshow(BW);title('去除背景');
 se1=strel('disk',4);%这里是创建一个半径为4的平坦型圆盘结构元素
 BW=imerode(BW,se1);
 %figure;imshow(BW); 
 in_image(repmat(BW,[1,1,3])) = 0;
 figure;imshow(in_image);title('去除背景');


 t=toc

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM