【图像分割】基于迭代阙值选择、最大类间差、区域生长多种算法实现图像分割含Matlab源码

网友投稿 294 2022-09-04


【图像分割】基于迭代阙值选择、最大类间差、区域生长多种算法实现图像分割含Matlab源码

1 简介

重点讨论了图像分割法中的阈值研究法,包括迭代阙值选择、最大类间差、区域生长进行了重点分析,用Matlab进行实现并给出了实验结果.

2 部分代码

function varargout = ImageDivision(varargin)% IMAGEDIVISION M-file for ImageDivision.fig% IMAGEDIVISION, by itself, creates a new IMAGEDIVISION or raises the existing% singleton*.%% H = IMAGEDIVISION returns the handle to a new IMAGEDIVISION or the handle to% the existing singleton*.%% IMAGEDIVISION('CALLBACK',hObject,eventData,handles,...) calls the local% function named CALLBACK in IMAGEDIVISION.M with the given input arguments.%% IMAGEDIVISION('Property','Value',...) creates a new IMAGEDIVISION or raises the% existing singleton*. Starting from the left, property value pairs are% applied to the GUI before ImageDivision_OpeningFcn gets called. An% unrecognized property name or invalid value makes property application% stop. All inputs are passed to ImageDivision_OpeningFcn via varargin.%% *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one% instance to run (singleton)".%% See also: GUIDE, GUIDATA, GUIHANDLES% Edit the above text to modify the response to help ImageDivision% Last Modified by GUIDE v2.5 26-Aug-2013 17:11:44% Begin initialization code - DO NOT EDITgui_Singleton = 1;gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @ImageDivision_OpeningFcn, ... 'gui_OutputFcn', @ImageDivision_OutputFcn, ... 'gui_LayoutFcn', [] , ... 'gui_Callback', []);if nargin && ischar(varargin{1}) gui_State.gui_Callback = str2func(varargin{1});endif nargout [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});else gui_mainfcn(gui_State, varargin{:});end% End initialization code - DO NOT EDIT% --- Executes just before ImageDivision is made visible.function ImageDivision_OpeningFcn(hObject, eventdata, handles, varargin)% This function has no output args, see OutputFcn.% hObject handle to figure% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% varargin command line arguments to ImageDivision (see VARARGIN)% Choose default command line output for ImageDivisionhandles.output = hObject;% Update handles structureguidata(hObject, handles);% UIWAIT makes ImageDivision wait for user response (see UIRESUME)% uiwait(handles.figure1);% --- Outputs from this function are returned to the command line.function varargout = ImageDivision_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT);% hObject handle to figure% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% Get default command line output from handles structurevarargout{1} = handles.output;% --------------------------------------------------------------------function file_Callback(hObject, eventdata, handles)% hObject handle to file (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% --------------------------------------------------------------------function MorphProcessing_Callback(hObject, eventdata, handles)% hObject handle to MorphProcessing (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% --------------------------------------------------------------------function ImageDilate_Callback(hObject, eventdata, handles)% hObject handle to ImageDilate (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)set(handles.axes2,'HandleVisibility','ON');axes(handles.axes2);I=handles.img;se=strel('disk',1);I2=imdilate(I,se);imshow(I2);set(handles.axes2,'HandleVisibility','OFF');% --------------------------------------------------------------------function ImgErode_Callback(hObject, eventdata, handles)% hObject handle to ImgErode (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)set(handles.axes2,'HandleVisibility','ON');axes(handles.axes2);I=handles.img;se=strel('disk',1);I2=imerode(I,se);imshow(I2);set(handles.axes2,'HandleVisibility','OFF');% --------------------------------------------------------------------function ImgOpen_Callback(hObject, eventdata, handles)% hObject handle to ImgOpen (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)set(handles.axes2,'HandleVisibility','ON');axes(handles.axes2);I=handles.img;se=strel('disk',1);I2=imopen(I,se);imshow(I2);set(handles.axes2,'HandleVisibility','OFF');% --------------------------------------------------------------------function ImgClose_Callback(hObject, eventdata, handles)% hObject handle to ImgClose (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)set(handles.axes2,'HandleVisibility','ON');axes(handles.axes2);I=handles.img;se=strel('disk',1);I2=imclose(I,se);imshow(I2);set(handles.axes2,'HandleVisibility','OFF');

3 仿真结果

4 参考文献

[1]黄谊, 任毅. 基于阈值法和区域生长法的图像分割算法研究[J]. 电子测试, 2012(10):4.

博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。

部分理论引用网络文献,若有侵权联系博主删除。


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:java实现直线分形山脉
下一篇:Java实现简易画图板
相关文章

 发表评论

暂时没有评论,来抢沙发吧~