功能介绍
last operation(上一次操作):
Current Bitmap File(当前打开的BMP文件):
1、对BMP文件的读取
2、输出该BMP文件的信息
3、保存当前BMP到指定文件名
4、显示该BMP图像
5、将当前BMP图像水平镜像
6、将当前BMP图像垂直镜像
7、将当前BMP图像马赛克模糊处理
8、将当前BMP图像二值化处理
9、退出程序
这里是已经做好的程序:文件下载 https://download.csdn.net/download/qq_43644205/11286447
分步讲解
1、BMP文件读取
这里按照bmp的文件格式,依次将bmp文件的文件头、位图信息头、图像数据以及颜色信息从文件里读出来
2、输出BMP图像的信息
如图所示,将第一步读到的BMP文件信息从程序中输出出来
3、保存当前BMP到指定文件名
vs没法长截图真的心累 ,同理,想要输出一个新的BMP图像,就相当于是要自己做一个BMP文件出来,只需要按照BMP文件的格式,依次准备好文件头、位图信息头、图像数据和颜色信息,并将自己想要保存的数据存进去即可。
4、显示该BMP图像
5、将当前BMP图像水平镜像
像坐标轴一样,将BMP图像每个点都标上一个位置(x,y),这样保持y轴不变,交换x轴上的数据,就完成了BMP图像的水平镜像
6、将当前BMP图像垂直镜像
垂直镜像和水平镜像原理相同,保持x轴数据不变,交换y轴,就能完成垂直镜像
7、将当前BMP图像马赛克模糊处理
马赛克的基本原理用一张图来解释,就是
将一幅图分为若干个像素数据,按3X3(或者5X5或者按自己的意愿)分为若干组,取其中的中位数(也有取最小值或者最大值或者平均数的,实现的效果基本相同),重新对这九个小块赋值,这样就实现了图片的模糊处理
8、将当前BMP图像二值化处理
灰度二值化处理是模式识别、机器学习等,在人脸识别等方面对图片处理的常见操作,可以减少图片的不稳定性,便于之后计算机对图片的处理,目前灰度二值化处理几乎是每种图片处理都必不可少的操作。
项目完成
到这里,BMP图像处理的主要操作就完成了,后面只需要再完善完善一些外部函数,补充好全局变量,各种参数设置,设计main函数的格式即可