OpenCV 3.4.8
文章平均质量分 90
OpenCVC++学习笔记
hellohake
这个作者很懒,什么都没留下…
展开
-
摄像头常见参数解释(转载)
市面上的摄像头有很多种,规格,价格也是千差万别,如何选择一款适应当前应用系统的摄像头是一个很关键的问题。影响摄像头性能的参数主要有以下几种:1. 分辨率:一般是说摄像头能支持到的最大图像大小,如640x480(普清), 800x600, 1280x720(高清), 1920x1080(全高清或超清)等。分辨率当然是越高越好,但也要考虑系统实际情况,如果系统就用不到1920x1080这样的...转载 2020-05-06 22:48:28 · 9234 阅读 · 0 评论 -
驱动一款淘宝购买的130万像素的USB双目摄像头-记录
文章目录巴拉巴拉一下1. 参数2. 使用3. 效果4. 需要注意的5. 其他参考巴拉巴拉一下 前几天购买了一个USB双目相机如下,然后研究了一下怎么使用,简要记录一下自己的使用过程; 相机的链接如下:https://item.taobao.com/item.htm?spm=a1z09.2.0.0.76522e8dAWEjef&id=556150206198&_u=...原创 2020-04-26 13:18:11 · 1850 阅读 · 4 评论 -
[机器视觉]手眼标定(转载)
使用的棋盘格:25*25,每格20mmMatlabMatlab相机标定文档Matlab官方视频:Camera Calibration with MATLAB*Matlab官方视频:Computer Vision System Design Deep Learning and 3D Vision*Matlab官方视频:Computer Vision for Advanced Dr...转载 2020-04-23 23:35:20 · 1893 阅读 · 0 评论 -
视差图(Disparity)三维重投影得到特征点的三维空间坐标的2种方法
文章目录前提方法1-perspectiveTransform()方法2-reprojectimageto3d()PS参考前提1、使用BM或者SGBM算法计算得到了双目图像的合适左右视差图;2、使用立体校正函数stereoRectify()计算得到了4*4重投影矩阵Q;方法1-perspectiveTransform()1、透视变换这里可以用于计算一系列特征点的三维重投影坐标值,原理如图:...原创 2020-04-18 00:20:34 · 7517 阅读 · 4 评论 -
深度相机(一)——分类:TOF、RGB双目、结构光优劣分析(转载)
目前的深度相机根据其工作原理可以分为三种:TOF、RGB双目、结构光一、RGB双目 RGB双目相机因为非常依赖纯图像特征匹配,所以在光照较暗或者过度曝光的情况下效果都非常差,另外如果被测场景本身缺乏纹理,也很难进行特征提取和匹配。你看看下面的图就懂了。三种相机的参...转载 2020-04-17 15:38:00 · 4930 阅读 · 0 评论 -
ABB机器人安装双目相机后实现相机手眼标定der步骤详记
文章目录1、手眼标定需要从ABB机器人获得的所有数据信息2、手眼标定在OpenCV中所有需要使用的函数3、ABB机器人安装双目相机后手眼标定的步骤描述4、计算得到手眼矩阵后的后续5、写啥呢1、手眼标定需要从ABB机器人获得的所有数据信息1、如下图,abb机器人能够实时的读取到TCP点相对于工件坐标或者基坐标或者大地坐标(世界坐标)的空间坐标点(描述TCP点的平移向量)与四元数(描述TCP在该坐...原创 2020-04-17 00:21:54 · 5761 阅读 · 6 评论 -
Harris角点检测原理详解(转载)
关于角点的应用在图像处理上比较广泛,如图像匹配(FPM特征点匹配)、相机标定等。网上也有很多博客对Harris角点检测原理进行描述,但基本上只是描述了算法流程,而其中相关细节并未作出解释,这里我想对有些地方做出补充说明,正所谓知其然知其所以然,如有不对,还望指正。1. 何为角点?下面有两幅不同视角的图像,通过...转载 2020-03-25 16:50:41 · 1570 阅读 · 0 评论 -
OpenCV3.4.8添加opencv_contrib库-记录
注意1、opencv_contrib包含了opencv的最新不稳定模块,只能在github 上下载: https://github.com/opencv/opencv_contrib/releases;2、CMake编译OpenCV源码时,一定要选择正确的编译平台(x64,默认是win32)3、这部分截图自:https://blog.csdn.net/Chris_zhangrx/artic...原创 2020-03-18 17:42:37 · 893 阅读 · 0 评论 -
OpenCV手眼标定(calibrateHandeye())
文章目录说明Code实验效果参考说明Code#include <opencv2/opencv.hpp>#include <iostream>#include <math.h>using namespace std;using namespace cv;Mat R_T2HomogeneousMatrix(const Mat& R, co...原创 2020-03-11 23:21:53 · 50986 阅读 · 95 评论 -
OpenCV3.4.8实现立体视觉校正与标定
文章目录说明Code效果参考说明1、先calibrateCamera()确定相机内参与畸变向量;再stereoCalirate()确定右相机相对于左相机的R、T,本征矩阵E,基本矩阵F;再立体标定stereoRectify()确定R1, R2, P1, P2, Q; 根据R1 , R2 重投影得到立体校正图像(共面行对齐);再使用StereoBM or StereoSGBM计算Disparit...原创 2020-03-10 21:52:35 · 2957 阅读 · 0 评论 -
立体视觉-opencv中立体匹配相关代码(BM,SGBM,GM参数解释)
立体视觉-opencv中立体匹配相关代码 三种匹配算法比较 BM算法: 该算法代码: view plaincopy to clipboardprint? CvStereoBMState *BMState = cvCreateStereoBMState(); int SADWindowSize=15...转载 2020-03-10 21:21:38 · 7802 阅读 · 0 评论 -
使用OpenCV完成单目相机矫正
文章目录相机矫正与显示说明Code运行效果参考相机矫正与显示1、注意事项;2、Code;3、效果;4、参考;说明1、相机标定的棋盘格习惯width方向棋盘少点,height方向棋盘多点,棋盘格角点识别只寻找内角点(都行,自带例程里是w*h = 6 * 9);2、注意棋盘格默认坐标系在左上角,drawChessboardCorners()会默认将x方向绘制为红色;3、findCh...原创 2020-03-03 22:14:41 · 1212 阅读 · 0 评论 -
34,35-基于距离变换与分水岭的图像分割
文章目录基于距离变换与分水岭的图像分割基于距离变换与分水岭的图像分割原创 2020-02-16 13:53:17 · 741 阅读 · 0 评论 -
33-点多边形测试
文章目录点多边形测试:点多边形测试:原创 2020-02-16 10:38:26 · 302 阅读 · 0 评论 -
32-图形矩(Image Moments)
文章目录图形矩(Image Moments)图形矩API使用步骤Code效果图形矩(Image Moments)1、矩的概念;2、API;3、Code;图形矩1、几何矩: P(x,y) —像素值,x,yx,yx,y表示像素点的位置,有各阶矩;2、中心距:mu(ji)mu_(ji)mu(ji);3、中心归一化距: nu(ji)nu_(ji)nu(ji)4、中心距与中心归一化距...原创 2020-02-15 23:55:49 · 1493 阅读 · 0 评论 -
31-轮廓周围绘制矩形框和圆形框
文章目录轮廓周围绘制矩形和圆形框相关API使用方法Code效果轮廓周围绘制矩形和圆形框1、API介绍;2、代码演示;相关API1、轮廓线拟合API: approxPolyDP():curve : 输入多变形;approxCurve : 输出拟合后的多边形(轮廓点数减少)epsion : 两点之间的最小距离;closed : 形成的多边形是否封闭;基于RDP算法原理实现;2...原创 2020-02-15 22:29:23 · 315 阅读 · 0 评论 -
30-凸包(Convex Hull)
文章目录凸包(convex hull)凸包(convex hull)凸包(convex hull)1、凸包概念;2、API说明;3、代码演示;convex : 凸面的,凸出的,凸多变形的;hull : 物体外壳;凸包(convex hull)...原创 2020-02-15 20:26:43 · 3788 阅读 · 0 评论 -
29-轮廓发现
文章目录轮廓发现(find contour in your image)轮廓发现(find contour)相关APICode效果轮廓发现(find contour in your image)1、轮廓发现(find contour);2、代码演示;轮廓发现(find contour)1、轮廓发现是基于图像边缘提取的基础寻找对象轮廓的方法,一般用来寻找二值图像的轮廓,所以边缘提取的阈值选...原创 2020-02-15 00:13:59 · 165 阅读 · 0 评论 -
28-模板匹配
文章目录模板匹配(Template Match)模板匹配(Template Match)模板匹配算法OpenCV中提供了6种常见的匹配算法:对应的宏定义相关APICode效果模板匹配(Template Match)1、模板匹配概念;2、API;3、Code;模板匹配(Template Match)1、模板:一幅小的子图像,在大的图像(目标图像)中寻找与子图像相同或相似的部分,称为模板匹...原创 2020-02-14 19:48:51 · 259 阅读 · 1 评论 -
27-直方图反向投影
文章目录直方图反向投影(Histogram Back Projection)直方图反向投影直方图反向投影步骤实现步骤与APICode效果直方图反向投影(Histogram Back Projection)1、反向投影;2、操作步骤与API;3、代码演示;直方图反向投影1、反向投影是反映直方图模型在目标图像中的分布情况,即用直方图模型去目标图像中寻找是否有相似的对象,实现对特定对象的检测...原创 2020-02-14 16:43:25 · 259 阅读 · 0 评论 -
26-直方图比较
文章目录直方图比较直方图比较方法直方图比较1、直方图比较方法;2、相关API;3、代码演示;直方图比较方法1、直方图比较方法用来衡量两张图片之间的相似程度;...原创 2020-02-14 11:35:04 · 2114 阅读 · 0 评论 -
25-直方图计算
文章目录直方图计算(Histogram)直方图相关APICode效果直方图计算(Histogram)1、直方图概念;2、相关API;3、代码演示;直方图1、直方图:像素值经统计得到的图像;一切图像的属性值,都可以建立直方图,基于图像像素的灰度直方图是最常见的;2、直方图的属性:dims : 维度(通道值)bins : 表示在维度中子区域大小的划分,如上图;rang...原创 2020-02-13 20:57:13 · 269 阅读 · 0 评论 -
OpenCV API说明文档下载地址
https://docs.opencv.org/原创 2020-02-13 19:53:37 · 817 阅读 · 0 评论 -
24-直方图均衡化
文章目录直方图均衡化直方图直方图均衡化1、直方图概念;2、直方图均衡化;3、API说明;4、代码演示;直方图1、直方图:对图像像素点的像素等级进行统计得到的直方图;纵坐标:出现频率,横坐标:灰度等级;...原创 2020-02-13 19:17:50 · 265 阅读 · 0 评论 -
23-像素重映射
文章目录像素重映射(cv::remap)像素重映射相关APICode效果像素重映射(cv::remap)1、像素重映射概念;2、API介绍;3、代码演示;像素重映射1、像素重映射:把输入图像中各个像素按照一定的规则映射到另外一张图像的对应位置上去,形成一张新的图像; 映射的称为功能函数,数学原理如下:2、demo: 对称映射相关API1、API : cv::remap();...原创 2020-02-13 17:26:33 · 469 阅读 · 0 评论 -
OpenCV3:通道和位深的含义
矩阵数据类型:– CV_<bit_depth>(S|U|F)C<number_of_channels>S = 符号整型 U = 无符号整型 F = 浮点型CV_8UC1 是指一个8位无符号整型单通道矩阵,CV_32FC2是指一个32位浮点型双通道矩阵CV_8UC1 CV_8SC1 CV_16U C1 CV_16SC1CV_8UC2 CV_8SC2 CV_16UC...转载 2020-02-13 16:28:47 · 620 阅读 · 0 评论 -
22-霍夫圆变换
文章目录Hough圆变换Hough圆检测原理相关APICode效果Hough圆变换1、Hough圆检测原理;2、相关API;3、代码演示;Hough圆检测原理1、平面坐标中的圆变换到霍夫空间中后,圆上每个像素点产生的圆都会经过一次圆心,圆心会变得很亮;相关APIcv::HoughCircles():1、霍夫圆检测对图像噪声比较敏感,使用前需要先对图像做中值滤波(去除椒盐噪声...原创 2020-02-13 15:02:02 · 385 阅读 · 0 评论 -
21-霍夫变换(Hough)
文章目录Hough变换霍夫直线变换相关APICodeHough变换1、霍夫变换直线检测(还有圆检测,统一几何形状检测);2、相关API;3、代码演示;霍夫直线变换1、Hough Line Transform用来做直线检测;2、前提条件-边缘检测已经完成(Canny运算);3、将平面直角坐标转换到极坐标系中,霍夫空间–极坐标空间,平面直角坐标–空域,将图像从空域转换到霍夫域;4、...原创 2020-02-13 13:29:25 · 623 阅读 · 0 评论 -
20-Canny边缘检测算法
文章目录Canny边缘检测Canny边缘检测1、Canny算法内容;2、API : cv::canny();3、代码演示;原创 2020-02-13 10:11:12 · 591 阅读 · 0 评论 -
19 - Laplace算子
文章目录掌握Laplace理论相关APILaplace运算流程Code效果掌握1、Laplace算子理论(通过Laplace卷积核求取图像边缘);2、API使用;3、代码演示;Laplace理论1、在图像像素二阶导数中,图像像素变化最大处的值为0,即边缘是零值,因此,理论上我们可以通过计算图像二阶导数,提取图像边缘;2、数学原理:二阶导求导公式:相关API1、OpenCV中提...原创 2020-02-12 21:25:46 · 454 阅读 · 0 评论 -
18-Sobel算子
文章目录Sobel算子Sobel算子原创 2020-02-12 20:22:03 · 1108 阅读 · 0 评论 -
17-边缘处理
文章目录边缘处理边缘处理1、卷积边缘问题;2、处理边缘;3、代码演示;原创 2020-02-12 17:00:29 · 784 阅读 · 0 评论 -
16-自定义线型滤波
文章目录原创 2020-02-12 14:47:57 · 233 阅读 · 1 评论 -
15-基本阈值操作
文章目录掌握图像阈值(threshold)相关APICodeConsequence掌握1、图像阈值;2、阈值类型;3、代码演示;图像阈值(threshold)1、图像阈值:图像分割的标尺,阈值的确定由阈值产生算法决定(OpenCV提供了2种阈值产生算法);阈值分割(threshold segmentation)2、阈值分为不同的类型,类型1:阈值二值化(threshold binar...原创 2020-02-12 13:02:58 · 488 阅读 · 0 评论 -
14-图像金子塔-上采样与降采样
文章目录掌握图像金字塔概念图像金字塔分类掌握1、图像金字塔概念;2、采样API;3、代码演示;图像金字塔概念1、如下图,图像金子塔从上到下,分辨率依次提高,图像采样越多,分辨率越高;2、上采样:分辨率提高的采样,得到的图像宽高是原来图像的2倍;图像金子塔中对应图像从上到下;图像放大(zoom in),图像大小改变(变大);3、降采样:分辨率降低的采样,得到的图像宽高是原来图像的1/...原创 2020-02-12 10:15:48 · 714 阅读 · 0 评论 -
13-形态学操作应用-提取水平与垂直线
文章目录掌握原理掌握1、提取水平与垂直线的原理方法;2、实现步骤;3、代码演示;原理1、关键:通过自定义的结构元素,使结构元素对输入图像的一些对象敏感,另外一些对象不敏感,这样就会让敏感的对象改变而不敏感的对象保留输出,通过两个基本的形态学操作–膨胀和腐蚀,使用不同的结构元素实现对输入图像的操作...原创 2020-02-11 20:54:47 · 472 阅读 · 0 评论 -
12-形态学操作
目录知识点开操作(open)相关API知识点OpenCV的形态学操作,多数是基于膨胀(dilate)与腐蚀(erode)形成的;1、开操作-open;2、闭操作-close;3、形态学梯度- Morphological Gradient;4、顶帽-top hat;5、黑帽-black hat;开操作(open)1、开操作:指先腐蚀后膨胀;2、可以去除小的对象;相关API1...原创 2020-02-11 17:44:40 · 312 阅读 · 0 评论 -
11-腐蚀与膨胀
目录掌握膨胀腐蚀相关APICode效果掌握1、膨胀;2、腐蚀;3、代码演示,知道API函数的运用场景;膨胀膨胀:属于形态学操作(morphology operators)1、图像形态学操作–基于形状的一系列图像处理操作的合集,主要是基于集合论基础上的形态学数学;2、形态学有4个基本操作:膨胀,腐蚀,开,闭;3、膨胀与腐蚀是图像处理中最常用的形态学操作手段;4、膨胀操作与卷积操作...原创 2020-02-11 13:18:06 · 899 阅读 · 0 评论 -
10-模糊处理2
知识点1、中值滤波;2、双边滤波;3、代码演示;原创 2020-02-11 10:28:30 · 388 阅读 · 0 评论 -
09-模糊图像1(OpenCV)
掌握1、模糊原理;2、代码;模糊原理1、Smooth/Blur(光滑/模糊)是图像处理中最常用的操作之一,用于去噪;2、使用该操作一般是给图像预处理降低噪声影响;3、Smooth/Blur背后是数学的卷积运算(连续运算转换为离散运算):使用卷积算子(掩膜mask);4、通常这些卷积算子计算都是线性操作,所以又叫线性滤波;注:k,l:窗口大小,f(x,y):原始图像,h(i,j):...原创 2020-02-10 22:24:55 · 147 阅读 · 0 评论