`
javasogo
  • 浏览: 1816014 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

图像亮度、对比度调节

阅读更多
  1. #include"cv.h"
  2. #include"highgui.h"
  3. #include<stdio.h>
  4. intImageAdjust(IplImage*src,IplImage*dst,
  5. doublelow,doublehigh,//xdirection
  6. doublebottom,doubletop,//ydirection
  7. doublegamma);
  8. intmain(void)
  9. {
  10. char*filename="lena.jpg";
  11. IplImage*dst,*src=/blog.armyourlife.info/cvLoadImage(filename,0);
  12. if(!src)
  13. {
  14. printf("Couldn'tseemtoOpen%s,sorry\n",filename);
  15. return-1;
  16. }
  17. cvNamedWindow("src",1);
  18. cvNamedWindow("result",1);
  19. //Imageadjust
  20. dst=cvCloneImage(src);
  21. //输入参数[0,0.5]和[0.5,1],gamma=1
  22. if(ImageAdjust(src,dst,0,0.5,0.5,1,1)!=0)
  23. return-1;
  24. cvShowImage("src",src);
  25. cvShowImage("result",dst);
  26. cvWaitKey(0);
  27. cvDestroyWindow("src");
  28. cvDestroyWindow("result");
  29. cvReleaseImage(&src);
  30. cvReleaseImage(&dst);
  31. return0;
  32. }
  33. intImageAdjust(IplImage*src,IplImage*dst,
  34. doublelow,doublehigh,//X方向:lowandhigharetheintensitiesofsrc
  35. doublebottom,doubletop,//Y方向:mappedtobottomandtopofdst
  36. doublegamma)
  37. {
  38. doublelow2=low*255;
  39. doublehigh2=high*255;
  40. doublebottom2=bottom*255;
  41. doubletop2=top*255;
  42. doubleerr_in=high2-low2;
  43. doubleerr_out=top2-bottom2;
  44. intx,y;
  45. doubleval;
  46. if(low<0&&low>1&&high<0&&high>1&&
  47. bottom<0&&bottom>1&&top<0&&top>1&&low>high)
  48. return-1;
  49. //intensitytransform
  50. for(y=0;y<src->height;y++)
  51. {
  52. for(x=0;x<src->width;x++)
  53. {
  54. val=((uchar*)(src->imageData+src->widthStep*y))[x];
  55. val=pow((val-low2)/err_in,gamma)*err_out+bottom2;
  56. if(val>255)
  57. val=255;
  58. if(val<0)
  59. val=0;//Makesuresrcisintherange[low,high]
  60. ((uchar*)(dst->imageData+dst->widthStep*y))[x]=(uchar)val;
  61. }
  62. }
  63. return0;
  64. }
分享到:
评论

相关推荐

    屏幕亮度对比度色彩调节器 绿色中文版

    对比度调节是另一关键特性,它影响着屏幕上图像的明暗差异。高对比度可以使图像的细节更加鲜明,而低对比度可能会使图像显得模糊。对于文字阅读、图片查看或观看视频,合适的对比度设置都能显著提升用户体验。此软件...

    Qt+OpenGL 实现色温、色调、亮度、对比度、饱和度、高光

    Qt+OpenGL 实现色温、色调、亮度、对比度、饱和度、高光Qt+OpenGL 实现色温、色调、亮度、对比度、饱和度、高光Qt+OpenGL 实现色温、色调、亮度、对比度、饱和度、高光Qt+OpenGL 实现色温、色调、亮度、对比度、饱和...

    屏幕对比亮度色彩调节器

    屏幕对比亮度色彩调节器是一款专为用户解决显示器显示问题的小型软件,尤其适用于那些使用时间较长,出现亮度、对比度和色彩偏差的老式电脑。在日常使用中,显示器的显示效果直接影响到我们的视觉体验和工作效率,...

    opencv 实现 Photoshop 亮度 对比度 调节功能

    总结来说,这个项目通过OpenCV实现了Photoshop中的亮度和对比度调节,通过`cv2.addWeighted()`函数提供了灵活的图像调整方式,使得开发者能够轻松地对图像进行基本的视觉优化。通过阅读和理解提供的代码,你可以深入...

    显示器亮度对比度调节软件Gamma Panel 1[1].0中文绿色单文件版

    Gamma Panel 1.0 是一款专为用户设计的中文绿色单文件版显示器亮度对比度调节软件,它可以帮助用户根据个人需求和环境光线条件,精确调整屏幕显示效果,从而提供更加舒适的观看体验。 首先,我们要了解亮度和对比度...

    LabVIEW图像亮度、对比度和高低灰度级压缩实践

    项目请参见:https://handsome-man.blog.csdn.net/article/details/116572729 通过使用IMAQ BCGLookup对图像进行亮度、对比度和高低灰度级压缩的例子理解图像灰度变换的应用方法。 项目可直接运行~

    LCD亮度对比度调节软件

    LCD亮度对比度调节软件是一种专为液晶显示器设计的实用工具,旨在帮助用户精确调整屏幕的亮度和对比度,以获得最佳的视觉体验。在日常使用电脑时,由于环境光线变化、个人视力差异或液晶屏自身特性,有时需要对...

    桌面调节亮度对比度

    "桌面调节亮度对比度"的功能为此提供了便利,它允许用户像调节音量那样直接在桌面上进行设置,无需进入复杂的系统设置菜单或第三方软件。 亮度是屏幕显示图像的明亮程度,而对比度则是屏幕上最亮部分与最暗部分之间...

    Gammaset(显示器亮度对比度调节)

    在IT领域,显示器的设置是用户体验中的重要环节,特别是对于长时间使用电脑的用户而言,适当的亮度和对比度调节至关重要。"Gammaset"是一个专门用于调整显示器亮度和对比度的工具,尤其适用于笔记本电脑或者那些调节...

    灰度、对比度、亮度、饱和度基本图像处理源码

    在图像处理领域,灰度、对比度、亮度和饱和度是四个非常基础且重要的概念,它们直接影响着图像的视觉效果。下面将详细解释这些概念及其在实际应用中的处理方法。 1. **灰度**:灰度图像是一种无彩色图像,其中每个...

    电脑屏幕亮度调节 对比度 灰度调节

    在电脑使用过程中,屏幕亮度、对比度和灰度的调节是非常重要的环节,它们直接影响到我们的视觉体验和工作效率。本文将详细讲解如何进行这些设置,并提供一个实用的工具——"ha_gapa10.exe",来帮助您更方便地调整...

    [opencv] 012 简单图像混合+对比度与亮度调节

    然后,对于图像的亮度和对比度调节,OpenCV提供了一种通用的方法,即通过修改图像的直方图来实现。对比度调整可以使用`addWeighted()`函数,它可以改变图像的灰度级分布。例如,如果我们想增加图像的对比度,可以...

    基于OpenCV的图像处理系统python实现源码+UI界面+项目说明文档(课程设计、整合常用图像处理方法和技术).zip

    亮度对比度调节 调整图像的亮度和对比度 几何变换 对图像放大、缩小、旋转、翻转 灰度变换 图像灰度化、图像反转、图像二值化 直方图处理 直方图均衡化和直方图规定化,以及直方图的绘制 加性噪声 高斯噪声、...

    adjust image 对比度亮度8.py(图像对比度调节代码)

    python-OpenCV图像处理,图像对比度调节源代码。

    VB图像调速锐化、对比度、亮度等特效处理程序

    在VB(Visual Basic)编程环境中,我们可以利用GDI+(Graphics Device Interface Plus)库来实现图像的调速、锐化、对比度增强以及亮度调整等特效处理。GDI+是.NET Framework的一部分,提供了丰富的图形绘制和图像...

    基于fpga的对比度&亮度调整代码-Verilog版本

    代码是基于Verilog版本的对比度&亮度调整,使用的是Photoshop算法,压缩包里面包括核心算法以及simulation仿真代码部分,需要将图片转换成rgbin.txt格式,点击仿真即可,仿真结束工程会自动生成rgbout.txt格式,使用...

    调节图像的亮度算法VC6.0++

    本文将详细探讨如何使用VC6.0++(Visual C++ 6.0)进行图像亮度和对比度的调节,并涉及相关的编程技术。 首先,我们需要了解亮度和对比度的基本概念。亮度是指图像的整体明暗程度,而对比度则是指图像中最亮部分与...

    图像灰度亮度对比度.docx

    "图像灰度亮度对比度" 本文主要介绍了图像灰度、亮度、对比度的调整处理技术,使用 C++ Builder 实现图像的灰度变换和对比度、亮度调节。图像灰度变换处理是图像增强处理技术中一种非常基础的空间域图像处理方法,...

Global site tag (gtag.js) - Google Analytics