opencv
南国之邱
苟全性命于乱世,不求闻达于诸侯
展开
-
opencv:颜色空间转换、点表示、颜色表示
颜色空间转换:cvtColor()函数 cvtColor()函数是opencv里颜色空间转换函数,可以实现各种颜色之间的转换,也可以转化为灰度图像函数原型: void cvtColor(InputArray src, OutputArray dst, int code, int dstCn=0) 第一个参数为输入图像 第二个参数为输出图像 第三个参数为颜色空间转换的标识符(见下表) 第四原创 2017-05-11 23:30:34 · 1544 阅读 · 1 评论 -
opencv:log()函数
log()函数的功能是计算每个数组元素绝对值的自然对数 void log(InputArray src,OutputArray dst) 第一个参数:为输入图像 第二个参数:为得到的对数值其原理如下:原创 2017-05-11 23:51:53 · 10705 阅读 · 0 评论 -
opencv:计算二维矢量的幅值—magnitude()函数
计算二维矢量的幅值:magnitude()函数 该函数用来计算二维矢量的幅值 void magnitude(InputArray x,InputArray y,OutputArray magnitude) 第一个参数:InputArray类型的x,表示矢量的浮点型X坐标值,也就是实部 第二个参数:InputArray类型的y,表示矢量的浮点型Y坐标值,也就是虚部 第三个参数:OutputA原创 2017-05-11 23:49:35 · 24909 阅读 · 1 评论 -
opencv:扩充图像边界—copyMakeBorder()函数
void copyMakeBorder(InputArray src,OutputArray dst,int top,int bottom,int left,int right,int borderType,const Scalar& value-Scalar()) 第一个参数:InputArray类型的src,输入图像,即源图像,填Mat类的对象即可 第二个参数:OutputArray类型的d原创 2017-05-11 23:48:13 · 2816 阅读 · 0 评论 -
opencv:返回DFT最优尺寸大小—getOptimalDFTSize()函数
DFT最优尺寸大小:getOptimalDFTSize()函数 getOptimalDFTSize函数返回给定向量尺寸的傅里叶最优尺寸大小。 int getOptimalDFTSize(int vecsize) 此函数的唯一一个参数为int类型的vecsize,向量尺寸,即图片的rows、cols原创 2017-05-11 23:47:09 · 5093 阅读 · 0 评论 -
opencv:dft()函数详解
dft函数的作用是对一维或者二维浮点数数组进行正向或反向离散傅里叶变换 void dft(InputArray src,OutputArray dst,int flags =0,int nonzeroRows=0) 第一个参数:InputArray类型的src。输入矩阵,可以为实数或者虚数 第二个参数:OutputArray类型的dst。函数调用后的运算结果存在这里,其尺寸和类型取决于标识符,原创 2017-05-11 23:45:58 · 15153 阅读 · 3 评论 -
opencv:离散傅里叶变换
离散傅里叶变换(DFT):指傅里叶变换在时域和频域都呈现离散的形式,将时域信号的采样变换为在离散时间傅里叶变换(DTFT)频域的采样。傅里叶变换的原理: 简单说:对一张图像使用傅里叶变换就是将它分解成正弦和余弦两部分,也就是将图像从空间域转换到频域 转换理论基础:任何一函数都可以表示成无数个正弦和余弦函数的和的形式。 二维图像的傅里叶变换可以用以下数学公式表达: 其中f是空间域值原创 2017-05-11 23:44:32 · 694 阅读 · 0 评论 -
opencv:图像对比度、亮度值调整(理论基础)
一般的图像处理算子都是一个函数,它接受一个或多个输入图像,并产生输出图像。算子的一般形式如下: g(x)=h(f(x))或者g(x)=h(f0(x)……fn(x)) 图像亮度和对比度的调整操作,属于图像处理变换中一种——点操作。 点操作特点:仅仅根据输入像素值(有时加上某些全局信息或参数),来计算相应的输出像素值。这类算子包括亮度和对比度、颜色校正和变换。 两种最常用的点操作原创 2017-05-11 23:43:28 · 4597 阅读 · 0 评论 -
opencv:通道合并—merge()函数
函数原型如下:原创 2017-05-11 23:42:42 · 3699 阅读 · 0 评论 -
opencv:通道分离—split()函数
split()函数的使用原创 2017-05-11 23:41:36 · 1220 阅读 · 0 评论 -
opencv:计算数组加权和—addWeighted()函数
其调用方式如下: addWeighted(srcImage2,alphaValue,srcImage3,betaValue,0.0,dstImage);原创 2017-05-11 23:40:00 · 974 阅读 · 0 评论 -
opencv:感兴趣区域的操作:ROI
定义ROI区域的两种方法: 1、使用表示矩阵区域的Rect。它指定矩形的左上角坐标(构造函数的前两个参数)和矩形的长宽(构造函数的后两个参数) //定义一个Mat类型并给其设定ROI区域 Mat imageROI; //方法一: imageROI = image(Rect(500,2500,logo.cols,logo.rows));//方法二:指定感兴趣行或者列的范围(Range原创 2017-05-11 23:38:49 · 771 阅读 · 0 评论 -
opencv:访问图像中像素的三类方法
见代码分析:#include <opencv2/core/core.hpp>#include <opencv2/highgui/highgui.hpp>#include <iostream>using namespace std;using namespace cv;//全局函数声明void colorReduce (Mat& inputImage, Mat& outputImage, i原创 2017-05-11 23:37:53 · 422 阅读 · 0 评论 -
opencv:计时函数
getTickCount()函数返回CPU自某个时间以来走过的时钟周期数 getTickFrequency()函数返回CPU一秒钟所走的时钟周期数示例: double time0 = static_cast(getTickCount()); //记录起始时间 //进行图像处理操作。。。。。。。。。。。。。time0 = ((double)getTickCount() - time0)/getT原创 2017-05-11 23:36:08 · 1182 阅读 · 0 评论 -
opencv:基本图形的绘制
DrawEllipse()函数的写法 img:表示图像 Point:表示椭圆中心 size:大小位于举行其后面的矩形内 angle:椭圆旋转角度 0,360:表示弧度从0到360度 Scalar:表示图形颜色 thickness:表示线宽 lineType:表示线性DrawFilledCircle()函数用法 DrawLine()函数的写法原创 2017-05-11 23:35:20 · 557 阅读 · 0 评论 -
opencv:argc和argv的区别与几种main函数的写法
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl原创 2017-05-11 23:22:19 · 656 阅读 · 0 评论 -
opencv:图像的载入、显示以及创建窗口
图像的载入:imread()函数 opencv官方文档中的原型: Mat imread (const string& filename,int flags=1); (1)第一个参数,const string&类型的filename,填需要载入的图片路径名。 (2)第二个参数,int类型的flags,指定一个加载图像的颜色类型。默认值为1.有时候调用可以忽略,表示载入的原创 2017-05-11 23:27:21 · 7164 阅读 · 0 评论 -
opencv:矩阵归一化—normalize()函数
void normalize(InputArray src,OutputArray dst,double alpha=1,double beta=0,int norm_type=NORM_L2,int dtype=-1,InputArray mask=noArray()) 第一个参数:InputArray类型的src。输入图像,即源图像,填Mat类的对象即可 第二个参数:OutputArray类原创 2017-05-11 23:52:36 · 1791 阅读 · 0 评论