菜单
  

    本系统的总体设计框架是按照数字图像处理技术所设计的各个方法来设计的,大的主菜单分为八个,在主菜单下有分别舍友若干个在菜单。总体框架图如下图5.1所示。

    图5.1    总体框架设计图
    5.2    用户界面设计
    用户界面是实现人机交互的最主要的平台,在本系统中,用户界面设计的整体实录是通过一个主窗口和其他的子窗口关联。在主窗口中,建立各种图像处理菜单,通过单击菜单去调用一个新的子窗口,在子窗口中实现相应的操作,如下图所示为主窗口界面。主窗口中包括文件、几何变换、正交变换、灰度变换、图像增强、图像分割、图像灰度、图像编码等九个主菜单。有的主菜单下面编有二级菜单和三级菜单,对应的便是实现每一个部分图像编辑的算法。
     
    图5.2   用户操作界面
    5.3    文件菜单详细设计
    5.3.1    新建画布
    由于本系统是一个图像处理系统,那么我就仿照photoshop创建了一个新建菜单,这个菜单用于实现新建一块画布,在画布中可以画图,然后可以选择将绘制的图像保存,在继续做下一步操作。运行结果如下图5.3所示。
     
    图5.3   新建画布
    新建画布代码如下:
    function newfile_Callback(hObject, eventdata, handles)
    set(0,'currentfigure',gui2); %保留当前界面,并跳转至新建绘图界面“gui2”
    Gui2部分相关代码如下:
    function figure1_WindowButtonDownFcn(hObject, eventdata, handles)
    global down pos;
    if strcmp(get(gcf,'SelectionType'),'normal')
        down=1;
        pos=get(handles.axes1,'CurrentPoint');
    end

    function figure1_WindowButtonUpFcn(hObject, eventdata, handles)
    global down pos;                  %设置全局变量
    down=0;

    % --- Executes on mouse motion over figure - except title and menu.
    function figure1_WindowButtonMotionFcn(hObject, eventdata, handles)
    global down pos;
    if down==1
        p=get(handles.axes1,'CurrentPoint');
        line([pos(1,1) p(1,1)],[pos(1,2) p(1,2)],'LineWidth',4);
        pos=p;
    end


    5.3.2    打开图像
    打开图像是用imread()函数读取提前放置于工作区内的图片,然后使用inshow()函数显示出来即可,操作结果如下图5.4所示。
     
    图5.4   打开图像
    打开图像的相关代码如下:
    function open_Callback(hObject, eventdata, handles)
    global name path
    [filename, pathname] = uigetfile({'*.jpg;*.bmp;*.tif;','MATLAB Files (*.bmp,*.tif,*.jpg)'}, 'Choose a File');
    f = imread( strcat(pathname,filename));
    path=pathname;
    name=filename;
    subplot(1,2,1);
    imshow(f);
    title('原图像','color','g','fontsize',14);
    5.3.3    保存图像
    保存我们的操作结果几乎在所有的软件中都可以看到,就是将结果保存到指定的路径下,方便我们查看和修改。
    运行结果如下图5.5所示
     
    图5.5   保存结果
    相关代码如下:
    function SaveResult_Callback(hObject, eventdata, handles)
    % hObject    handle to SaveResult (see GCBO)
    % eventdata  reserved - to be defined in a future version of MATLAB
    % handles    structure with handles and user data (see GUIDATA)
    [filename, pathname] = uiputfile({'*.bmp';'*.jpg';'*.jpeg'}, 'Pick an image-file');
  1. 上一篇:ASP.NET英语翻译课程教学网站设计
  2. 下一篇:基于ASP.NET的图书管理系统+流程图+ER图
  1. 基于MATLAB的图像增强算法设计

  2. jsp+sqlserver高校二手商品交...

  3. 基于Kinect的手势跟踪与识别算法设计

  4. JAVA基于安卓平台的医疗护工管理系统设计

  5. java+mysql设备监控记录的大...

  6. 基于核独立元分析的非线...

  7. 基于Hadoop的制造过程大数据存储平台构建

  8. java+mysql车辆管理系统的设计+源代码

  9. 大众媒体对公共政策制定的影响

  10. 中考体育项目与体育教学合理结合的研究

  11. 酸性水汽提装置总汽提塔设计+CAD图纸

  12. 杂拟谷盗体内共生菌沃尔...

  13. 十二层带中心支撑钢结构...

  14. 当代大学生慈善意识研究+文献综述

  15. 乳业同业并购式全产业链...

  16. 河岸冲刷和泥沙淤积的监测国内外研究现状

  17. 电站锅炉暖风器设计任务书

  

About

751论文网手机版...

主页:http://www.751com.cn

关闭返回