.OpenCV创建进度条以及图像对比度,亮度调整

1.创建轨迹条createTrackbar()

函数原型C++: intcreateTrackbar(conststring& trackbarname, conststring& winname,  int* value, int count,

TrackbarCallbackonChange=0,void* userdata=0);

变量说明:依次为【进度条名称】,【所添加到的窗口名称】,【整形指针,表征进度条当前位置,并且在创建进度条时,滑块的初始值为该指针的当前值】,【滑块的最大值,最小值恒定为0】,【回调函数】,【用户数据】。

第五个参数,TrackbarCallback类型的onChange,默认值0。这是一个指向回调函数的指针,每次滑块位置改变时,这个函数都会进行回调。并且回调函数的原型必须为void func(int,void*);其中第一个参数是轨迹条的位置(int型变量),第二个参数是用户数据(看下面的第六个参数)。如果回调是NULL指针,表示没有回调函数的调用,仅第三个参数value有变化。

第六个参数,void*类型的userdata,他也有默认值0。这个参数是用户传给回调函数的数据,用来处理轨迹条事件。如果使用的第三个参数value实参是全局变量的话,完全可以不去管这个userdata参数。

 

2. 获得轨迹条当前位置getTrackbarPos()

C++: intgetTrackbarPos(conststring& trackbarname, conststring& winname);

        变量说明:变量依次为轨迹条名称,轨迹条所处的窗口名称

3.关于图片中像素的访问

       3.1访问图片image像素(i,j,k),

1).彩色图片image.at<Vec3b>(y,x)[c]其中y行,x列c是GBR(对应c=0,1,2)其中之一<Vec3b>代表的意思是:a vector of three 8-                bit value。也可以是Vec2b,Vec4b。返回的为一个向量

2)灰度图片:image.at<uchar>(y,x)

3.2图像的通道问题:image.channels()

1)灰度图的通道数为1,彩色图的通道为3.

2)通道通常为RGBA,A表示alpha,即透明度

3)目前常见的一些摄像头喜欢采用YUV2等格式,格式如下YUYV,在处理的时候可以用4通道或者2通道来处理。如原格式                   为:Y1UY2V,插值成为Y1UV,Y2UV就成两个彩色点了。

3.3 访问像素临近区域

1)image.ptr<uchar>(i), 返回图片image 第i行的首地址,注意是行地址

3.4 ROI区域的设置(对ROI的操作将会影响原图像,引用!)

1)imageROI=image(cv::Rect(385,270,logo.cols,logo.rows));

2)Mat imageROI=

i         mage(cv::Range(270,270+logo.rows),cv::Range(385,385+logo.cols))

3)定义某行或某列为ROI

cv::Mat imageROI=image.rowRange(start,end) ;

cv::Mat imageROI=image.colRange(start,end) ;

参考:  http://blog.csdn.net/xiaojiegege123456/article/details/8464954

http://blog.csdn.net/poem_qianmo/article/details/21479533

OpenCV创建轨迹条,图片像素的访问的更多相关文章

  1. opencv:创建滑动条

    函数原型: ,); #include <opencv.hpp> using namespace cv; #define WINDOW_NAME "线性混合示例" // ...

  2. 【opencv学习笔记八】创建TrackBar轨迹条

    createTrackbar这个函数我们以后会经常用到,它创建一个可以调整数值的轨迹条,并将轨迹条附加到指定的窗口上,使用起来很方便.首先大家要记住,它往往会和一个回调函数配合起来使用.先看下他的函数 ...

  3. (委托事件处理)关于多线程执行显示进度条的实例(转)&&线程间操作无效: 从不是创建控件“rtxtEntryNO”的线程访问它。

    关于多线程执行显示进度条的实例! 之前回答了一篇关于怎么在线程中操作进度条的帖子,估计有人看的不是很明白今天没事,写了一个小小的实例,很简单,就2个文件权当抛砖引玉,希望有更好解决方案的人发表一下意见 ...

  4. opencv学习笔记(九)Mat 访问图像像素的值

    对图像的像素进行访问,可以实现空间增强,反色,大部分图像特效系列都是基于像素操作的.图像容器Mat是一个矩阵的形式,一般情况下是二维的.单通道灰度图一般存放的是<uchar>类型,其数据存 ...

  5. 基于OpenCv和swing的图片/视频展示Java实现

    基于OpenCv和swing实现图片/视频的展示 图片的展示 swing展示图片,多为操作BufferedImage,这里要关注的核心是将Mat转为BufferedImage. 代码如下: publi ...

  6. Python 图像处理 OpenCV (2):像素处理与 Numpy 操作以及 Matplotlib 显示图像

    前文传送门: 「Python 图像处理 OpenCV (1):入门」 普通操作 1. 读取像素 读取像素可以通过行坐标和列坐标来进行访问,灰度图像直接返回灰度值,彩色图像则返回B.G.R三个分量. 需 ...

  7. 在 Mac OS X 上创建的 .NET 命令行程序访问数据库 (使用Entity Framework 7 )

    var appInsights=window.appInsights||function(config){ function r(config){t[config]=function(){var i= ...

  8. Progress.js – 为页面上的任意对象创建进度条效果

    Progress.js 是一个 JavaScript 和 CSS3 的库,它帮助开发人员为网页上的每个对象创建和管理进度条效果.你可以设计自己的模板,进度条或者干脆定制. 您可以使用 Progress ...

  9. python数字图像处理(3):图像像素的访问与裁剪

    图片读入程序中后,是以numpy数组存在的.因此对numpy数组的一切功能,对图片也适用.对数组元素的访问,实际上就是对图片像素点的访问. 彩色图片访问方式为: img[i,j,c] i表示图片的行数 ...

随机推荐

  1. Python partial function 偏函数

    Partial function 偏函数是将所要承载的函数作为partial()函数的第一个参数,原函数的各个参数依次作为partial()函数后续的参数,除非使用关键字参数. 当函数的参数个数太多, ...

  2. Linux平台下贪吃蛇游戏的运行

    1.参考资料说明: 这是一个在Linux系统下实现的简单的贪吃蛇游戏,同学找帮忙,我就直接在Red Hat中调试了一下,参考的是百度文库中"maosuhan"仁兄的文章,结合自己的 ...

  3. 【leetcode刷题笔记】3Sum

    Given an array S of n integers, are there elements a, b, c in S such that a + b + c = 0? Find all un ...

  4. 从输入url到浏览器呈现网页发生了什么?

    大致能分成两个部分:网络通信与页面渲染 一.网络通信 互联网各个网络设备间的通信均基于TCP/IP协议,此协议将整个过程进行分层,由上至下分别为: 应用层.传输层.网络层和数据链路层 1.输入URL ...

  5. POJ 2536 之 Gopher II(二分图最大匹配)

    Gopher II Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 6675   Accepted: 2732 Descrip ...

  6. Monkey for Mac 环境配置

    Monkey for Mac环境配置步骤 java环境配置, 直接去官网找对应jdk就可以了 Android  AdtBundle环境配置 1) 下载地址: http://www.jianshu.co ...

  7. Windows 7 比Windows XP 难用的功能

    Windows 7 的搜索功能做得实在难用,不仅慢,还经常搜不到文件(明明存在的文件却搜不到).相比Windows XP,这个功能差的太远了. Windows 7 的无线连网功能,即使设置为不要自动连 ...

  8. 仿联想商城laravel实战---2、后端页面搭建(验证码如何在页面中使用)

    仿联想商城laravel实战---2.后端页面搭建(验证码如何在页面中使用) 一.总结 一句话总结: 放在img里面,img的src就是生产验证码的控制器路径: img src="/admi ...

  9. Using SMOTEBoost(过采样) and RUSBoost(使用聚类+集成学习) to deal with class imbalance

    Using SMOTEBoost and RUSBoost to deal with class imbalance from:https://aitopics.org/doc/news:1B9F7A ...

  10. 2018-06-07 RF test 1 :TX Power test

    Test item: 1.Output power:   屏蔽网房-同轴线-频谱仪 The radio circuitry, generally referred to as the Device U ...