草庐IT

C++双目测距

全部标签

opencv进行双目标定以及极线校正 python代码

opencv进行双目标定以及极线校正python代码双目标定主要使用的函数代码极线校正主要使用的函数代码效果图双目标定参考博客OpenCV相机标定全过程[OpenCV实战]38基于OpenCV的相机标定opencv立体标定函数stereoCalibrate()主要使用的函数findChessboardCorners()#棋盘格角点检测cornerSubPix()#亚像素检测calibrateCamera()#单目标定求解摄像机的内在参数和外在参数stereoCalibrate()#双目标定求解两个摄像头的内外参数矩阵,以及两个摄像头的位置关系R,T代码importcv2importosimpo

ORB-SLAM2算法6之D435i双目IR相机运行ROS版ORB-SLAM2并发布位姿pose的rostopic

文章目录0引言1D435i相机配置2新增发布双目位姿功能2.1新增d435i_stereo.cc代码2.2修改CMakeLists.txt2.3新增配置文件D435i.yaml3编译运行和结果3.1编译运行3.2结果3.3可能出现的问题0引言ORB-SLAM2算法1已成功编译安装ROS版本ORB-SLAM2到本地,以及ORB-SLAM2算法5成功用EuRoc、TUM、KITTI开源数据来运行ROS版ORB-SLAM2,并生成轨迹。但实际ROS视觉SLAM工程落地时,一般搭配传感器实时发出位姿pose的rostopic,本篇就以D435i相机的双目IR相机作为输入,运行ROS版ORB-SLAM2

Intel Realsense D455深度相机的标定及使用(二)——对内置IMU和双目相机进行标定

        标定前需先安装librealsenseSDK2.0以及realsense-ros,可参考教程:IntelRealsenseD455深度相机的标定及使用(一)——安装librealsenseSDK2.0以及realsense-ros三、IMU标定1、重力加速度自检      插入相机并静置,终端输入realsense-viewer,开启realsense-viewer左侧的MotionModule模块,将鼠标放在加速度计(Accelstream)上,观察g_norm读数是否在9.8附近。2、利用官方的rs_imu_calibration.py工具进行IMU自校准       g_

3D视觉笔记(1) - 双目视觉三维测量原理

中心投影模型(针孔相机模型)    在之前的笔记中,有讨论过针孔相机的模型和世界坐标系统的点如何投影到图像坐标系中。参考如下两篇笔记:几何角度理解相机成像过程_亦枫Leonlew的博客-CSDN博客本笔记从几何角度来理解相机的成像过程,我们生活在三维世界中,相机所捕捉到的画面是2D的,3D空间中的点是如何投影到2D平面的过程是本笔记关注的。这个过程其实和3D游戏中的透视投影过程是一样的。本笔记只要知道矩阵乘法的知识就可以理解。https://blog.csdn.net/vivo01/article/details/128252788?spm=1001.2014.3001.5502相机标定笔记(

单目测距原理与实现(代码可运行)

 Opencv3实现单目视觉测距一、前言单目视觉测距:网上有很多关于单目测距的文章,主要借鉴的是OpenCV学习笔记(二十一)——简单的单目视觉测距尝试和单目摄像机测距(python+opencv)两篇文章,在这里特别作出说明。工作环境:Ubuntu16.04+Opencv3.4.0+Pycharm单目相机:DFKAFUX236-M12二、单目测距原理单目相机测距常用或者说实用的方法就是相似三角形法,为了让大家更好地理解程序,这里简单说一下相似三角形法。相似三角形:假设我们有一个宽度为W的目标或者物体。然后我们将这个目标放在距离我们的相机为D的位置。我们用相机对物体进行拍照并且测量物体的像素宽

Openmv第五天之特征点匹配和测距

 前言回顾昨日,昨天的模板匹配方法,我认为他给人的优点就是很简单,你只需要传入模板就可以找到和模板几乎一样的目标,但是这几乎一样导致了他的局限性,那么就是你稍微大一点或者小一点,亦或是角度不对就会导致你识别不成功,但有个有趣的事情,昨天看了一个人在做模板匹配的时候,他用alloc开辟了另一个画布,然后设置为灰度,然后在这里面做模板匹配,他的题目是找出数字也就是1,2,3,4,5,6,7,8的小车,然后他先是设置阈值去找那个数字的色块blob,也就是找到所有可能有数字的色块,然后呢将这个色块放回的一些统计数据去等比例放大缩小去适应我给的模板的大小,这样就可以实现远近移动也能识别的效果了,感觉这个

【OpenCV】双目相机测距及其深度恢复原理及其算法流程

1.数学模型2.整体流程获取标定与图像数据==>stereoRectify==>initUndistortRectifyMap==>remap==>bg/sgbm恢复出视差图==>l利用数学模型求解深度图==》深度图相关的应用/点云为基础的应用。(2D==>3D的转换)3.接口解析3.1#include#include#includeusingnamespacecv;usingnamespacestd;intblockSize=0,uniquenessRatio=0,numDisparities=0;PtrStereoBM>bm=StereoBM::create(16,9);Matxyz;//

【OpenMv】测距测尺寸

一、原理(以小球为例)测距:相同尺寸,距离越近,像素点越多,所以距离与直径像素点个数成反比:K=距离*直径的像素测尺寸:相同距离,尺寸越大,直径像素点越多,所以物体尺寸与直径像素点个数成正比:实际大小=K1*直径的像素因此:需要测距的时候,只需要用同一小球,先修改物体的颜色阈值,让OpenMv能够框出小球,再在一个已知距离点打印物体的像素点长度,就可以用K=距离*直径的像素求出关系系数K,然后再通过公式打印出距离。需要测量大小的时候,先测出小球的直径,然后在一固定位置(测量任何尺寸必须固定在同一位置)打印小球的直径像素点,再通过实际大小=K1*直径的像素公式求出比例系数K1,然后通过公式打印出

输入捕获模块的使用–超声波测距

输入捕获模块的使用–超声波测距@(MSP432P401R)输入捕获的配置基本默认即可输入捕获的API的使用参数Capture_Mode即捕获模式,经实际测试,MSP432P401R只能使用前三种模式Capture_CallBackFxn即回调函数Capture_PeriodUnits即捕获周期单位函数表全局配置,在ti_drivers_config.c文件中生成功能函数文档链接:file:///D:/MSP%20SDK/simplelink_msp432p4_sdk_3_40_01_02/docs/tidrivers/doxygen/html/_capture_8h.html#a87e62f4

基于STM32F103C8T6的超声波测距应用

#一、超声波HC_SR04简介#二、超声波工作原理#三、超声波测距步骤#四、硬件接线#五、项目代码一、超声波HC_SR04简介超声波传感器模块上面通常有两个超声波元器件,一个用于发射,一个用于接收。电路板上有四个引脚:VCC、GND、Trig(触发)、Echo(回应)工作电压与电流:5V,15mA感应距离:2~400cm感测角度:不小于15度被测物体的面积不要小于50平方厘米并且尽量平整具备温度补偿电路超声波模块的触发脚(Trig)输入10us以上的高电位,即可发射超声波,发射超声波后,与接收到收回的超声波之前,“响应“脚(Echo)位呈现高电平。因此,程序可以“响应”脚位(Echo)的高电平