简介

本文介绍了基于OpenCV图像处理库的MFC框架下的图像处理程序构建方法。

本项目依赖OpenCV库4.1.0版本,构建和编译由VS2017完成。

程序目录

simPS2.h/simPS2.cpp 定义了应用程序类class CsimPS2App,并且创建了应用程序对象 CsimPS2App theApp;应用程序类在实例化后会进一步初始化,即调用CsimPS2App::InitInstance()方法,可以在该方法内添加应用程序的初始化设置,在该方法内创建了应用程序的主窗口,CMainFrame* pMainFrame = new CMainFrame;

MainFrm.h/MainFrm.cpp 定义了应用程序的主窗口;

simPS2Doc.h/simPS2Doc.cpp和simPS2View.h/simPS2View.cpp 分别定义了文档类和视图类,用于操作数据和显示数据;

myproc.h/myproc.cpp 中定义了用户的自定义图像处理算法,也是在这里调用了OpenCV的图像处理库;

AdjBrightness.h/AdjBrightness.cpp 是用户操作调节图像亮度的交互窗口 ;

CAdjContrast.h/CAdjContrast.cpp 是用户操作调节图像对比度的交互窗口;

软件界面

包含菜单、快捷、新建图像子窗口

文件 已实现功能 :新建、打开、关闭、保存、另存为

打开 可以打开jpg, png,txt或者自己添加其他格式的图像(可使用opencv打开图像的功能,或者自己编写打开各种文件的方法)

实现了滚动条浏览大图像

图像处理 通过添加opencv处理图像的一些功能,比如掩模,转灰度,缩放图像,各种滤波等等,或者自己实现各种功能

缩放图像 通过输入调整比例进行调整,可限制长宽比

掩模(锐化边缘)

打开多个文档

总结

利用OpenCV结合MFC多文档视图实现了基本的具有图像处理功能的软件框架,可以在其基础上继续添加其他图像处理功能,订制特定功能的图像处理软件。

源码获取

链接:https://pan.baidu.com/s/1r6V_cxDqew3OffQ9Yhsfqg?pwd=1rty 
提取码:1rty

OpenCV+MFC文档视图结构 构建简易PS图像处理软件相关推荐

  1. C++--深入分析MFC文档视图结构(项目实践)

    1 必备基础知识概述 1.1 MFC 文档视图结构程序结构总揽 当我们使用 MFC AppWizard 生成一个 MFC 程序,选用所有默认的设置(当然也是 Multiple Documents ,本 ...

  2. 深入分析MFC文档视图结构(项目实践)

    文档视图结构(Document/View Architecture)是MFC的精髓,也是Observer模式的具体实现框架之一,Document/View Architecture通过将数据和其表示分 ...

  3. MFC文档/视图结构体系及SDI回顾(2)

    1.牢骚发在最前面 三件事情杂糅到了一起弄得我彻夜未眠. 香港大学的Offer不小心丢在了垃圾邮箱里,却阴差阳错的来了清华.平台是一方面,当时谈好的港府奖学金也就此泡汤,这笔钱是我急需的. 惊闻噩耗, ...

  4. 文档视图结构下多视图间的控制

    程序结构: 创建了一个基于CFormView的MFC文档视图结构的程序,并用CSplitterWnd将窗口分割为2列,左边显示默认创建CFormView视图,右边是CHtmlView视图. 在CFor ...

  5. 玩转MFC文档视图架构编程1——深入浅出MFC文档/视图架构之基本概念深入浅出MFC文档/视图架构之文档

    原创地址: 深入浅出MFC文档/视图架构之基本概念 http://iis.xrtvu.com/Tech/ShowArticle.asp?ArticleID=276 深入浅出MFC文档/视图架构之文档模 ...

  6. MFC让文档/视图结构程序支持滚动条

    MFC让文档/视图结构程序支持滚动条 2009-06-30 09:26要通过滚动条显示文档,还必须知道文档滚动到了什么位置:一旦用户拖动滚动条时要告诉视图改变在文档中 的位置.所有这些,由MFC的CS ...

  7. MFC之文档/视图结构应用程序

    文档/视图结构应用程序 一.文档/视图结构分析 MFC 通过多个类提供了对程序框架的支持,使用这些类可以简单地实现文档/视图结构:其中主要包括以下五个类: 应用程序类(CWinAPP):是 MFC 程 ...

  8. 视图切换—多模板文档视图结构的应用

    转自:http://www.winu.cn/htmls/208/065/ 一.概述 ①在一个MDI程序中,需要使用到不同类型的子窗口,而每种类型窗口有可能有很多个,对应不同的数据. 这时,可以使用多模 ...

  9. 深入浅出MFC文档/视图架构之文档模板

    在"文档/视图"架构的MFC程序中,提供了文档模板管理者类CDocManager,由它管理应用程序所包含的文档模板.我们先看看这个类的声明: / // CDocTemplate m ...

最新文章

  1. 自定义MyHttpServletRequest解决过滤器拦截@RequestBody整体JSON请求问题
  2. 深度解析JAVA动态代理设计模式
  3. Android Studio通过JNI调用NDK程序
  4. 《众妙之门——自由网站设计师成功之道》一1.4 自由网站设计师犯的严重错误...
  5. python2.7 + numpy-1.6.1 + matplotlib-1.1.0
  6. object-c 运行时显示view没有设置outlet的错误
  7. 大牛带你直击优秀开源框架灵魂,给大家安排上!
  8. 前端学习(1918)vue之电商管理系统电商系统之渲染权限列表的数据
  9. android触屏设备event模拟,android 使用命令模拟点击 滑动
  10. AcWing 1960. 闪烁(状态压缩+枚举)
  11. WCF分布式开发常见错误解决(1):添加服务引用出错
  12. IDEA提示“Spring Configuration Check“ “Unmapped Spring configuration files found.“
  13. 分类刷题:A1008乘电梯
  14. Apache POI + Office Word 生成页码
  15. 四款职场效率神器,飞速提高你的工作效率
  16. matlab怎么建立一元线性回归方程,请问用MATLAB做一元非线性回归拟合,怎么做显著性检验呢?...
  17. FPGA:三种基本门电路设计(与门、或门、非门)
  18. gitlab合并分支
  19. vue3跨组件传值(爷孙组件传值)
  20. 技术分享 | Goby食用指南之红蓝对抗

热门文章

  1. 部分IE下bug解决方法和兼容IE,FF方法
  2. 从耳鸣的声音来判断耳鸣的类型
  3. SSR+BBR安装记录
  4. 对象和字符串之间的相互转换
  5. 论文绘图——标量图篇
  6. 浅谈等保2.0标准下医院信息化安全问题研究及对策
  7. 2021年安全生产监管人员模拟考试及安全生产监管人员模拟考试题库
  8. mysql 增大连接数_MYSQL最大连接数设置
  9. 手把手教你在VMware16.0上安装ubuntu20.04(虚拟机安装Ubuntu系统))
  10. 爱回收第二季度财报:营收18.677亿元,净亏损5亿元