少有人走的路

勇哥的工业自动化技术网站

python知识导航贴,持续更新

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

netMarketing类库: 类库说明

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

C++相关导航贴,持续更新

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

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

本站连载贴子系列,持续更新中……

勇哥的免费视频教程清单

勇哥在B站发布的视频清单

运动控制专题,持续更新

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

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

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

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

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

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

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

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

关于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的那些事——相机姿态更新》里讲到的相机姿态更新至少使用4组2D/3D点对,

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

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

工业相机镜头偏振镜片的主要类型及光学参数术语

偏振镜作用机器视觉中使用偏振镜可以有效降低成像时产生的眩光或热点,加强对比度。它只允许振动方向平行于其允许方向的光能通过,垂直分量被截止。偏光镜可用于测量磁场、温度、分子结构、化学相互作用或声波振动的变化。 当光线通过偏光镜时,光线的偏振态,或其电场的X和Y元件的振幅将会出现变化。 偏振光可以是线偏振、面偏振、圆偏振或椭圆偏振光。下图中,上面一行为原图,下面一行为加了偏振镜的图像。偏振镜片分类在光学行业中主要的偏振镜片有两种类型:二向色性偏振镜片、晶体偏振镜片以及线栅偏振镜片等。偏振片使用场合二

频闪控制器+光源的应用说明,以及飞拍相机选型要注意的地方

频闪光源控制器常用到飞拍要求的视觉应用中。下面是一些经验说明。1、光源是一样的,但是光源控制器分普通控制器和频闪控制器。2、频闪控制器点亮光源的时间是很短的,一般小于1ms。亮度是普通控制器的2-3倍,一般是2.5倍左右。如下图:从外观上来看,频闪控制器跟一般控制器没什么不同。区别是瞬间大电流高亮度点亮光源。它不能常亮,这样光源寿命会大降。3、光源点亮一般需要20us才能达到稳定亮度,所以相机在光源点亮20us之后才曝光拍照。光源是瞬时熄灭,时间us级别。4、大恒的水星相机  &nbs

维视相机SDK例程:图像采集、保存、缩放、翻转、旋转

这个例子中,勇哥使用的相机型号为:型号:MV-EM500M,使用的GigE接口。这个例程演示了利用相机的SDK进行图像采集、保存、缩放、翻转、旋转。采集的图像(实时的)是直接写到了form窗口上,利用了窗体的Paint事件。代码:using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using Syst
«    2025年11月    »
12
3456789
10111213141516
17181920212223
24252627282930
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
文章归档
网站收藏
友情链接

Powered By Z-BlogPHP 1.7.3

Copyright www.skcircle.com Rights Reserved.

鄂ICP备18008319号


站长QQ:496103864 微信:abc496103864