- 博客(41)
- 收藏
- 关注
原创 ChArUco码检测代码
本篇文章主要给出使用opencv ChArUco码检测的代码,鉴于自身水平所限,如有错误,欢迎批评指正。环境:vs2015 ,opencv3.4.6,opencv3.4.6_contrib。
2024-11-19 14:56:05
330
原创 ArUco码检测代码
本篇文章主要给出使用opencv ArUco码检测的代码,鉴于自身水平所限,如有错误,欢迎批评指正。环境:vs2015 ,opencv3.4.6,opencv3.4.6_contrib。
2024-11-19 14:51:55
177
原创 OpenCV双目立体视觉重建
本篇文章主要给出使用opencv sgbm重建三维点云的代码,鉴于自身水平所限,如有错误,欢迎批评指正。环境:vs2015 ,opencv3.4.6,pcl1.8.0。
2024-11-16 16:13:30
590
原创 动态二值化代码(Niblack)
本篇文章主要给出Niblack动态二值化代码,鉴于自身水平所限,如有错误,欢迎批评指正。(欢迎进Q群交流:874653199)
2024-11-10 08:23:28
190
原创 动态二值化代码(Bernsen)
本篇文章主要给出Bernsen动态二值化代码,鉴于自身水平所限,如有错误,欢迎批评指正。(欢迎进Q群交流:874653199)
2024-11-10 08:20:50
254
原创 光平面标定代码
本篇文章主要给出光平面标定代码,鉴于自身水平所限,如有错误,欢迎批评指正。(欢迎进Q群交流:874653199)数据分为棋盘格数据和激光条数据,激光条数据为在第22个位姿至第26个位姿下打在棋盘格标定板上采集的图像。
2024-10-14 20:54:54
632
原创 组合式二值编码
论文名称:《A Practical Approach to 3D Scanning in the Presence ofInterreflections, Subsurface Scattering and Defocus》简介:组合式二值编码(包含传统格雷码,XOR-02,XOR-04,minSW),可测透明高反物体(欢迎进Q群交流:874653199)。
2024-10-14 20:52:01
224
原创 结构光编解码—正反格雷码解码代码
本篇文章主要给出正反格雷码的解码代码,鉴于自身水平所限,如有错误,欢迎批评指正。(欢迎进Q群交流:874653199)
2024-10-02 22:02:53
433
原创 TOF系列—深度图滤波
将前景中梯度大于阈值2的像素点对应的深度值置零;IR过曝滤除:将IR值大于指定阈值像素的深度值置为零,由于像素点过曝会影响周围像素,所以同时将过曝点周围的像素深度值置零,经验长度为2;组合去噪可以有效的弥补各种方法的缺点,对于复杂场景,组合去噪删除了绝大部分的噪点,同时又尽可能多的保留了有效点数据。Sobel边缘去噪:边缘通常是物体交界处,会产生一定的噪点,利用sobel进行边缘检测,并将边缘点去除;连通域面积去噪:检测深度图中的连通域,并计算其面积,将面积小于阈值的连通域中的像素的对应深度值置零;
2024-09-27 23:04:02
1148
原创 线结构光测量系统标定--导轨
传感器的标定主要为相机标定(为了增加景深,镜头偏转,使用沙姆定律对相机进行标定),光平面标定(高精度测量考虑光平面为曲面等情况)。相机标定参考相机标定专栏的博文,光平面标定参考线结构光专栏光平面标定博文。光平面标定原理可查看之前的博文《光平面标定》,光条中心提取可参考线结构光专栏光条中心提取系列的文章,相机标定参考相机标定专栏中的博文。线结构光测量系统(指一个线结构光传感器与一个一维导轨平台组成的测量系统)的标定主要可分为两部分,一是线结构光传感器本身的标定,二是线结构光传感器与一维导轨平台之间的标定。
2024-09-11 21:48:51
690
1
原创 光条中心提取代码
本篇文章主要给出极大值法,灰度重心法及steger方法光条中心提取的代码,代码及方法未做任何优化处理,鉴于自身水平所限,如有错误,欢迎批评指正。(欢迎进Q群交流:874653199)
2024-09-07 01:02:55
258
原创 结构光--投影仪标定
物平面坐标法是指将生成一幅已知分辨率的棋盘格(其他图案特征也可以)图像,每个角点的坐标已知,只需要求取棋盘格在投影平面的物理坐标,那么就可以用相机标定的方法对投影仪进行标定。像平面坐标法是指通过向标定板投射一系列编码图像,计算标定板中特征点在投影仪像平面坐标系中的坐标,然后使用相机标定的方法对投影仪进行标定。相较于相机标定,投影仪的标定更为复杂,原因为投影仪只能投射图像,无法采集图像,也就无法和标定板建立相应的联系,从而导致无法进行标定。如果能让投影仪采集到标定板的相关信息,那么则可对投影仪进行标定。
2024-09-01 15:36:21
978
原创 TOF系列--iTOF标定
从iTOF芯片获取到原始数据后,需要将原始数据进行与标定参数进行一系列运算来获取深度图及点云数据。标定参数是指原始数据至深度图这一计算过程中必不可缺的参数。iTOF的标定主要可分为以下四部分:1.相机标定;
2024-08-24 18:13:54
895
2
原创 相机标定实战--圆点标定板标定代码
相机标定原理可查看张正友相机标定的论文,圆点检测原理可查看opencv的相关文档。标定板使用白底黑圆点标定板。(欢迎进Q群交流:874653199)cpp文件circleGridCalibration.cpp。头文件circleGridCalibration.h。测试demo main.cpp。转载请声明来源,免费内容请勿收费。
2024-08-24 14:49:54
679
4
原创 TOF系列--iTOF简介
因此,高环境光分量会降低测量的信噪比。如果希望扩展可测量的距离,可以降低连续调制波频率f,但是这会增大测量的误差,如公式8。多频技术是增加一个或者多个频率调制波来混频,每个调制波测量都有不同的不明确的距离,但是真实距离就是多个频率调制波共同测量到的那个值,该位置对应频率也就是多个频率的最大公约数,称为beat frequency 击打频率。可以看到,当N=4 时,sin() 和cos()系数简单等于-1,0,1,而当N≠ 4 时,sin() 和cos()系数不再等于-1,0,1,而是对应正、余弦值。
2024-08-23 16:26:14
2835
原创 结构光编解码--正弦光栅构造代码
以下代码为正弦光栅构造代码,该代码按需修改图像分辨率及频率,即可获得自己所需的正弦光栅图。(欢迎进Q群交流:874653199)
2024-08-21 17:24:15
291
原创 相机标定实战—3D靶标标定代码
相机标定原理可查看之前的文章《相机标定实战—3D靶标标定》,以下代码为3D靶标标定相机标定的代码,该代码需根据接口替换相应的参数,替换完后即可正常运行。(欢迎进Q群交流:874653199)cpp文件 calibration3DTarget.cpp。头文件 calibration3DTarget.h。头文件 types.h。测试demo main.cpp。
2024-08-16 18:56:22
426
原创 相机标定实战—棋盘格标定代码
相机标定原理可查看之前的文章《相机标定实战—棋盘格标定板》,以下代码为棋盘格标定板相机标定的代码,该代码需根据接口替换相应的参数,替换完后即可正常运行。(欢迎进Q群交流:874653199)#pragma once#include<iostream>#include<opencv2\core\core.hpp>namespace chessboardCalibrate{ //针孔模型-单相机标定 void monoCalibratePinhole
2024-08-11 18:26:33
447
原创 结构光编解码-格雷码+四步相移代码
格雷码+四步相移原理可查看之前的文章《结构光编解码-格雷码+四步相移》,以下代码格雷码+四步相移解相位的代码,该代码需修改图像路径及图像格式,格雷码位数可根据实际需求替换,替换完后即可正常运行。(欢迎进Q群交流:874653199)
2024-08-11 16:31:46
419
原创 光条中心提取-steger代码
Steger光条中心提取原理可查看之前的文章《光条中心提取-steger》,以下Steger光条中心提取为代码,该代码需修改图像路径,根据实际需求替换高斯核,替换完后即可正常运行。(欢迎进Q群交流:874653199)
2024-08-11 00:10:02
371
原创 结构光编解码-格雷码+四步相移
相移法一般需要三张以上的相移图,对系统的随机噪声具有较好的抑制作用,且对 N-1 次以下谐波误差不敏感,并可针对每个像素单独求解相位。将格雷码转换成标准二进制码,首先保持格雷码最左边的一位码字不变,从左边第二位码字起,将每位码字与前一位解码后的值进行异或运算。格雷码可以分为RGB颜色格雷码和二值格雷码,RGB颜色格雷码使用蓝色和红色来代替黑白编码条纹, 同时在蓝红条纹之间加入一个像素宽的绿色条纹[。格雷码是一种可靠性编码,采用的是一种将错误最小化的编码方式,具有抗干扰性,高可靠性,高稳定性等特点。
2024-08-02 23:06:00
2090
2
原创 结构光编解码-多频外差
基于多频外差的相位展开算法采用了不同空间频率的条纹,某点的相位依靠不同频率的折叠相位展开,对被测物体表面颜色不敏感,且每个频率的折叠相位均可用于计算绝对相位,根据误差平均效应,加权平均后的绝对相位的精度更高。条纹数为 100 与 90 的图像得到条纹数为 10 的相位图,条纹数为 99 与 90 的图像得到条纹是数为 9 的相位图,最后,条纹数为 10 与 9 的图像得到条纹数为 1 的图像,即完成了相位展开。一般来说,四步相移比三步相移有更高的精度和稳定性,且计算简单,更广泛的应用于折叠相位求解中。
2024-08-02 22:49:10
1977
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人