2020-01-31 19:26:37
绘制形状比较简单,基本上没啥子好说的,见代码。演示代码:#include <opencv2/opencv.hpp>
#include <iostream>
using namespace std;
using namespace cv;
Mat bgImage;
const char* drawdemo_win = "draw shapes and...
2020-01-31 19:01:29
演示代码:#include <opencv2/opencv.hpp>
#include <iostream>
#include <math.h>
using namespace cv;
int main(int argc, char** argv) {
Mat src, dst;
src = imread("e:/5.png&q...
2020-01-31 18:07:24
图像混合的原理理论-线性混合操作其中 a的取值范围为0~1之间对应的opencv算子是 addWeighted()参数1:输入图像Mat – src1参数2:输入图像src1的alpha值参数3:输入图像Mat – src2参数4:输入图像src2的alpha值参数5:gamma值参数6:输出混合图像注意点:两张图像的大小和类型必须一致才可以演示代码:#include <opencv2/op...
2020-01-31 17:42:19
学习sobel总结:先说下边缘,在图像上像素发生跃迁的的地方。如何捕捉边缘:对图像进行一阶求导,▲ = f(x)-f(x-1),▲的值越大,那么说明x方向边缘信号越强烈。 下图图我们可以看见像素值明显发生改变,表示这一现象可以用导数,变化率越大,说明像素值改变越显著f(x)为图像像素值的函数图,f'(t)为f(t)的一阶导数,即当前像素减去上一个像素的差值,可以看到红圈标注的地方,即边缘信...
2020-01-31 17:39:11
sobel算子是一种常用的边缘检测算子,是一阶的梯度算法。对噪声具有平滑作用,提供较为精确的边缘方向信息,边缘定位精度不够高。当对精度要求不是很高时,是一种较为常用的边缘检测方法。它进行处理的模板如下:其中,Gx是横向的算子,Gy是纵向的算子。原图像记为f,则GX = Gx*fGY = Gy*fGx =-1*f(x-1, y-1) + 0*f(x,y-1) + 1*f(x+1,y-1)+(-2)*...
2020-01-31 17:13:00
1.图像基本运算图像的基本运算有很多种,比如两幅图像可以相加、相减、相乘、相除、位运算、平方根、对数、绝对值等;图像也可以放大、缩小、旋转,还可以截取其中的一部分作为ROI(感兴趣区域)进行操作,各个颜色通道还可以分别提取及对各个颜色通道进行各种运算操作。总之,对于图像可以进行的基本运算非常的多,只是挑了些常用的操作详解。void add(InputArray src1, InputArray s...
2020-01-31 05:40:17
利用Mat对象的像素数组指针来修改图片,是老司机玩的,新手的话可以采用一些安全访问的办法。见下面的代码。演示代码:#include <opencv2/opencv.hpp>
#include <iostream>
#include <math.h>
using namespace cv;
using namespace std;
int main(...