📄 guisaliency.html
字号:
0592 <span class="comment">%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</span>0593 0594 <span class="comment">%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</span>0595 <span class="comment">% initializes plot windows</span>0596 <a name="_sub38" href="#_subfunctions" class="code">function initializeVisFigures(handles)</a>0597 visHandles = [handles.VisImg,handles.VisSM,handles.VisCM,<span class="keyword">...</span>0598 handles.VisShape,handles.VisLoc];0599 <span class="keyword">for</span> h = visHandles0600 visStrings = {<span class="string">'off'</span>,<span class="string">'on'</span>};0601 figH = figure;0602 vis = get(h,<span class="string">'Value'</span>)+1;0603 set(figH,<span class="string">'Name'</span>,[<span class="string">'STB: '</span> get(h,<span class="string">'String'</span>)],<span class="keyword">...</span>0604 <span class="string">'NumberTitle'</span>,<span class="string">'off'</span>,<span class="keyword">...</span>0605 <span class="string">'CloseRequestFcn'</span>,@<a href="#_sub40" class="code" title="subfunction VisFigureCloseCallback(hSrc,event)">VisFigureCloseCallback</a>,<span class="keyword">...</span>0606 <span class="string">'UserData'</span>,h,<span class="keyword">...</span>0607 <span class="string">'Visible'</span>,visStrings{vis});0608 set(h,<span class="string">'UserData'</span>,figH);0609 <span class="keyword">end</span>0610 0611 <span class="comment">%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</span>0612 <span class="comment">% delete the visualization figures, e.g. when the 'Quit' button is pressed</span>0613 <a name="_sub39" href="#_subfunctions" class="code">function cleanupVisFigures(handles)</a>0614 visHandles = [handles.VisImg,handles.VisSM,handles.VisCM,<span class="keyword">...</span>0615 handles.VisShape,handles.VisLoc];0616 <span class="keyword">for</span> h = visHandles0617 figH = get(h,<span class="string">'UserData'</span>);0618 delete(figH);0619 <span class="keyword">end</span>0620 <span class="keyword">return</span>;0621 0622 <span class="comment">%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</span>0623 <span class="comment">% callback function for closing figures - just make them invisible</span>0624 <a name="_sub40" href="#_subfunctions" class="code">function VisFigureCloseCallback(hSrc,event)</a>0625 hObject = get(hSrc,<span class="string">'UserData'</span>);0626 set(hObject,<span class="string">'Value'</span>,0);0627 set(hSrc,<span class="string">'Visible'</span>,<span class="string">'off'</span>);0628 0629 0630 <span class="comment">%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</span>0631 <span class="comment">% set the GUI controls and figure visibility</span>0632 <a name="_sub41" href="#_subfunctions" class="code">function setVisFigure(hObject,handles)</a>0633 enableStrings = {<span class="string">'off'</span>,<span class="string">'on'</span>};0634 figH = get(hObject,<span class="string">'UserData'</span>);0635 val = get(hObject,<span class="string">'Value'</span>)+1;0636 <span class="keyword">try</span>0637 set(figH,<span class="string">'Visible'</span>,enableStrings{val});0638 <span class="keyword">catch</span>0639 figH = figure;0640 set(figH,<span class="string">'Visible'</span>,enableStrings{val});0641 set(hObject,<span class="string">'UserData'</span>,figH);0642 <span class="keyword">end</span>0643 0644 0645 <span class="comment">% do the above for all visualization figures</span>0646 <a name="_sub42" href="#_subfunctions" class="code">function setAllVisFigures(handles)</a>0647 visHandles = [handles.VisImg,handles.VisSM,handles.VisCM,<span class="keyword">...</span>0648 handles.VisShape,handles.VisLoc];0649 <span class="keyword">for</span> h = visHandles0650 <a href="#_sub41" class="code" title="subfunction setVisFigure(hObject,handles)">setVisFigure</a>(h,handles);0651 <span class="keyword">end</span>0652 0653 0654 <span class="comment">%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</span>0655 <span class="comment">% update the 'image' visualization figure</span>0656 <a name="_sub43" href="#_subfunctions" class="code">function updateImg(handles)</a>0657 <span class="keyword">global</span> state img;0658 figH = get(handles.VisImg,<span class="string">'UserData'</span>);0659 <span class="keyword">if</span> strcmp(get(figH,<span class="string">'Visible'</span>),<span class="string">'on'</span>)0660 <span class="keyword">switch</span> state0661 <span class="keyword">case</span> {<span class="string">'ImageLoaded'</span>,<span class="string">'MapsComputed'</span>}0662 figure(figH);0663 <a href="displayImage.html" class="code" title="function displayImage(img,doNormalize)">displayImage</a>(img);0664 figure(handles.figure1);0665 <span class="keyword">otherwise</span>0666 <span class="comment">% do nothing</span>0667 <span class="keyword">end</span>0668 <span class="keyword">end</span>0669 0670 <span class="comment">%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</span>0671 <span class="comment">% update the 'saliency map' visualization figure</span>0672 <a name="_sub44" href="#_subfunctions" class="code">function updateSM(handles)</a>0673 <span class="keyword">global</span> state salMap wta img;0674 figH = get(handles.VisSM,<span class="string">'UserData'</span>);0675 <span class="keyword">if</span> strcmp(get(figH,<span class="string">'Visible'</span>),<span class="string">'on'</span>)0676 <span class="keyword">switch</span> state0677 <span class="keyword">case</span> <span class="string">'MapsComputed'</span>0678 figure(figH);0679 wtaMap = <a href="emptyMap.html" class="code" title="function map = emptyMap(mapSize,label)">emptyMap</a>(img.size(1:2),<span class="string">'Winner Take All'</span>);0680 wtaMap.data = imresize(wta.sm.V,img.size(1:2),<span class="string">'bilinear'</span>);0681 <a href="displayMaps.html" class="code" title="function displayMaps(maps,varargin)">displayMaps</a>([salMap,wtaMap],1);0682 figure(handles.figure1);0683 <span class="keyword">otherwise</span>0684 <span class="comment">% do nothing</span>0685 <span class="keyword">end</span>0686 <span class="keyword">end</span>0687 0688 0689 <span class="comment">%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</span>0690 <span class="comment">% update the 'conspicuity maps' visualization figure</span>0691 <a name="_sub45" href="#_subfunctions" class="code">function updateCM(handles)</a>0692 <span class="keyword">global</span> state salData;0693 figH = get(handles.VisCM,<span class="string">'UserData'</span>);0694 <span class="keyword">if</span> strcmp(get(figH,<span class="string">'Visible'</span>),<span class="string">'on'</span>)0695 <span class="keyword">switch</span> state0696 <span class="keyword">case</span> <span class="string">'MapsComputed'</span>0697 figure(figH);0698 <a href="displayMaps.html" class="code" title="function displayMaps(maps,varargin)">displayMaps</a>([salData(:).CM],1);0699 figure(handles.figure1);0700 <span class="keyword">otherwise</span>0701 <span class="comment">% do nothing</span>0702 <span class="keyword">end</span>0703 <span class="keyword">end</span>0704 0705 0706 <span class="comment">%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</span>0707 <span class="comment">% update the 'shape maps' visualization figure</span>0708 <a name="_sub46" href="#_subfunctions" class="code">function winLabel = updateShape(handles)</a>0709 <span class="keyword">global</span> state shapeData;0710 <span class="keyword">if</span> isempty(shapeData)0711 winLabel = <span class="string">''</span>;0712 <span class="keyword">else</span>0713 winLabel = [<span class="string">' - '</span> shapeData.winningMap.label];0714 figH = get(handles.VisShape,<span class="string">'UserData'</span>);0715 <span class="keyword">if</span> strcmp(get(figH,<span class="string">'Visible'</span>),<span class="string">'on'</span>)0716 <span class="keyword">switch</span> state0717 <span class="keyword">case</span> <span class="string">'MapsComputed'</span>0718 figure(figH);0719 <a href="displayMaps.html" class="code" title="function displayMaps(maps,varargin)">displayMaps</a>({shapeData.winningMap,shapeData.segmentedMap,<span class="keyword">...</span>0720 shapeData.binaryMap,shapeData.shapeMap});0721 figure(handles.figure1);0722 <span class="keyword">otherwise</span>0723 <span class="comment">% do nothing</span>0724 <span class="keyword">end</span>0725 <span class="keyword">end</span>0726 <span class="keyword">end</span>0727 0728 0729 <span class="comment">%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</span>0730 <span class="comment">% update the 'attended location' visualization figure</span>0731 <a name="_sub47" href="#_subfunctions" class="code">function updateLoc(handles)</a>0732 <span class="keyword">global</span> globalVars;0733 eval(globalVars);0734 figH = get(handles.VisLoc,<span class="string">'UserData'</span>);0735 <span class="keyword">if</span> strcmp(get(figH,<span class="string">'Visible'</span>),<span class="string">'on'</span>)0736 <span class="keyword">switch</span> state0737 <span class="keyword">case</span> <span class="string">'ImageLoaded'</span>0738 <a href="#_sub48" class="code" title="subfunction updateLocImg(handles)">updateLocImg</a>(handles);0739 <span class="keyword">case</span> <span class="string">'MapsComputed'</span>0740 figure(figH);0741 <a href="plotSalientLocation.html" class="code" title="function plotSalientLocation(winner,lastWinner,img,params,varargin)">plotSalientLocation</a>(winner,lastWinner,img,params,shapeData);0742 <span class="keyword">if</span> ~isempty(shapeData)0743 title([<span class="string">'shape from: '</span> shapeData.winningMap.label]);0744 <span class="keyword">end</span>0745 figure(handles.figure1);0746 <span class="keyword">otherwise</span>0747 <span class="comment">% do nothing</span>0748 <span class="keyword">end</span>0749 <span class="keyword">end</span>0750 0751 0752 <span class="comment">%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</span>0753 <span class="comment">% update the image in the 'attended location' visualiza
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -