- 博客(20)
- 收藏
- 关注
原创 opencv部分库函数整理
imshow,imread函数imshow("xxxx",img); /* 参数1:显示图片的窗口名称。 参数2:储存图片数据的对象。 */Mat img = imread("0001.jpg",1); /* 上面的Mat我们可以理解为一个存储数据的容器,定义了一个img对象来存图片的数据。 参数1:引号里面的为图片路径,而且程序要左斜杠。 参数2:如果写为1最后输出就显示原图,如果写为0,最后输出就显示灰度图。 */窗口创建,删除原型:void nameWind...
2022-04-05 15:48:26 2220 1
原创 【15】opencv卷积运算
参考:【OpenCV学习笔记】之卷积及卷积算子(convolution)_点滴成海~的博客-CSDN博客_卷积算子(关于卷积运算)opencv RNG函数 - 0MrMKG - 博客园(对于RNG函数的解答)(一)首先是对于边缘的填充(避免有些像素卷积不了)C++ void copyMakeBorder( Mat src, // 输入图像 Mat dst, // 添加边缘图像
2022-03-31 17:43:17 6103 1
原创 一些opencv小工程(蓝白转换,进度条亮度对比度,鼠标位置读取rgb)
#include <opencv2/opencv.hpp>#include <iostream>using namespace std;using namespace cv;/*001:实现蓝色与白色互换这儿先把图片里面的蓝色全变成255然后利用LUT查找表,将大于某个亮度的像素点设置为蓝色将小于某个亮度的设置为白色(这个操作不是很严密)*/#if 0int main(){ Mat Input = imread("0002.jpg"); if (!I.
2022-03-31 17:20:16 3517
原创 【14】opencv直方图
参考:【OpenCV学习笔记】之直方图(Histogram)_点滴成海~的博客-CSDN博客_histogram定义:在统计学中,直方图是一种对数据分布情况的图形表示,是一种二维统计图表,他的两个坐标分别是统计样本(图像、视频帧)和样本的某种属性(亮度,像素值,梯度,方向,色彩等等任何特征)。(一)首先学习直方图的均衡化:C++ void equalizeHist(InputArray src, OutputArray dst)//第一个参数,源图像,需为8位单通道图像//第二个参数,
2022-03-26 09:49:29 4153
原创 【枚举算法】一些例题
#include <iostream>#include <cstdio>using namespace std;int main(){ int n; cin >> n; int i, j, k, l; for (i = 2; i <= n; i++) { for (j = 0; j <= i-1; j++) { for (k = 0; k &l...
2022-03-21 15:49:13 2560 1
原创 递归_求阶乘_汉诺塔_N皇后_逆波兰表达式求值 记录
#include <iostream>using namespace std;/* 001:阶乘*/int Factorial(int n){ if (n == 0) { return 1; } else return Factorial(n - 1) * n;}/* 002:汉诺塔*///void Hanoi(int n, char start, char mid, char last)//{.
2022-03-21 15:41:46 244
原创 【13】opencv不规则ROI提取
机器视觉、图像处理中,从被处理的.图像以方框、圆、椭圆、 不规则多边形等方式勾勒出需要处理的区域,称为感兴趣区域,ROI。这里分为规则ROI提取与不规则ROI提取。/* 以下是规则roi提取int main() { cv::Mat Photo = cv::imread("0003.jpg"); cv::namedWindow("origin"); cv::imshow("origin", Photo); int h = Photo.rows; int w = Photo.cols;
2022-03-18 13:21:42 1129
原创 【12】opencv图形绘制
参考:opencv——绘制图像(直线、矩形、椭圆、圆、填充)与文字_Spark!的博客-CSDN博客_opencv 填充椭圆对于线的绘制:void line( InputOutputArray img, Point pt1, Point pt2, const Scalar& color, int thickness = 1, int l
2022-03-18 13:16:14 2838
原创 【11】opencv像素统计
void minMaxLoc(InputArray src, CV_OUT double* minVal, CV_OUT double* maxVal = 0, CV_OUT Point* minLoc = 0, CV_OUT Point* maxLoc = 0, InputArray mask = noArray());src:输入图像。minVal:返回像素最小值。可输入NULL表示不需要。maxVal :返回像素最大值。可输入N.
2022-03-18 13:11:54 4861
原创 【10】opencv色彩空间转换
void cvtColor( InputArray src, OutputArray dst, int code, int dstCn = 0 );相关参数:InputArray src – 原始图像OutputArray dst – 转换后图像int code – 转换编码int dstCn = 0 – 目标图像通道数,如果取值为0,则由src和code决定#include <opencv2/opencv.hpp>#include <iostream>us.
2022-03-18 13:09:30 3597
原创 [9]opencv图像通道合并,分离,混合
这一段代码实现的是分离与混合注:图像分离后会将rbg各个数据传入mv数组中#include<opencv2/opencv.hpp>#include <iostream>using namespace std;int main(){ //图像的分离: cv::Mat photo = cv::imread("0003.jpg"); cv::Mat output = cv::Mat(photo.size(), photo.type());
2022-03-17 15:40:15 673
原创 【8】opencv伪彩变换
我理解的伪彩变换就是将灰度图通过颜色表(已有)来实现伪上色。主要的函数就是applycolorMap方法,比较简单,调用就完事了void cv::applyColorMap(InputArray src, OutputArray dst, InputArray userColor ) 参数src CV_8UC1或CV_8UC3类型的灰度或彩色源图像。dst 目标图像是彩色映射的源图像。注意:Mat::create是在dst上
2022-03-17 15:38:15 223
原创 【7】opencv图像LUT查找表
LUT查找表简单来说就是一个像素灰度值的映射表,它以像素灰度值作为索引,以灰度值映射后的数值作为表中的内容。例如我们有一个长度为5的存放字符的数组P [ a , b , c , d , e ] P[a,b,c,d,e]P[a,b,c,d,e] ,LUT查找表就是通过这个数组将0映射成a,将1映射成b,依次类推,其映射关系为P [ 0 ] = a P[0] = aP[0]=a 、P [ 1 ] = b P[1] = b P[1]=b其实本质上是对图片的像素点映射到另一个处理后的图片,映射是方法就是LUT查
2022-03-17 15:33:40 1467
原创 【5】OpenCV中图像算术操作与逻辑操作
图像像素四种算术运算:加:add(Mat src1,Mat src2,Mat addRes);减:subtract(Mat src1,Mat src2,Mat subRes);乘:multiply(Mat src1,Mat src2,Mat mulRes);除:divide(Mat src1,Mat src2, Mat divRes);——————————————四种逻辑运算://按位与//按位或//按位异或//按位非——————————————外加权值的赋值,调整亮度
2022-03-17 15:31:14 513
原创 【4】opencv像素遍历的五种方法
#include <opencv2/opencv.hpp>#include <iostream>using namespace std;int main(){ //这里png是四个通道,只是改掉其中的三个通道 cv::Mat MrMKG_0; MrMKG_0 = cv::imread("C:/Users/86136/Desktop/opencv学习/[004]像素遍历和访问/0001.png"); cv::namedWindow("图片输出样.
2022-03-17 15:29:23 2362
原创 【3】opencv里的Mat操作
链接处:关于矩阵的通道与位深度的讲解:OpenCV——图像的深度与通道数讲解 - 一抹烟霞 - 博客园关于opencv中各种属性的理解:Opencv Mat矩阵中data、size等属性的理解_daaizjh的博客-CSDN博客_mat size#include <opencv2/opencv.hpp>#include <iostream>using namespace std;int main(){ cv::Mat MKG_1; MKG
2022-03-17 15:28:23 632
原创 【2】opencv视频读取
int main(){VideoCapture cap; //创建存储视频文件或者设备的对象cap.open("C:/Users/86136/Desktop/opencv学习/图片输出测试/test_2.mp4"); //打开视频文件或者视频设备/*if (!cap.isOpened()){cout << "could not open the VideoCapture !" << endl;system("pause");return -1;}*///判断.
2022-03-17 15:27:31 246
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人