自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(79)
  • 收藏
  • 关注

原创 SLAM--三角化ceres 优化

ceres 优化三角化过程

2024-07-02 09:40:30 737

原创 MATLAB--椭圆拟合算法

xcell为x坐标数组,ycell为y坐标数组;

2024-04-10 23:07:47 772

原创 《C++(四)--线程同步》

线程同步

2024-03-16 16:13:29 326

原创 Example: use raspberry pi 4 control multiple motors(tb660)

【代码】Example: use raspberry pi 4 control multiple motors(tb660)

2023-12-05 21:48:24 455

原创 Overview: Install ros and ubuntu20.04 on Raspberry pi 4

【代码】Overview: Install ros and ubuntu20.04 on Raspberry pi 4。

2023-12-05 21:36:03 281

原创 Communication between arduino and pc through serial

【代码】Communication between arduino and pc through serial。

2023-11-17 17:47:55 197

原创 Omega haptic device control the UR robot arm

HapticDevice.h:HapticDevice.cpp:2. Control the UR robotWe can subscribe the topic from the omega device, define corresponding callback functions to obtain the real-time values of haptic position, velocity and clipper angle etc.Referencehttps://github.

2023-11-17 17:26:29 222

原创 impedance control for robot arm through C++

【代码】impedance control for robot arm through C++

2023-11-17 16:49:18 130

原创 ROS program for SRI force sensor

codes for SRI

2023-10-25 21:07:59 241

原创 ROI tracking by using OpenCV

ROI tracking by using OpenCV。

2023-09-19 22:44:32 308

原创 SLAM--Geometric jacobian of UR series.

vJq˙​。

2023-04-28 16:41:58 790 1

原创 SLAM--ceres solver

SLAM--ceres solver。

2023-04-21 16:03:02 731

原创 Non-linear Optimization

Resolve least square problem.

2023-04-18 21:11:45 597

原创 MATLAB--列文伯格LM优化算法

输入参数:误差函数,需要优化的形参,初值。

2022-10-16 20:17:58 3506 3

原创 SLAM--位姿估计 (扩展卡尔曼滤波EKF/高斯牛顿非线性优化)

目录一、扩展卡尔曼滤波EKF求解1.矩阵伴随基础2.卡尔曼滤波基础3.位姿推导二、非线性优化(高斯牛顿迭代)1.高斯牛顿迭代基础2.推导一、扩展卡尔曼滤波EKF求解1.矩阵伴随基础李代数的伴随矩阵:ad(ξ∧)=ξ⋏=[ρϕ]⋏=[ϕ∧ρ∧0ϕ∧]ad(\xi^\land )=\xi ^⋏=\begin{bmatrix} \rho \\ \phi \end{bmatrix} ^ ⋏= \begin{bmatrix} \phi^ \land \quad \rho^\land \\ 0 \quad

2022-04-27 20:41:17 1247

原创 SLAM--卡尔曼滤波、粒子滤波

目录一、卡尔曼滤波1、条件高斯PDF2.广义卡尔曼步骤:3.扩展卡尔曼滤波EKF二、粒子滤波1.贝叶斯滤波2. 粒子滤波算法一、卡尔曼滤波1、条件高斯PDF存在多元正态分布(x,y)(x,y)(x,y),则联合高斯密度函数为:p(x,y)=N([μxμy],[∑xx∑xy∑yx∑yy])(3)p(x,y)=\bm N(\begin{bmatrix} \bm \mu _x\\ \\\bm \mu _y \end{bmatrix},\begin{bmatrix} \bm {\sum} _{xx}&a

2022-04-23 00:16:46 1527

原创 VTK(五)---内窥镜漫游(基于VMTK血管中心线提取)

在使用VMTK血管中心线提取之后,实现内窥镜的漫游:VTK(四)—VMTK血管中心线提取本文测试模型:lumen.stl:https://github.com/jackyko1991/Vessel-Centerline-Extraction/tree/master/test_data/right前言对提取的中心线进行曲线插值,使得路径平滑,并跟随中心线完成内窥镜的漫游。实现效果:代码CMakeLists.txt:cmake_minimum_required(VERSION 3.5)

2022-03-14 20:12:00 2562

原创 VTK(四)---VMTK血管中心线提取

测试模型获取:lumen.stl代码:CMakeLists.txtcmake_minimum_required(VERSION 3.5)project(VesselCenterline LANGUAGES CXX)set(CMAKE_CXX_STANDARD 11)set(CMAKE_CXX_STANDARD_REQUIRED ON)# VMTKfind_package( VMTK REQUIRED)include(${VMTK_USE_FILE})# ITKfind_pack

2022-03-14 10:56:37 4908 45

原创 解决PCL 编译报错:undefined reference to `pcl::PCLBase<pcl::PointXYZRGBA>:: XXX

环境:ubuntu 20.04 , PCL 1.11.0利用CMake编译PCL时编译报错:/usr/bin/ld: CMakeFiles/MYSLAM.dir/src/voslam.cpp.o:(.data.rel.ro._ZTVN3pcl7PCLBaseINS_12PointXYZRGBAEEE[_ZTVN3pcl7PCLBaseINS_12PointXYZRGBAEEE]+0x20): undefined reference to `pcl::PCLBase<pcl::PointXYZRG

2022-03-13 16:25:02 5452 1

原创 解决ubuntu 20.04 打不开设置的问题

解决 ubuntu 20.04 打不开设置的问题问题在终端中打开设置的方法是 :gnome-control-center如果出现:gnome-control-center: symbol lookup error: /lib/x86_64-linux-gnu/libwebkit2gtk-4.0.so.37: undefined symbol: gst_gl_display_x11_new_with_display很有可能是系统或者是用户自己更新了gst-plugins-base,导致版本太高出

2022-03-12 20:14:42 11533 4

原创 VTK(三)---在Linux系统上配置NDI Aurora磁导航API(用于手术导航系统的开发)

在linux下配置NDI电磁导航的API记录:NDI API及相关依赖地址:https://github.com/zouyuelin/ndicapi目录一、配置API1.配置USB串口2.编译gst-plugins-base:3.这里有两个API版本,先编译ndicapi:4.编译NDI-master二、测试代码三、最后一、配置API1.配置USB串口将70-ttyusb.rules放到/etc/udev/rules.d/目录下,重新插入串口并执行:sudo usermod -aG dialo

2022-03-09 21:26:38 2292 5

原创 VTK(二)---相机外参矩阵Tcw转VTK相机,构建VR虚拟相机

 VR技术:在VTK中构建一个与真实世界一样的虚拟相机,具有对应的运动映射。  一、解析当我们使用SLAM技术获得相机的位姿Tcw时(即从世界坐标到相机坐标的映射矩阵),我们需要在VTK中建立一个一模一样的相机,并建立相同的运动映射。相机的位姿总共有六个自由度,在VTK中也应该有六个自由度。我们可以利用vtk的三个函数来进行设定:aCamera->setFocalPoint(); //f=2aCamera->setPosition(); //f=3

2022-03-05 11:08:37 1930 4

原创 SLAM--intel realsense2在ORB SLAM2 和 ORB SLAM3下建图和重定位(ubuntu 20.04, opencv 4.2.0 以上)

用intel 的realsense相机实现orb-slam2(ubuntu 20.04系统):链接地址:github:https://github.com/zouyuelin/ORB_SLAM2_Changed 建图和重定位效果步骤1.编译g2ocd g2o_with_orbslam2/mkdir buildcd buildmake -jsudo make install2.构建ROS工作空间mkdir -p ~/catkin_ws/srccd ~/catki

2022-02-24 16:20:39 5275 50

原创 C++ 上用 ONNXruntime 部署自己的模型

利用C++ ONNXruntime部署自己的模型,这里用Keras搭建好的一个网络模型来举例,转换为onnx的文件,在C++上进行部署,另外可以利用tensorRT加速。目录一、模型的准备二、配置ONNXruntime三、模型的部署1. 模型的初始化设置2. 构建推理构建推理函数computPoseDNN()步骤:函数具体代码:四、应用参考一、模型的准备搭建网络模型训练:tensorflow keras 搭建相机位姿估计网络–例网络的输入输出为:网络的输入: [image_ref , ima

2022-01-21 17:56:53 20176 11

原创 tensorflow keras 搭建相机位姿估计网络--例

主要展示keras 的使用方法,搭建网络模型的步骤。目录概要一、数据集的处理二、网络模型的搭建三、模型的训练四、加载保存的模型概要这个网络是利用两帧图像,预测相机的位姿变换矩阵,总共6个自由度网络的输入: [image_ref , image_cur]网络的输出: [tx , ty , tz , roll , pitch , yaw] 一、数据集的处理数据集的格式:# image_ref image_cur tx ty tz roll(x) pitch(

2022-01-21 15:40:32 1436 1

原创 SLAM--搭建自己的视觉里程计VO-RGBD相机(一)

自己搭建SLAM系统—视觉里程计,没有包括回环检测和BA 位姿优化。目录一、 视觉里程计VO二、具体代码三、调用代码实现参考一、 视觉里程计VO定义camera类:用于相机相关的参数和坐标系变换方法:class camera{public: typedef shared_ptr<camera> Ptr; camera(){} static cv::FileStorage configfile; static cv::Mat K; //Mat类

2022-01-21 12:12:39 3706 1

原创 tensorflow 2.5.0 ( keras )搭建wgan-gp 和 div

使用tensorflow 2.5.0搭建wgan网络:代码:import argparsefrom inspect import classify_class_attrsimport tensorflow as tfimport tensorflow.keras as Kimport numpy as npimport cv2 as cvimport osimport time#采用静态图的形式,可关闭急切模式#tf.compat.v1.disable_eager_execution

2022-01-05 17:31:51 1741 2

原创 pytorch 网络搭建简要步骤

目录一、数据集加载二、搭建模型1.继承torch.nn.Module2.利用容器torch.nn.Sequential3.利用现有的预训练网络三、配置模型四、训练模型参考链接一、数据集加载用DataLoader和ImageFolder函数from torchvision.datasets import ImageFolderfrom torchvision import transformsfrom torch.utils.data import DataLoaderdata_transfor

2021-12-28 23:23:39 2233

原创 tensorflow Keras的搭建训练步骤

keras搭建训练模型步骤

2021-12-28 18:19:56 2398 3

原创 《C++(三)--多线程方法总结》

一、利用std::thread 实现多线程1.针对普通函数的多线程std::thread thread1(fun1,参数1,参数2,...,参数n);std::thread thread2(fun2,参数1,参数2,...,参数n);使用join()函数阻塞等待线程执行完:thread1.join();thread2.join();使用detach()分离子线程,主线程不被阻塞继续执行thread1.detach();thread2.detach();2.针对类的成员函数实现多线程

2021-11-15 13:35:28 968

原创 ubuntu 20.04上配置 QT_ROS的插件

github源码位置:https://github.com/ros-industrial/ros_qtc_plugin/releases下载:ROSProjectManager-0.4.1-Linux-x86_64.zip 以及 Source code (zip) 两个文件;

2021-11-01 21:11:05 5687 32

原创 在C++上利用onnxruntime (CUDA)和 opencv 部署模型onnx

概述将得到的模型转化为onnx模型,加载到c++中运行,来完成模型的部署,下载并安装onnxruntime;CMakeLists.txt:cmake_minimum_required(VERSION 2.8)project(test)#使用clang++编译器set(CMAKE_CXX_COMPILER clang++)set(CMAKE_BUILD_TYPE "Release")set(CMAKE_INCLUDE_CURRENT_DIR ON)#find the opencv and

2021-10-30 15:55:36 12894 12

原创 在ubuntu 20.04 上 安装 onnxruntime CUDA

onnxruntime 可以加速模型的部署,同时可以跨框架,例如源码项目位置:https://github.com/microsoft/onnxruntime里面有一些依赖,这里直接打包,提供百度网盘的下载:链接:https://pan.baidu.com/s/1sTryvfX0sLKIoHm8aMm4Sg 提取码:be9o解压后:...

2021-10-29 15:17:17 3857 4

原创 MASK RCNN在tensorflow 2.5中运行

原mask rcnn的tf版本是1.13,这里提供tf2.5的mask rcnn源代码:源github地址:https://github.com/matterport/Mask_RCNNtf2.5版本 github地址:https://github.com/zouyuelin/MASK_RCNN_2.5.0目录一、安装依赖二、数据集配置三、修改train.py四、训练五、测试一、安装依赖pip install -r requirements.txt -i https://pypi.tuna.t

2021-10-10 14:05:28 3205 39

原创 SLAM--深度滤波器

目录一、归一化积二、一、归一化积设p1(x)p_1(x)p1​(x)和p2(x)p_2(x)p2​(x)是两个不同的概率密度函数,归一化积为:p(x)=η⋅p1(x)p2(x)p(x)=\eta \cdot p_1(x)p_2(x)p(x)=η⋅p1​(x)p2​(x)其中:η=∫p1(x)p2(x)dx\eta=\int p_1(x)p_2(x)\mathrm{d}xη=∫p1​(x)p2​(x)dxη\etaη是为了满足概率公理的归一化常数。定理:对于p(x∣y1,y2)p(x|y

2021-08-11 11:32:52 590 1

原创 OpenCV :(-5:Bad argument) Matrix operand is an empty matrix. in function ‘checkOperandsExist‘

terminate called after throwing an instance of ‘cv::Exception’what(): OpenCV(4.3.0) /home/zyl/ubuntu/opencv/opencv4.3.0/opencv-4.3.0/modules/core/src/matrix_expressions.cpp:24: error: (-5:Bad argument) Matrix operand is an empty matrix. in function ‘chec

2021-08-07 18:00:00 4810

原创 SLAM--LSD_SLAM在高版本系统中运行(ubuntu20.04 ROS-noetic)

LSD_SLAM原地址:https://github.com/tum-vision/lsd_slam修改后github地址:https://github.com/zouyuelin/LSD_SLAM_Changed.gitLSD_ROOM数据集: https://vision.in.tum.de/research/vslam/lsdslam1.下载usb_cam到ROS的工作目录:cd ~/catkin_ws/src/git clone https://github.com/bosch-ros

2021-08-04 15:41:34 1183 7

原创 ROS:ModuleNotFoundError: No module named ‘rospkg‘

一般是安装了anaconda 导致的;方法一:不关闭conda,那么就需要安装所需的rospkg包及其他依赖:pip install catkin-tools rospkg pyyaml empy numpy这样就可以运行了;  方法二:首先,关闭anaconda:conda deactivate这句话的意思就是不再使用conda的相关库以及python,用系统的python来操作;然后,再安装依赖;sudo apt-get install pippip

2021-08-03 20:04:39 10667 7

原创 SLAM--单目尺度漂移(相似变换群Sim3)

参考文献1.Horn, Berthold, K, et al. Closed-form solution of absolute orientation using unit quaternions[J]. Journal of the Optical Society of America A, 1987.2.Strasdat H . Local Accuracy and Global Consistency for Efficient SLAM[J]. Imperial College London,

2021-08-02 14:48:35 1735

原创 SLAM--单双目相机标定

目录一、单目标定标定原理标定过程去畸变代码二、双目标定标定原理标定过程一、单目标定标定原理对于单目的相机,存在投影关系:Puv=1sK∗[Rcw ∣ Tcw]∗Pw 即[xy]=1sK⋅[r1  r2  r3  t]⋅[XYZ1]P_{uv}=\frac 1 {s} K*[R_{cw}\space|\space T_{cw}]*P_w\\~\\即\quad\begin{bmatrix} x\\y\end{b

2021-07-26 21:58:43 1845

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除