%%%%%%%%%% MENU 3 %%%%%%%%%%
function menu3(action,varargin)
if nargin<1,
action='Initialize';
end;
feval(action,varargin{:});
return;
function Initialize()
%%%% image processing variables
global Image1; % original image
global Image2; % blured image
global sigma;
global mu;
global NoGVFIterations; % number of iterations
global NoSnakeIterations; % number of Snake iterations
global VectorFieldButt;
global alpha beta gamma kappa dmin dmax; % parameters for the snake
global px py; % forse filed
global IncSnakeRadius; % inicializaton snake radius
global XSnake YSnake; % conture of the snake
%%%% interface variables
global VectorOfLocalMenuHD; %vector of local objects that can be arased in next step
global HDmainf; %main figure handle
global HDorigPic; %original picture axes handle
global HDbluredPic; %blured picture axes handle
global HDvectorFPic; %handle of vector field picture
global HDedit1 HDedit2 HDedit3 HDedit4 HDedit5 HDedit6 HDedit7; % handels of snake edit uicontrol
global HDSnakeLine; %vector of Handles of Snake lines on the picture
global HDedit8 HDedit9 HDRadioButton1 HDRadioButton2;
global HDButton1 HDButton2 HDButton4;
global SnakeON; %indicate if snake is visible
global CircleOn; % inicalization snake will be circle
global SnakeDotsON; % 1 if snake dots should be displeyed
global xsize ysize; %size of the picture
global adgeD MinSize MenuSizeX MenuSizeY MenuPosX MenuPosY;
global ButtHeight ButtWidth ButtDist TextHeight;
global DotsSize; % size in pixels of the dots on the snake
%%%%%% Close Old Objects %%%%%%%%
if ~isempty(VectorOfLocalMenuHD)
delete(VectorOfLocalMenuHD);
VectorOfLocalMenuHD=[];
end;
pause(0.1);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Define menu objects
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%plot the border for the menu
MenuSizeY=365;
MenuPosX=xsize*2+3*adgeD;
MenuPosY=ysize*2+3*adgeD-8-MenuSizeY;
HDMenuAxes=uicontrol( 'Parent',HDmainf , ...
'Style','frame', ...
'Units','pixels', ...
'Position',[MenuPosX MenuPosY MenuSizeX MenuSizeY],...
'BackgroundColor',[0.45 0.45 0.45]);
% Deform
labelStr='Deform';
ButtPosX=MenuPosX+0.5*ButtDist+MenuSizeX/2;
ButtPosY=MenuPosY+MenuSizeY-ButtDist-ButtHeight;
ButtWidth=MenuSizeX/2-1.5*ButtDist;
HDButton1=uicontrol('Parent', HDmainf, ...
'BusyAction','Queue','Interruptible','off',...
'Style','pushbutton', ...
'Units','pixels', ...
'Position',[ButtPosX ButtPosY ButtWidth ButtHeight], ...
'String',labelStr, ...
'Enable','on', ...
'Callback','SnakeIter');
% The BACK button
labelStr='<-- Back';
ButtPosX=MenuPosX+ButtDist;
HDButton2=uicontrol('Parent', HDmainf, ...
'BusyAction','Queue','Interruptible','off',...
'Style','pushbutton', ...
'Units','pixels', ...
'Position',[ButtPosX ButtPosY ButtWidth ButtHeight], ...
'String',labelStr, ...
'Enable','on', ...
'Callback','menu2');
% UICONTROL for alpha
ButtWidth=MenuSizeX-2*ButtDist;
ButtPosY = ButtPosY-ButtDist-ButtHeight;
labelPos=[ButtPosX+0.1*ButtWidth ButtPosY ButtWidth*0.5 TextHeight];
HDtext1 = uicontrol('Parent', HDmainf, ...
'Style','text', ...
'Units','pixels', ...
'Position',labelPos, ...
'Horiz','left', ...
'String','Alpha:', ...
'Interruptible','off', ...
'BackgroundColor',[0.45 0.45 0.45], ...
'ForegroundColor','white');
textPos=[ButtPosX+0.5*ButtWidth ButtPosY ButtWidth*0.35 TextHeight];
callbackStr = 'snakeset';
stringVal=num2str(alpha);
HDedit1 = uicontrol('Parent', HDmainf, ...
'BusyAction','Queue','Interruptible','off',...
'Style','edit', ...
'Units','pixel', ...
'Position',textPos, ...
'Units','normal', ...
'Horiz','right', ...
'Background','white', ...
'Foreground','black', ...
'String',stringVal,'Value',alpha, ...
'UserData',alpha,...
'Enable','on',...
'callback',callbackStr);
% UICONTROL for beta
ButtPosY = ButtPosY-ButtDist-ButtHeight;
labelPos=[ButtPosX+0.1*ButtWidth ButtPosY ButtWidth*0.5 TextHeight];
HDtext2 = uicontrol('Parent', HDmainf, ...
'Style','text', ...
'Units','pixels', ...
'Position',labelPos, ...
'Horiz','left', ...
'String','Beta:', ...
'Interruptible','off', ...
'BackgroundColor',[0.45 0.45 0.45], ...
'ForegroundColor','white');
textPos=[ButtPosX+0.5*ButtWidth ButtPosY ButtWidth*0.35 TextHeight];
stringVal=num2str(beta);
HDedit2 = uicontrol('Parent', HDmainf, ...
'BusyAction','Queue','Interruptible','off',...
'Style','edit', ...
'Units','pixel', ...
'Position',textPos, ...
'Units','normal', ...
'Horiz','right', ...
'Background','white', ...
'Foreground','black', ...
'String',stringVal,'Value',beta, ...
'UserData',beta,...
'Enable','on',...
'callback',callbackStr);
% UICONTROL for gamma
ButtPosY = ButtPosY-ButtDist-ButtHeight;
labelPos=[ButtPosX+0.1*ButtWidth ButtPosY ButtWidth*0.5 TextHeight];
HDtext3 = uicontrol('Parent', HDmainf, ...
'Style','text', ...
'Units','pixels', ...
'Position',labelPos, ...
'Horiz','left', ...
'String','Gamma:', ...
'Interruptible','off', ...
'BackgroundColor',[0.45 0.45 0.45], ...
'ForegroundColor','white');
textPos=[ButtPosX+0.5*ButtWidth ButtPosY ButtWidth*0.35 TextHeight];
stringVal=num2str(gamma);
HDedit3 = uicontrol('Parent', HDmainf, ...
'BusyAction','Queue','Interruptible','off',...
'Style','edit', ...
'Units','pixel', ...
'Position',textPos, ...
'Units','normal', ...
'Horiz','right', ...
'Background','white', ...
'Foreground','black', ...
'String',stringVal,'Value',gamma, ...
'UserData',gamma,...
'Enable','on',...
'callback',callbackStr);
% UICONTROL for kappa
ButtPosY = ButtPosY-ButtDist-ButtHeight;
labelPos=[ButtPosX+0.1*ButtWidth ButtPosY ButtWidth*0.5 TextHeight];
HDtext4 = uicontrol('Parent', HDmainf, ...
'Style','text', ...
'Units','pixels', ...
'Position',labelPos, ...
'Horiz','left', ...
'String','Kappa:', ...
'Interruptible','off', ...
'BackgroundColor',[0.45 0.45 0.45], ...
'ForegroundColor','white');
textPos=[ButtPosX+0.5*ButtWidth ButtPosY ButtWidth*0.35 TextHeight];
stringVal=num2str(kappa);
HDedit4 = uicontrol('Parent', HDmainf, ...
'BusyAction','Queue','Interruptible','off',...
'Style','edit', ...
'Units','pixel', ...
'Position',textPos, ...
'Units','normal', ...
'Horiz','right', ...
'Background','white', ...
'Foreground','black', ...
'String',stringVal,'Value',kappa, ...
'UserData',kappa,...
'Enable','on',...
'callback',callbackStr);
% UICONTROL for dmin
ButtPosY = ButtPosY-ButtDist-ButtHeight;
labelPos=[ButtPosX+0.1*ButtWidth ButtPosY ButtWidth*0.5 TextHeight];
HDtext5 = uicontrol('Parent', HDmainf, ...
'Style','text', ...
'Units','pixels', ...
'Position',labelPos, ...
'Horiz','left', ...
'String','Dmin:', ...
'Interruptible','off', ...
'BackgroundColor',[0.45 0.45 0.45], ...
'ForegroundColor','white');
textPos=[ButtPosX+0.5*ButtWidth ButtPosY ButtWidth*0.35 TextHeight];
stringVal=num2str(dmin);
HDedit5 = uicontrol('Parent', HDmainf, ...
'BusyAction','Queue','Interruptible','off',...
'Style','edit', ...
'Units','pixel', ...
'Position',textPos, ...
'Units','normal', ...
'Horiz','right', ...
'Background','white', ...
'Foreground','black', ...
'String',stringVal,'Value',dmin, ...
'UserData',dmin,...
'Enable','on',...
'callback',callbackStr);
% UICONTROL for dmax
ButtPosY = ButtPosY-ButtDist-ButtHeight;
labelPos=[ButtPosX+0.1*ButtWidth ButtPosY ButtWidth*0.5 TextHeight];
HDtext6 = uicontrol('Parent', HDmainf, ...
'Style','text', ...
'Units','pixels', ...
'Position',labelPos, ...
'Horiz','left', ...
'St
没有合适的资源?快使用搜索试试~ 我知道了~
资源详情
资源评论
资源推荐
收起资源包目录
snake.rar (36个子文件)
snake
BoundMirrorExpand.m 699B
snakeindex.m 190B
BoundMirrorShrink.m 488B
xconv2.m 913B
snakeinterp1.m 1KB
gaussianMask.m 255B
gaussianBlur.m 500B
snakedeform2.m 2KB
subf
closeapl.m 289B
muset.m 374B
CallBackHelpSlider.m 512B
iterset.m 420B
menu0.m 6KB
menu2.m 8KB
snakeset.m 704B
iterset2.m 387B
SnakeIter.m 8KB
sigmaset.m 392B
menu1.m 9KB
RadioUPDATE.m 905B
WriteHelp.m 2KB
menu3.m 25KB
caclVF.m 3KB
gradient2.m 2KB
dt.m 608B
snakeinterp.m 2KB
rawwrite.m 2KB
snakeinit.m 894B
snakedisp.m 551B
Contents.m 1KB
snakedeform.m 1KB
GVF.m 2KB
BoundMirrorEnsure.m 916B
rawread.m 3KB
GGVF.m 895B
imdisp.m 257B
共 36 条
- 1
局外狗
- 粉丝: 67
- 资源: 1万+
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于JavaScript和CSS的随寻订购网页设计源码 - web-order
- 基于MATLAB的声纹识别系统设计源码 - VoiceprintRecognition
- 基于Java的微服务插件集合设计源码 - wsy-plugins
- 基于Vue和微信小程序的监理日志系统设计源码 - supervisionLog
- 基于Java和LCN分布式事务框架的设计源码 - tx-lcn
- 基于Java和JavaScript的茶叶评级管理系统设计源码 - tea
- IMG_5680.JPG
- IMG_0437.jpg
- 基于Java的JAVA项目分析工具设计源码 - JAVAProjectAnalysis
- top888.json
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论1