- 博客(9)
- 收藏
- 关注
原创 OpenCV学习之模糊图像
模糊原理 smooth/Blur是图像处理中最简单和常用的操作之一 使用该操作的原因之一就为了给图像预处理时候减低噪声 使用Smooth/Blur操作其背后是数学的"卷积计算" 通常这些卷积算子计算都是线性操作,所以又叫线性滤波 均值滤波和高斯滤波演示 #include<opencv2/opencv.hpp> #include<iostream> using namespace std; using namespace cv; int main( int argc,char*
2020-12-26 09:21:29
188
原创 OpenCV学习之绘制形状和文字
绘制形状和文字 使用从cv::Point与cv::Scalar 绘制线、矩形、圆、椭圆等基本几何形状 随机生成与绘制文本 使用cv::Point与cv::Scalar Point表示2D平面上一个点x,y Point p; p.x = 10; p.y = 8; or p = Point(10,8); Scalar表示四个元素的向量 Scalar(a,b,c);//a = blue,b = green,c = red表示RGB三个通道 绘制线、矩形、圆、椭圆等基本几何形状 画线cv::lin
2020-12-24 21:36:06
136
1
原创 OpenCV学习之调整图像亮度和对比度
图像变换可以看作如下 像素变换 - 点操作 领域操作 -区域 调整图像亮度和对比度属于像素变换 - 点操作 g(i,j) = αf(i,j)+β 其中α > 0, β是增益变量 g(i,j)输出像素点 αf(i,j)输入像素点 重要API Mat new_image = Mat::zeros(image.size(),image.type());创建一张跟原图像大小和类型一致的空白图像、像素值初始化为0 saturate_cast(value)确保值大小范围为0~255之间 Mat.at(x
2020-12-24 12:28:05
146
原创 OpenCV学习之图像混合
线性混合操作 功能说明:addWeighted()函数是将两张相同大小,相同类型的图片融合的函数。他可以实现图片的特效 相关API(addWeighted) 参数1: 输入图像Mat - src1 参数2: 输入图像src1的alpha值 参数3: 输入图像Mat - src2 参数4: 输入图像src2的alpha值 参数5: gamma值 参数6:输出混合图像 注意:两张图像的大小和类型必须一致才可以 代码演示 #include<opencv2/opencv.hpp&g
2020-12-24 09:54:49
140
原创 OpenCV学习之图像操作
读写图像 imread(); namedWindow(); imshow(); moveWinodw(); 读写像素 读一个GRAY像素点的像素值(CV_8UC1)Scalar intensity = img.at(x,y);或者者Scalar intensity = img.at(Point(x,y)); 读一个RGB像素点的像素值 Vec3f intensity = img.at(y,x); float blue = intensity.val[0]; float green = intens
2020-12-23 16:32:26
94
原创 OpenCV学习之Mat对象
Mat对象与IplImage对象 Mat对象OpenCV2.0之后引进的图像数据结构、自动分配内存、不存在内存泄漏的问题,是面向对象的数据结构。分了两个部分,头部与数据部分 IplImage是从2001年OpenCV发布之后就一直存在,是C语言风格的数据结构,需要开发者自己分配与管理内存,对大的程序使用它容易导致内存泄漏问题 Mat对象使用 部分复制: 一般情况下只会复制Mat对象的头和指针部分,不会复制数据部分 > Mat A = imread(imgFilePath); Mat
2020-12-23 12:38:09
163
原创 OpenCV学习之矩阵的掩膜操作
获取图像像素指针 CV_Assert(myimage.depth() == CV_8U) Mat.ptr(int i = 0) 获取像素矩阵的指针,索引i表示第几行,从0开始计数 获得当前行指针const uchar* current = myimage.ptr(row); 获取当前像素点P(row,col)的像素值p(row,col) = currenr[col] 像素范围处理saturate_cast saturate_cast(-100),返回0 saturate_cast(28
2020-12-15 10:11:55
179
原创 OpenCV学习之加载修改保存图像
加载图像(cv::imread) imread功能是加载图像文件成为一个Mat对象,其中第一个参数表示图像文件名称 第二个参数,表示加载的图像是什么类型,支持常见的三个参数值 IMREAD_UNCHANGED(<0)表示加载原图,不做任何改变 IMREAD-GRAYSCALE(0)表示把原图作为RGB图像加载进来 IMREAD_COLOR(>0)表示把原图作为RGB图像加载进来 OpenCV支持JPG、PNG、TIFF等常见格式图像文件加载 显示图像(cv::namedW
2020-12-12 09:41:51
153
原创 OpenCV在VS2019中的环境搭建
文章目录1、下载opencv:官网下载地址https://opencv.org/2、计算机环境变量配置3、VS目录包含 1、下载opencv:官网下载地址https://opencv.org/ 首先到opencv官网下载win平台的opencv,解压后可以看到两个文件夹——build和sources,build是官方已经编译号的可以直接使用,而sources是opencv的源码 2、计算机环境变量配置 配置方法如下: 【计算机】->【右键属性】->【高级系统设置】->【高级】->【
2020-12-12 09:07:55
843
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人