
OpenCV
坐在墙上的猫
这个作者很懒,什么都没留下…
展开
-
Opencv (一) 边缘检测
Opencv (一) 边缘检测1. 示例代码2.示例图像3.检测结果1. 示例代码#include "opencv2/core/utility.hpp"#include "opencv2/imgproc.hpp"#include "opencv2/imgcodecs.hpp"#include "opencv2/highgui.hpp"#include <stdio.h>using namespace cv;using namespace std;int edgeThres原创 2021-12-07 08:19:29 · 3328 阅读 · 0 评论 -
通过对Mat遍历修改图像亮度和对比度与convertTo性能对比
通过对Mat遍历修改图像亮度和对比度与convertTo性能对比g(i,j) = a*f(i,j) +b;a 1.0~3.0(对比) b 0~100(亮度)sature_cast<uchar> 防止溢出#include<stdio.h>#include <opencv2/core.hpp>#include <opencv2/img...原创 2018-04-05 21:53:28 · 887 阅读 · 0 评论 -
通过OpenCV阈值函数threshold实现图像的二值化
通过OpenCV阈值函数threshold实现图像的二值化二值化和阈值THRESH_BINARY 二进制阈值化;THRESH_BINARY_INV 反二进制阈值化;#include<stdio.h>#include <opencv2/core.hpp>#include <opencv2/imgcodecs.hpp>#include &...原创 2018-04-05 21:29:16 · 7191 阅读 · 0 评论 -
Opencv(4) RGB, YUV, GRAY像素格式介绍opencv像素格式转换cvtColor接口
像素格式和灰度图RGB: RGB色彩模式是工业界的一种颜色标准,是通过对红(R)、绿(G)、蓝(B)三个颜色通道的变化以及它们相互之间的叠加来得到各式各样的颜色的,RGB即是代表红、绿、蓝三个通道的颜色,这个标准几乎包括了人类视力所能感知的所有颜色,是目前运用最广的颜色系统之一。YUV: YUV主要用于优化彩色视频信号的传输,使其向后相容老式黑白电视。与RGB视频信号传输相比,它最...原创 2018-04-05 20:39:01 · 3801 阅读 · 0 评论 -
opencv(3) 通过ROI感兴趣区域来裁剪图像
ROI感兴趣区域//1:图像的列的起点,宽2:行的起点,即高,(100(列),100(行),3:(300,300),即从(100,100)开始,向左和向下各300步cv::Rect rect(100,100,300,300);#include<stdio.h>#include <opencv2/core.hpp>#include <opencv2/...原创 2018-04-05 17:31:22 · 4041 阅读 · 0 评论 -
Opencv(2) QT自定义opengl的Widget绘制Mat
Opencv(2) QT自定义opengl的Widget绘制Mat//matview.h#pragma once#include<QOpenGLWidget>class matview:public QOpenGLWidget{ Q_OBJECTpublic: matview(QWidget *p); ~matview(); voi...原创 2018-04-05 17:07:52 · 1319 阅读 · 1 评论 -
Opencv 学习(1) Mat详解
Opencv 学习(1)Mat提供内联函数 优点:编译的时候会把该段代码直接拷贝到自己的代码中,非内联函数的话会造成堆栈出栈的空间消耗。Mat创建与清理空间 创建:通过构造函数直接创建, 释放: 1、create时会把之前的空间清理。 2、release或者析构-引用计数为1时释放//创建3000*4000的RGB图像,UC3为unsigned char型,3个字节,对...转载 2018-04-05 00:20:04 · 411 阅读 · 1 评论 -
OPencv 获取视频和相机的属性
获取视频、相机属性CAP_PROP_FPS 帧率:一秒钟有多少福图像CAP_PROP_FRAME_COUNT: 总帧数,视屏时常:总帧数/帧率CAP_PROP_POS_FRAMES: 播放帧的位置CAP_PROP_FRAME_WIDTH HEIGHT 帧的宽度和高度#include<iostream>#include<stdio.h>#incl...翻译 2018-04-17 11:26:16 · 1274 阅读 · 1 评论 -
Opencv VideoCapture打开摄像头接口讲解
VideoCapture打开摄像头接口讲解VideoCapturebool open (int index)VideoCapture cap(index)open(int cameraNum, int apiPreference)源码 cap_ffmpeg_impl.hppVideoCapture打开视频流文件bool open (const String&...翻译 2018-04-17 09:57:34 · 5901 阅读 · 0 评论 -
Opencv 通过ROI图像合并
Opencv 通过ROI图像合并#include<iostream>#include<stdio.h>#include <opencv2/core.hpp>#include <opencv2/imgcodecs.hpp>#include <opencv2/highgui.hpp>#include <opencv2/...转载 2018-04-08 17:24:02 · 853 阅读 · 0 评论 -
Opencv 旋转和镜像
Opencv 旋转和镜像//旋转cv::rotata(src,dst,type);type:-ROTATE_180;-ROTATE_90_CLOCKWISE-ROTATE_90_COUNTERCLOCKWISE;//cv::flip(src,dst,type);//type:0(围绕x轴做镜像),1(y轴做镜像),-1(两种都做)#include<iostream&g...转载 2018-04-08 16:24:14 · 630 阅读 · 0 评论 -
Opencv 两幅图像混合
Opencv 两幅图像混合//dst混合图像,src1原图1,src2原图2,a:第一幅图像的透明度,gamma:增益,像素增强dst = src1*a + src2*(1-a) + gamma;a = [0~1];//浮点数,防止像素值超出允许范围画面叠化(cross-dissolve)效果addWeighted(src1,a,src2,1-a,0.0(gamma),dst...转载 2018-04-08 16:10:32 · 476 阅读 · 0 评论 -
图像金字塔
图像金字塔1、变换的过程中最小的损失画面特征; 2、高斯金字塔:用来向下采样; 3、拉普拉斯金字塔:用来从金字塔底层图像重建上层未采样图像;高斯金字塔(向下采样缩小) 1、获取G(i+1)将G(i)与高斯内核卷积; 2、将所有偶数行和列去除; 拉普拉斯金字塔 1、用来从金字塔底层图像重建上层未采样图像; 2、首先,将图像扩大两倍,新增以0填充; 3、高斯内核(乘以4)与...转载 2018-04-08 15:45:42 · 398 阅读 · 0 评论 -
Opencv 图像尺寸调整双线性插值算法
Opencv 图像尺寸调整双线性插值算法双线性内插 1、是由原图像位置在她附近的2*2区域4个邻近像素的值通过加权平均计算得到。 2、低通滤波性质,使高频分量受损,图像轮廓可能会有一点模糊#include<iostream>#include<stdio.h>#include <opencv2/core.hpp>#include <op...原创 2018-04-08 13:56:23 · 2366 阅读 · 0 评论