自己动手用C++写的图像处理软件 c++实现图像处理
yuyutoo 2024-10-13 00:30 6 浏览 0 评论
说到图像处理软件你会想到什么?Photoshop?CorelDRAW?美图秀秀?还是ACDSee的图像编辑模块?
说到实现数字图像处理算法,你又会想到什么?Matlab?OpenCV?
能不能自己动手用C++写一个小型的图像处理软件,实现一些图像处理算法,而不调用任何外部的包?这个可以有!
多年以前,甚至是主页君还在读书的时候,曾经尝试在VC++ 6.0中编写了最初版本的MagicHouse(一款小型的图像处理软件)。后来当我写了我的第一本图像处理算法书时,我用VC++ 2005更新了它。再后来很长一段时间了,它就一直被压箱底了。我也开始转战Matlab了,毕竟懒惰是推动人类创新的两大动力之一,谁让Matlab那么省时省力呢。但是我们又不得不承认:首先,Matlab相比于C++,在工业应用上其实非常有限。其次,它隐藏了太多的细节,你当然不必为内存管理而操心,也无需为图像文件编解码而犯愁,但一直用Matlab的总是有种“进口加组装”的山寨感。能不能来个“完全自力更生”呢?利用这几天闲暇时间,我在Visual Studio 2013中更新了我的MagicHouse软件。(听说Visual Studio 已经出了2015,Anyway 我想应该无伤大碍)。下面就简单介绍下MagicHouse软件所提供的基本功能。
先来看看GUI先——
纯C++,没有调用任何外部包,好处是一砖一瓦完全自我打造,坏处是我不能保证所有算法的效率都最优。目前该软件仍然只支持BMP和JPG两种格式(自己写编码函数的孩纸伤不起啊)。在浏览模式中程序提供了包括十种图片载入的方式:向下扫描、双重扫描、右侧飞入、双侧飞入、垂直百叶窗、水平百叶窗、垂直栅条、水平栅条、方格效果、落雨效果。下面是一些效果图——
下面是软件中实现了的部分图像处理算法演示:
图像的几何变换之旋转(双线性差值算法)→
图像的灰度变换之指数变换→
图像滤镜之马赛克化→
图像滤镜之水雾效果(复合方向)→
图像滤镜之彩色钢笔效果→
图像分析之种子填充算法→
正交变换之快速傅立叶变换→
正交变换之图像小波分解(二层)→
多区域轮廓跟踪算法→
图像分割之分水岭算法→
高级图像增强处理之保护纹理的降噪算法:基于PM方程的非线性扩散滤波→
高级图像增强处理之保护纹理的降噪算法:基于全变分的TV降噪算法→
图像加密算法之 基于Hilbert曲线的图像置乱加密(中图),以及基于Cat映射的图像置乱加密(右图)→
什么都看不到,要的就是这种效果:)
基于混沌图像融合的密图隐藏算法→
下面的左图是隐藏处理后的密图(注意为了让读者看清楚里面隐藏了一幅图像,我特意调整参数让它显现出来,事实上是可以做到完全隐藏的,那样图像就会和原模板图像看起来完全一致了)。右图是解密后复原的图像。
基于形态学方法的图像处理之彩色图像的膨胀→
以上列出的仅仅是软件中提供的部分功能,限于篇幅,这里就不逐一列出了,日后有时间我也会继续完善软件、实现更多有趣的算法。
特别说明:Magic House 基于VC++ 2005版的源代码可以从我的图书《数字图像处理:技术详解与Visual C++实践》的配套光盘中得到。样章试读:http://wenku.it168.com/d_001417193.shtml
VS 2013版还在调测中,现在暂时无法提供。(稍后我会提供试用版程序下载链接~)
- 上一篇:一种浮选泡沫视频图像自适应筛选方法
- 下一篇:功能连接梯度揭示的人类大脑皮层拓扑结构
相关推荐
- Python操作Word文档神器:python-docx库从入门到精通
-
Python操作Word文档神器:python-docx库从入门到精通动动小手,点击关注...
- Python 函数调用从入门到精通:超详细定义解析与实战指南 附案例
-
一、函数基础:定义与调用的核心逻辑定义:函数是将重复或相关的代码块封装成可复用的单元,通过函数名和参数实现特定功能。它是Python模块化编程的基础,能提高代码复用性和可读性。定义语法:...
- 等这么长时间Python背记手册终于来了,入门到精通(视频400集)
-
本文毫无套路!真诚分享!前言:无论是学习任何一门语言,基础知识一定要扎实,基础功非常的重要,找一个有丰富编程经验的老师或者师兄带着你会少走很多弯路,你的进步速度也会快很多,无论我们学习的目的是什么,...
- 图解Python编程:从入门到精通系列教程(附全套速查表)
-
引言本系列教程展开讲解Python编程语言,Python是一门开源免费、通用型的脚本编程语言,它上手简单,功能强大,它也是互联网最热门的编程语言之一。Python生态丰富,库(模块)极其丰富,这使...
- Python入门教程(非常详细)从零基础入门到精通,看完这一篇就够
-
本书是Python经典实例解析,采用基于实例的方法编写,每个实例都会解决具体的问题和难题。主要内容有:数字、字符串和元组,语句与语法,函数定义,列表、集、字典,用户输入和输出等内置数据结构,类和对象,...
- Python函数全解析:从入门到精通,一文搞定!
-
1.为什么要用函数?函数的作用:封装代码,提高复用性,减少重复,提高可读性。...
- Python中的单例模式:从入门到精通
-
Python中的单例模式:从入门到精通引言单例模式是一种常用的软件设计模式,它保证了一个类只有一个实例,并提供一个全局访问点。这种模式通常用于那些需要频繁创建和销毁的对象,比如日志对象、线程池、缓存等...
- 【Python王者归来】手把手教你,Python从入门到精通!
-
用800个程序实例、5万行代码手把手教你,Python从入门到精通!...
- Python从零基础入门到精通:一个月就够了
-
如果想从零基础到入门,能够全职学习(自学),那么一个月足够了。...
- Python 从入门到精通:一个月就够了
-
要知道,一个月是一段很长的时间。如果每天坚持用6-7小时来做一件事,你会有意想不到的收获。作为初学者,第一个月的月目标应该是这样的:熟悉基本概念(变量,条件,列表,循环,函数)练习超过30个编...
- Python零基础到精通,这8个入门技巧让你少走弯路,7天速通编程!
-
Python学习就像玩积木,从最基础的块开始,一步步搭建出复杂的作品。我记得刚开始学Python时也是一头雾水,走了不少弯路。现在回头看,其实掌握几个核心概念,就能快速入门这门编程语言。来聊聊怎么用最...
- 神仙级python入门教程(非常详细),从0到精通,从看这篇开始!
-
python入门虽然简单,很多新手依然卡在基础安装阶段,大部分教程对一些基础内容都是一带而过,好多新手朋友,对一些基础知识常常一知半解,需要在网上查询很久。...
- Python类从入门到精通,一篇就够!
-
一、Python类是什么?大家在生活中应该都见过汽车吧,每一辆真实存在、能在路上跑的汽车,都可以看作是一个“对象”。那这些汽车是怎么生产出来的呢?其实,在生产之前,汽车公司都会先设计一个详细的蓝图...
- 学习Python从入门到精通:30天足够了,这才是python基础的天花板
-
当年2w买的全套python教程用不着了,现在送给有缘人,不要钱,一个月教你从入门到精通1、本套视频共487集,本套视频共分4季...
- 30天Python 入门到精通(3天学会python)
-
以下是一个为期30天的Python入门到精通学习课程,专为零基础新手设计。课程从基础语法开始,逐步深入到面向对象编程、数据处理,最后实现运行简单的大语言模型(如基于HuggingFace...
你 发表评论:
欢迎- 一周热门
- 最近发表
- 标签列表
-
- mybatis plus (70)
- scheduledtask (71)
- css滚动条 (60)
- java学生成绩管理系统 (59)
- 结构体数组 (69)
- databasemetadata (64)
- javastatic (68)
- jsp实用教程 (53)
- fontawesome (57)
- widget开发 (57)
- vb net教程 (62)
- hibernate 教程 (63)
- case语句 (57)
- svn连接 (74)
- directoryindex (69)
- session timeout (58)
- textbox换行 (67)
- extension_dir (64)
- linearlayout (58)
- vba高级教程 (75)
- iframe用法 (58)
- sqlparameter (59)
- trim函数 (59)
- flex布局 (63)
- contextloaderlistener (56)