[置顶]python知识导航贴,持续更新

[置顶]C# 语言高级特性知识导航贴,持续更新

[置顶]netMarketing类库: 类库说明

[置顶]本站视觉相关教程整理贴子,持续更新

[置顶]C++相关导航贴,持续更新

[置顶]本站收费服务公告(netMarketing源码,工业自动化行业培训班等)

[置顶]2020年勇哥的机器视觉实验项目清单(大纲)

[置顶]本站连载贴子系列,持续更新中……

[置顶]勇哥的免费视频教程清单

[置顶]勇哥在B站发布的视频清单

[置顶]运动控制专题,持续更新

OpenCV调用TensorFlow预训练模型

勇哥引言:OpenCV是计算机视觉库,Tensorflow是深度学习框架。 OpenCV包含了大量的图像处理和计算机视觉的算法,但是在机器学习方面明显不足,ML模块只有SVM,MLP, kNN等有限的几种算法。dnn模块也是调用别的框架。 Tensorflow是专为深度学习而生,可以方便的实现各种深度学习算法。 二者不属于同一领域,做视觉用OpenCV,做深度学习用Tensorflow。或...

opencv形态学运算

opencv形态学运算opencv形态学运算形态学是生物学中研究动物和植物结构的一个学科分支。数学形态学是以形态为基础对图像进行分析的数学工具。基本思想是用具有一定形态的结构元素去度量和提取图像中的对应形状以达到对图像分析和识别的目的。形态学图像处理的数学基础是集合论。1964,Matheron指导下的Serra做岩相学分析。1966年命名Mathematical Morphology。1968年...

opencv基于轮廓的模板匹配

〇.算法效果展示0.1要定位的模板一找到的匹配在有污损情况下找到的匹配0.2要定位的模板2找到的匹配一. 理论部分模板匹配的算法包括基于灰度的匹配,基于特征的匹配,基于组件的匹配,基于相关性的匹配以及局部变形匹配。基于灰度的匹配一般应用在没有缩放和旋转,颜色变化不大的场合。基于特征的匹配一般应用在具有缩放和旋转,颜色变化较大的场合。在模板各个组件有相对位移的情况下,使用基于组件的匹配算法。在图像模...

单目相机标定: 一个全自动化的使用opencv的标定程序

首先使用拍照工具拍摄一些JPG格式的标定图片。然后放到特定的文件夹下,我这里是image文件夹。在标定前,首先读取该文件夹下的图片文件,获取这些图片文件的文件名,以备将来opencv读取图片使用。这样做的好处是不用特意给拍摄的图片按照特定格式重新命名,大大减小了工作量。标定时,程序会检查这些图片是否能正常提取格点,如果不能,程序自动舍去,在标定时该幅图片不参与计算。标定完成后,程序会把标定结果显示...

一步一步实现多尺度多角度的形状匹配算法(C++版本)

我们知道opencv的模板匹配是个鸡肋,效果跟halcon的模板匹配没法比。感谢下面这位大神贡献了实现类似halcon形状匹配的源码。前言用过halcon形状匹配的都知道,这个算子贼好用,随便截一个ROI做模板就可以在搜索图像中匹配到相似的区域,并且能输出搜索图像的位置,匹配尺度,匹配角度。现在我们就要利用opencv在C++的环境下复现这个效果。我们先看下复现的效果图,提升下学习的欲望(要在搜索...

关于OpenNI2和OpenCV2的那些事——获取三维点云数据并用OpenGL表示

上一节呢,我们利用openni2获得了彩色图像和深度图像,这一节我们用openni2的转换函数将深度数据转换为三维点云,然后用彩色数据作为纹理将点云用opengl画出来。首先介绍CoordinateConverter::convertDepthToWorld(const VideoStream& depthStream, int depthX, int depthY, DepthPixel...

相机姿态轨迹最小二乘多项式平滑优化(防抖动)

上一篇讲了利用随即一致性来减少错误匹配的情况,这一篇讲一下使用最小二乘多项式平滑方法来减少姿态的抖动问题。因为我们的设备是手持单目,相机在移动的过程中,会产生细微的抖动。虽然EKF或者G2O(通用图优化)会帮我们最小化错误,但是当我们得到正确的最接近真实的姿态后,我们会发现这些姿态是存在细微抖动的。下图为未平滑的相机姿态(Matlab):我们看到有大量的抖动在里面。体现在图像上则是AR物体会有小幅...

关于OpenCV的那些事——跟踪点选取方式和特征点跟踪恢复

这一节应该是本项目(Feature Tracking and Synchronous Scene Generation with a Single Camera)的最后一节了,实现了两种选取跟踪点和恢复跟踪的方法,顺便把AR物体换成了AR小游戏。首先讲讲跟踪点的选取。之前的文章中我们选取ORB作为特征点检测的办法,然后手动选取N个ORB角点去利用LK光流法跟踪。这样的方法是事先定义好3D点的位置,...

关于OpenCV的那些事——画AR物体(单目控制)

这段时间把项目的剩余部分全部完成了,包括角点检测改进和恢复追踪。这一节先继续讲利用OpenGL画AR物体。上一节中我们利用SolvePnP得到了相机的姿态(rotation和translation),利用姿态信息我们可以通过加载model_view_matrix来控制opengl里的相机。首先我试了用cmake重新编译with_opengl版的opencv,但是失败了(后来有了成功编译with_o...

关于OpenCV的那些事——ORB的brief描述子(256bit)的match心得

用了ORB那么久,今天第一次将256bit的描述子打印出来,直观看到了match的汉明距离。上代码:#include <iostream> #include <bitset> #include <opencv2/core/core.hpp> #include <opencv2/highgui/highgui.hpp> #include <...

关于OpenCV的那些事——相机姿态更新

上一节我们使用张正友相机标定法获得了相机内参,这一节我们使用 PnP (Perspective-n-Point)算法估计相机初始姿态并更新之。推荐3篇我学习的博客:【姿态估计】Pose estimation algorithm 之 Robust Planar Pose (RPP)algorithm,POSIT算法的原理--opencv 3D姿态估计,三维姿态:关于solvePnP与cvPOSIT。...

关于OpenCV的那些事——利用RANSAC消除错误姿态

上一节《关于OpenCV的那些事——跟踪点选取方式和特征点跟踪恢复》讲了两种跟踪和恢复的方法,这一篇主要讲第一个优化,使用random sample consensus收敛相机姿态。下一篇讲使用最小二乘多项式平滑消除姿态抖动。我们知道在计算相机姿态的时候,opencv中提供了两种函数:solvePnP, solvePnPRansac。 第二个函数即是利用ransac的思想计算更加精确的姿态。 鉴于...

关于OpenCV的那些事——张正友相机标定法

这一节我们首先介绍下计算机视觉领域中常见的三个坐标系:图像坐标系,相机坐标系,世界坐标系。以及他们之间的关系。然后介绍如何使用张正友相机标定法标定相机。图像坐标系:理想的图像坐标系原点O1和真实的O0有一定的偏差,由此我们建立了等式(1)和(2),可以用矩阵形式(3)表示。相机坐标系(C)和世界坐标系(W):通过相机与图像的投影关系,我们得到了等式(4)和等式(5),可以用矩阵形式(6)表示。我们...

转几篇知乎上一位研究视觉方面博士的一些经验贴子

偶然看到知乎上一位研究机器视觉博士的贴子,都是些经验之谈,蛮好看的。就转过来,大家一起经验一下吧。opencv怎么学作者:wqiasky链接:https://zhuanlan.zhihu.com/p/37823735来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。学习图像处理,掌握一种工具非常重要,这工具是指图像处理库函数。虽然有不少图像函数库,比如halcon、vi...

opencv基于形状的模板匹配的局限

前段时间一直在做图像模板匹配。需要对旋转模板进行匹配,并且对速度精度都有较高的要求。OpenCV里面并没有较好的解决方法。cvMatchTemplate( const CvArr* image, constCvArr* templ,CvArr* result,int method ) Image 待搜索图像 Templ 模板图像 Result 匹配结果 用来存放通过以下方法计算出滑动...

OpenCV3.0-图像特征检测

使用opencv的一些内置的算法来实现对图像特征的检测 从图像中提取的到的特征可以用来进行图像的匹配和检索常用的图像特征检测算法Harris:检测角点SIFT:检测斑点SURF:检测斑点FAST:检测角点BRIEF:检测斑点什么是图像特征?  图像特征就是图像中最具有独特性和具有区别性的图像区域.在图像中特征区域主要分布在角点,高密度区域,边缘(边缘可以将图像分成多个区域),斑点(与周围像素差别很...

图像特征的匹配-OpenCV3.0

图像特征的匹配  通过对图像提取特征后,得到特征点和描述特征点信息的特征向量,在对图像的检索和匹配当中主要通过对描述符[特征向量]的计算来实现,下面主要通过ORB来进行图像特征的提取,使用不同的算法来实现图像的匹配.1.暴力匹配(Brute-Force)2.K-临近匹配3.FLANN匹配(Fast Library for Approximate Nearest Neighbors)www.cs.u...

亚像素级角点定位原理及opencv实现

为何需要进行亚像素定位?数字图像通常是离散化成像素;每个像素对应一个整数坐标位置;整数坐标位置对于很多应用并不精确,比如跟踪、相机标定、图像配准、图像拼接以及三维重构;为达到有些应用的精确性,需要精确到浮点坐标位置;所以亚像素定位问题。亚像素定位就是计算特征所在图像中的真实位置,而真实位置有时候并不在像素所在整数坐标位置上,而是在像素的内部。点的灰度分布特征跟二维高斯模型很相似,中心处最亮,离中心...

opencv之霍夫变换直线检测

霍夫变换检测霍夫变换之直线检测霍夫变换直线检测前提条件-边缘检测已经完成平面空间到极坐标空间的转换(空间域向霍夫域的转换)检测原理两点确定一条直线,通过一点可以确定无数条直线,极坐标直线公式每个点通过角度取不同的值,都能在横坐标为角度值,纵坐标为ρ值的坐标系内确定一条曲线,只要角度值的精细度足够。ρ代表直线到原点的距离。对每个像素采取这样的操作,将会得出很多这样的曲线,这些曲线的交点证明,这些点所...

OpenCV畸变校正原理以及损失有效像素原理分析

上一篇博客简要介绍了一下常用的张正友标定法的流程,其中获取了摄像机的内参矩阵K,和畸变系数D。1.在普通相机cv模型中,畸变系数主要有下面几个:(k1; k2; p1; p2[; k3[; k4; k5; k6]] ,其中最常用的是前面四个,k1,k2为径向畸变系数,p1,p2为切向畸变系数。2.在fisheye模型中,畸变系数主要有下面几个(k1,k2,k3,k4). 因为cv和fisheye的...

OpenCV角点检测源代码分析(Harris和ShiTomasi角点)

OpenCV中常用的角点检测为Harris角点和ShiTomasi角点。以OpenCV源代码文件 .\opencv\sources\samples\cpp\tutorial_code\TrackingMotion\cornerDetector_Demo.cpp为例,主要分析其中的这两种角点检测源代码。角点检测数学原理请参考我之前转载的一篇博客 http://www.cnblogs.com/ridd...

相机的像素精度,物理定位精度,亚像素定位之间的关系和进行像素的固定误差累积

用一张棋盘格来进行图像的像素精度计算,其计算程序是:#include"opencv2/opencv.hpp" using namespace cv; int main() { Mat srcimg = imread("6.bmp"); Mat gray; cvtColor(srcimg,gray,CV_RGB2GRAY); Size b...

OpenCV 学习(直线拟合)

OpenCV 学习(直线拟合)Hough 变换可以提取图像中的直线。但是提取的直线的精度不高。而很多场合下,我们需要精确的估计直线的参数,这时就需要进行直线拟合。直线拟合的方法很多,比如一元线性回归就是一种最简单的直线拟合方法。但是这种方法不适合用于提取图像中的直线。因为这种算法假设每个数据点的X 坐标是准确的,Y 坐标是带有高斯噪声的。可实际上,图像中的每个数据点的XY 坐标都是带有噪声的。下面...

OpenCV单目视觉定位(测量)系统(新增 含代码)

OpenCV单目视觉定位(测量)系统The System of Vision Location with Signal CameraAbstract:This passage mainly describes how to locate with signalcamera,which bases on OpenCV library.Key words: OpenCV; Locate;Signalc...

图像ROI与ROI操作

知识点:ROI解释:图像的 ROI(region of interest) 是指图像中感兴趣区域、在 OpenCV 中图像设置图像 ROI 区域,实现只对 ROI 区域的操作。提取不规则ROI区域的一般步骤:1、通过inRange函数生成mask2、通过与操作提取ROI #ifndef DAY16 #define DAY16 #include <opencv2/opencv.hp...

vs2013+QT,把opencv窗体嵌入qt的控件里

下面的代码演示将opencv的窗口嵌入到label里面显示。即labDisplayImg里面显示。#include <windows.h> oid QtForOpencv::OnReadimg(){ QString filename = QFileDialog::getOpenFileName(this, tr("选择图像"), "...

qtmain.lib(qtmain_win.obj) : error LNK2038: 检测到“_MSC_VER”的不匹配项: 值“1800”不匹配值“1900”问题的解决

关于这个问题其实有很多解决帖子:如下参考博客是一个不错的帖子:https://blog.csdn.net/u012814856/article/details/76343540 我遇到的问题的详细log如下:1>qtmain.lib(qtmain_win.obj) : error LNK2038: 检测到“_MSC_VER”的不匹配项: 值“1800”不匹配值“1900”(display.o...

VS2019:基于Qt+OpenCV创建项目

VS2019:基于Qt+OpenCV创建项目一、前言二、具体配置流程VS创建Qt项目插件安装需要创建VS中Qt项目配置OpenCV三、测试输出如下:四、待更新内容五、参考文档一、前言如标题所说,这篇文章是基于Qt和OpenCv来创建项目,所以 首先应该安装Qt和OpenCv,本篇文章主要阐述如何配置,安装Qt和OpenCV请参考已下文章。环境:win10,VS 2019,qt 5.12.5,ope...

opencv3.1学习笔记(27) 模板匹配

模板匹配是机器视觉里面最重要的内容之一,如果没有它,像一些定位的案子就没办法开展了。这个是需要重点研究的话题。演示代码:完全引用下贾志刚老师的代码。从效果上来看,完全没有办法和halcon的模板匹配进行比较,这个真是让人沮丧的结果。难怪群里有些朋友说,OpenCV的模板匹配想要实用,需要自己写算法。#include <opencv2/opencv.hpp> #include <...

opencv3.1学习笔记(26) 直方图反相投影

演示代码:#include <opencv2/opencv.hpp> #include <iostream> #include <math.h> using namespace std; using namespace cv; Mat src; Mat hsv; Mat hue; int bins = 12; void Hist_And_B...
会员中心
搜索
«    2024年3月    »
123
45678910
11121314151617
18192021222324
25262728293031
网站分类
标签列表
最新留言
    热门文章 | 热评文章 | 随机文章
文章归档
友情链接
  • 订阅本站的 RSS 2.0 新闻聚合
  • 扫描加本站机器视觉QQ群,验证答案为:halcon勇哥的机器视觉
  • 点击查阅微信群二维码
  • 扫描加勇哥的非标自动化群,验证答案:C#/C++/VB勇哥的非标自动化群
  • 扫描加站长微信:站长微信:abc496103864
  • 扫描加站长QQ:
  • 扫描赞赏本站:
  • 留言板:

Powered By Z-BlogPHP 1.7.2

Copyright Your skcircle.com Rights Reserved.

鄂ICP备18008319号


站长QQ:496103864 微信:abc496103864