基于opencv对图像的预处理

基于opencv对图像的预处理

ID:31217176

大小:266.51 KB

页数:11页

时间:2019-01-07

基于opencv对图像的预处理_第1页
基于opencv对图像的预处理_第2页
基于opencv对图像的预处理_第3页
基于opencv对图像的预处理_第4页
基于opencv对图像的预处理_第5页
资源描述:

《基于opencv对图像的预处理》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、基于opencv对图像的预处理1•问题描述木次设计是基于opencv结合C++语言实现的对图像的预处理,opencv是用于开发实吋的图像处理、计算机视觉及模式识别程序;其屮图像的预处理也就是利用opencv对图像进行简单的编辑操作;例如对图像的对比度、亮度、饱和度进行调节,同吋还可以对图像进行缩放和旋转,这些都是图像预处理简单的处理方法;首先通过opencv加载一幅原型图像,显示出来;设置五个滑动控制按钮,当拖动按钮时,对比度、亮度、饱和度的人小也会随之改变,也可以通过同样的方式调节缩放的比例和旋转的角度,来控制图像,对图像进行处理,显示出符合调节要求的图像,进行对比观察他们的之间的变化。2.

2、模块划分此次设计的模块分为五个模块,滑动控制模块、对比度和亮度调节模块、饱和度调节模块、缩放调节模块、旋转调节模块,他们Z间的关系如卜•所示:图一、各个模块关系图滑动控制模块处于主函数Z屮,是整个设计的核心部分,通过createTrackbar创建五个滑动控制按钮并口调用毎个模块实现对图像相应的调节。2.算法设计(1)滑动控制:滑动控制是整个设计的核心部分,通过创建滑动控制按钮调节人小來改变相应的数据,进行调用函数实现对图像的编辑,滑动控制是利用createTrackbar(),函数屮包括了滑动控制的名称,滑动控制显示在什么窗口上,滑动变量的地址和它调节的最大范围,以及每个控制按钮应该调用什么

3、函数实现什么功能;(2)对比度和亮度的调节:对比度和亮度的调节的原理是依照线性理论,它的公式如下所示:g(x)=a*f(x)+b,其中f(x)表示源图像的像索,g(x)表示输出图像的像索,参数a(需要满足a>0)被称为增益(gain),常常被用来控制图像的对比度,参数b通常被称为偏置(bias),常常被用来控制图像的亮度;(3)饱和度的调节:饱和度调节利用cvCvtColor(srjimage,dstimage,CVBGR2HSV)将RGB颜色空间转换为HSV颜色空间,其屮“H=Hue”表示色调,“S=Saturation”表示饱和度,“V=Valuc”表示纯度;所以饱和度的调节只需要调节S的

4、犬小,H和V的值不需要做任何的改变;(4)旋转的调节:旋转是以某参考点为圆心,将图像的个点(x,y)围绕圆心转动一个逆吋针角度B,变为新的坐标(xl,yl),xl=rcos(a+0),yl=rsin(a+0),其中i•是图像的极径,a是图像与水平的坐标的角度的大小;(5)缩放的调节:首先得到源图像的宽度x和高度y,变换后新的图像的宽度和高度分别为xl和yl,xl=x*f,yl=y*f,其中f是缩放因子;4•函数功能描述(1)主函数main()用来设置滑动控制按钮,当鼠标拖动按钮可以得到相应的数据大小,实现手动控制的功能,当鼠标拖动对比度和亮度调节是,主函数调用对比度和亮度调节函数,类似这样分别

5、对每个功能模块实现调用;(2)对比度和亮度调节函数ContrastAndBright(),当鼠标拖动对比度和亮度时将对比度和亮度的值传递给ContrastAndBright(),实现对图片的对比度和亮度的控制,并创建一个对比度和亮度显示窗口,将图像显示出來;(3)饱和度调节函数Statiate(),当鼠标拖动饱和度控制条将值从0〜512时,饱和度的值就会传递给Statiate(),图像的饱和度就会随控制条变化而变化,将变化后图像显示在饱和度窗口上;(4)旋转函数Rotate(),旋转的角度变化范围是0〜360,在Rotate。中创建一个旋转图像显示窗口,当拖动鼠标改变旋转角度的变化,图像也会发

6、牛旋转;(5)缩放函数Zoom(),缩放的范围是0〜2,当缩放因为小于1时表示图像的缩小,当缩放因子大于1时,表示图像的放大,将缩放的图像显示在创建的缩放图像的窗口上;5•详细设计整个设计函数之间叫的关系如£所想图二、函数关系图利用include加载整个程序需要的库函数;定义相应的字符串变量、整形变量和指针变量并给他们赋初值;以下是整个设计中函数设计和运行的结果:(1)main()利用imread和cvLoadlmage从文件夹中加载图像,运用if判断语句看是否读入图像成功,如过读入图像没有成功,则退出程序,如果读入图像成功则利用nameWindow创建并命名为原始图、滑动控制和对比度和亮度窗

7、口,然后将图像显示在特定的窗口上,执行滑动控制函数createTrackbar();主函数得到原始图如下所示:(2)createTrackbar()其中括号的包括的内容为(conststring&trackbamame,conststring&winname,int*value,intcount,TrackbarCallbackonChange=0,);第一个参数,conststring&类型的t

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。