07年写的,直方图 matlab gui

来源:互联网 发布:七秀成女捏脸数据网盘 编辑:程序博客网 时间:2024/04/26 07:15

 clear
  
  h1=figure( ...
    'menu','none',...
   'color',[0.4,0.8,0.95],...
   'position',[103.8 50.923 800.2 700.538],...
   'Name',' 广西工学院信息与计算科学系', ...
   'NumberTitle','off', 'HandleVisibility', 'on', ...
   'Visible','on', 'Resize', 'off',...
   'BusyAction','Queue','Interruptible','off',...
   'IntegerHandle', 'off', ...
   'Doublebuffer', 'on', ...
   'Colormap', gray(256));
h3 = axes( ...
   'units', 'pixels', ...
   'BusyAction','Queue','Interruptible','off',...
   'ydir', 'reverse', ...
   'XLim', [.5 256.5], ...
   'YLim', [.5 256.5],...
   'CLim', [0 1], ...
   'XTick',[],'YTick',[], ...
   'Position', [300 394 250 250]);
title('原来图像');

blank = repmat(uint8(0),128,128);
h4 = image('Parent', h3,...
   'CData', blank, ...
   'BusyAction','Queue','Interruptible','off',...
   'CDataMapping', 'scaled', ...
   'Xdata', [1 256],...
   'Ydata', [1 256],...
   'EraseMode', 'none');

h5 = axes( ...
   'units', 'pixels', ...
   'BusyAction','Queue','Interruptible','off',...
   'ydir', 'reverse', ...
   'XLim', [.5 256.5], ...
   'YLim', [.5 256.5],...
   'CLim', [0 1], ...
   'XTick',[],'YTick',[], ...
   'Position', [300 100 250 250]);
   title('DCT变换图像');


h6 = image('Parent', h5,...
   'CData', blank, ...
   'BusyAction','Queue','Interruptible','off',...
   'CDataMapping', 'scaled', ...
   'Xdata', [1 256],...
   'Ydata', [1 256],...
   'EraseMode', 'none');

%--------------------------------------------

%-----------------------------------------------
%处理后图像显示坐标
%----------------------------------

%'Saturn|Pepper|Pout|Trees|Quarter|Circuit'

%--------------------------------------------
   load imdemos saturn
    img_0=saturn;
   img2_0= double(img_0)/256;
   img1_0= double(img_0)/8;
   J_0=dct2(img1_0);
   m_0=log(abs(J_0));
p0=uicontrol( ...
   'BusyAction','Queue','Interruptible','off',...
   'Style','pushbutton', ...
   'Units','normalized', ...
   'Position',[0.049 0.870 0.131 0.054], ...
   'String','Saturn', ...
   'Enable', 'on',...
   'callback',[...
   'set(h4,''CData'',img2_0);',...
   'hist(img2_0)']);
%------------------------------------------------------
%'Saturn|Pepper|Pout|Trees|Quarter|Circuit'

%--------------------------------------------
  load imdemos pepper
   img_1=pepper;
   img2_1= double(img_1)/256;
   img1_1= double(img_1)/8;
   J_1=dct2(img1_1);
   m_1=log(abs(J_1));
p1=uicontrol( ...
   'BusyAction','Queue','Interruptible','off',...
   'Style','pushbutton', ...
   'Units','normalized', ...
   'Position',[0.049 0.770 0.131 0.054], ...
   'String','Pepper', ...
   'Enable', 'on',...
   'callback',[...
   'set(h4,''CData'',img2_1);',...
   'imhist(img2_1)']);
%------------------------------------------------------
%'Saturn|Pepper|Pout|Trees|Quarter|Circuit'

%--------------------------------------------
  load imdemos pout
   img_2=pout;
   img2_2= double(img_2)/256;
   img1_2= double(img_2)/8;
   J_2=dct2(img1_2);
   m_2=log(abs(J_2));
p2=uicontrol( ...
   'BusyAction','Queue','Interruptible','off',...
   'Style','pushbutton', ...
   'Units','normalized', ...
   'Position',[0.049 0.670 0.131 0.054], ...
   'String','Pout', ...
   'Enable', 'on',...
   'callback',[...
   'set(h4,''CData'',img2_2);',...
   'imhist(img2_2)']);
%------------------------------------------------------
%'Saturn|Pepper|Pout|Trees|Quarter|Circuit'

%--------------------------------------------
  load imdemos trees
   img_3=trees;
   img2_3= double(img_3)/256;
   img1_3= double(img_3)/8;
   J_3=dct2(img1_3);
   m_3=log(abs(J_3));
p3=uicontrol( ...
   'BusyAction','Queue','Interruptible','off',...
   'Style','pushbutton', ...
   'Units','normalized', ...
   'Position',[0.049 0.570 0.131 0.054], ...
   'String','Trees', ...
   'Enable', 'on',...
   'callback',[...
   'set(h4,''CData'',img2_3);',...
   'imhist(img2_3)']);
%------------------------------------------------------
%'Saturn|Pepper|Pout|Trees|Quarter|Circuit'

%--------------------------------------------
  load imdemos quarter
   img_4=quarter;
   img2_4= double(img_4)/256;
   img1_4= double(img_4)/8;
   J_4=dct2(img1_4);
   m_4=log(abs(J_4));
p4=uicontrol( ...
   'BusyAction','Queue','Interruptible','off',...
   'Style','pushbutton', ...
   'Units','normalized', ...
   'Position',[0.049 0.470 0.131 0.054], ...
   'String','Quarter', ...
   'Enable', 'on',...
   'callback',[...
   'set(h4,''CData'',img2_4);',...
   'imhist(img2_4)']);
%------------------------------------------------------
%'Saturn|Pepper|Pout|Trees|Quarter|Circuit'

%--------------------------------------------
  load imdemos circuit
   img_5=circuit;
   img2_5= double(img_5)/256;
   img1_5= double(img_5)/8;
   J_5=dct2(img1_5);
   m_5=log(abs(J_5));
p5=uicontrol( ...
   'BusyAction','Queue','Interruptible','off',...
   'Style','pushbutton', ...
   'Units','normalized', ...
   'Position',[0.049 0.370 0.131 0.054], ...
   'String','Quarter', ...
   'Enable', 'on',...
   'callback',[...
   'set(h4,''CData'',img2_5);',...
   'imhist(img2_5)']);
%------------------------------------------------------
p5=uicontrol( ...
   'BusyAction','Queue','Interruptible','off',...
   'Style','pushbutton', ...
   'Units','normalized', ...
   'Position',[0.049 0.270 0.131 0.054], ...
   'String','清空', ...
   'Enable', 'on',...
   'callback',[...
  'set(h4,''CData'',blank);',...
   'set(h6,''CData'',blank);']);
%-----------------------------------------------
Hn=uicontrol( ...
   'BusyAction','Queue','Interruptible','off',...
   'Style','pushbutton', ...
   'Units','normalized', ...
   'Position',[0.749 0.010 0.131 0.054], ...
   'String','close', ...
   'Enable', 'on',...
   'callback','close');