- 博客(22)
- 资源 (2)
- 收藏
- 关注
原创 C++ ——一文读懂:struct和typedef struct
C中定义一个结构体类型要用typedef:typedef struct Student { int a; }Stu;于是在声明变量的时候就可:Stu stu1;(如果没有typedef就必须用struct Student stu1;来声明)也可以不写Studenttypedef struct { int a; }Stu;C++定义...
2019-09-25 17:03:18 951
原创 4. 寻找两个有序数组的中位数
给定两个大小为 m 和 n 的有序数组 nums1 和 nums2。请你找出这两个有序数组的中位数,并且要求算法的时间复杂度为 O(log(m + n))。你可以假设 nums1 和 nums2 不会同时为空。示例 1:nums1 = [1, 3]nums2 = [2]则中位数是 2.0示例 2:nums1 = [1, 2]nums2 = [3, 4]则中位数是 (2 +...
2019-09-24 16:58:14 77
原创 手撕自动驾驶算法——四元素插值
四元数插值常见的有线性插值、球面线性插值等线性插值(Linear Interpolation,简称Lerp)四元数表示旋转时是单位四元数,这种插值方式,相当于我们是沿着一条直线(也就是圆上的一个弦)进行插值的,这样插值出来的四元数不是单位四元数归一化线性插值(Normalized LinearInterpolation,简称Nlerp)有其他问题的。如下图所示,在同等时间内, vt ...
2019-09-23 14:30:42 2260 2
原创 81. 搜索旋转排序数组 II
假设按照升序排序的数组在预先未知的某个点上进行了旋转。( 例如,数组 [0,0,1,2,2,5,6] 可能变为 [2,5,6,0,0,1,2] )。编写一个函数来判断给定的目标值是否存在于数组中。若存在返回 true,否则返回 false。示例 1:输入: nums = [2,5,6,0,0,1,2], target = 0输出: true示例 2:输入: nums = [2,5,...
2019-09-23 11:56:23 165
原创 Opencv学习(18)—cv::solvePnPRansac
bool cv::solvePnPRansac ( InputArray objectPoints, InputArray imagePoints, InputArray cameraMatrix, InputArray distCoeffs, OutputArray rvec, OutputArray tvec, bool useExtri...
2019-09-16 11:51:08 2168
原创 SLAM——入门到放弃:g2o定义顶点
https://mp.weixin.qq.com/s/12V8iloLwVRPahE36OIPcwg2o的顶点(Vertex) 参数D是int 类型的,表示vertex的最小维度,比如3D空间中旋转是3维的,那么这里 D = 3T是待估计vertex的数据类型,比如用四元数表达三维旋转的话,T就是Quaternion 类型细看一下D, T,D 在源码里面是这样注释的static ...
2019-09-14 14:57:57 2380 3
原创 3D点云系列———pcl:点云网格化
参考:https://mp.weixin.qq.com/s/FfHkVY-lmlOSf4jKoZqjEA什么是网格网格主要用于计算机图形学中,有三角、四角网格等很多种。计算机图形学中的网格处理绝大部分都是基于三角网格的,三角网格在图形学和三维建模中使用的非常广泛,用来模拟复杂物体的表面,如建筑、车辆、动物等,你看下图中的兔子、球等模型都是基于三角网格的三角形表示网格也叫三角剖分。它有如下几...
2019-09-13 15:45:33 17830 8
原创 3D点云系列——pcl:点云平滑及法线估计
// 对点云重采样 pcl::search::KdTree<PointT>::Ptr treeSampling (new pcl::search::KdTree<PointT>); // 创建用于最近邻搜索的KD-Treepcl::PointCloud<PointT> mls_points; //输出MLSpcl::MovingLeastSquare...
2019-09-13 12:24:17 8715 8
原创 3D点云系列——pcl:点云滤波
参考:PCL经典代码赏析四:点云滤波PCL官网:http://docs.pointclouds.org/trunk/group__filters.html//先对其进行下采样,再进行滤波,最后输出滤波后的结果及被滤掉的离群点。#include <pcl/point_types.h>#include <pcl/io/io.h>#include <pcl/i...
2019-09-12 20:46:53 1029 1
原创 Opencv学习(16)—绘图函数fillConvexPoly()
void cv::fillConvexPoly ( InputOutputArray img,InputArray points,const Scalar & color,int lineType = LINE_8,int shift = 0 ) Python:img = cv.fillConvexPoly( img, points, color[, lineT...
2019-09-11 19:35:27 1823
原创 Opencv学习(15)—warpPerspective()
理论warpPerspective()函数主要作用:对图像进行透视变换,就是变形void cv::warpPerspective ( InputArray src,OutputArray dst,InputArray M,Size dsize,int flags = INTER_LINEAR,int borderMode = BORDER_CONSTANT,con...
2019-09-11 18:49:13 19003 1
原创 Opencv学习(14)——鼠标响应setMouseCallback()
setMouseCallback()void cv::setMouseCallback ( const String & winname,MouseCallback onMouse,void * userdata = 0 ) 参数:winname:窗口的名字onMouse:鼠标响应函数,回调函数。指定窗口里每次鼠标时间发生的时候,被调用的函数指针。 这个函数的原型应...
2019-09-11 17:04:56 2228 1
原创 Opencv学习(13)—极线的绘制
void cv::computeCorrespondEpilines ( InputArray points,int whichImage,InputArray F,OutputArray lines ) Python:lines = cv.computeCorrespondEpilines( points, whichImage, F[, lines] )#incl...
2019-09-11 15:17:47 5859
原创 Opencv学习(13)——scalar通道像素填充
Scalar定义可存放1—4个数值的数值,其结构体如下:typedef struct Scalar{ double val[4];}Scalar;例如:Scalar s;如果使用的图像是1通道的,则s.val[0]中存储数据如果使用的图像是3通道的,则s.val[0],s.val[1],s.val[2]中存储数据Scalar常用的使用场景如下:Mat M(7,7,CV_3...
2019-09-10 22:02:32 635
原创 Opencv学习(12)——cv::Rodrigues()函数
罗德里格斯公式转轴 n 是矩阵 R 特征值 1 对应的特征向量。求解此方程,再归一化,就得到了旋转轴。int cvRodrigues2( const CvMat* src,CvMat* dst,CvMat* jacobian=0 );参数说明:src——为输入的旋转向量(3x1或者1x3)或者旋转矩阵(3x3)。该参数向量表示其旋转的角度,用向量长度表示。dst——为输出的旋转矩阵...
2019-09-09 22:35:38 21148
原创 Opencv学习(11)——PNP求解函数solvePnP()
void solvePnP(InputArray objectPoints, InputArray imagePoints, InputArray cameraMatrix, InputArray distCoeffs, OutputArray rvec, OutputArray tvec, bool useExtrinsicGuess=false, int flags = CV_ITERATIV...
2019-09-09 22:29:17 10286 1
原创 Opencv学习(10)——图像Mat数据的访问-at/ptr/iterator
OpenCV3学习(2.1)——图像Mat数据的访问-at/ptr/iterator[opencv3::Mat元素的获取、at、ptr](https://blog.csdn.net/BoaHock/article/details/80790323)OpenCV Mat数据类型指针ptr的使用...
2019-09-09 20:30:02 585
原创 Opencv学习(9)——triangulatePoints()
triangulatePoints()void cv::triangulatePoints ( InputArray projMatr1,InputArray projMatr2,InputArray projPoints1,InputArray projPoints2,OutputArray points4D ) Python:points4D = cv.triang...
2019-09-09 20:16:24 11285 4
原创 Opencv学习(7)——cv::recoverPose()
Recover relative camera rotation and translation from an estimated essential matrix and the corresponding points in two images包含头文件:#include <opencv2/calib3d.hpp>recoverPose()函数解析int cv::re...
2019-09-09 16:15:41 6622
原创 C++ ——一文读懂:STL库vector
参考:https://www.runoob.com/w3cnote/cpp-vector-container-analysis.html一、什么是vector?向量(Vector)是一个封装了动态大小数组的顺序容器(Sequence Container)。跟任意其它类型容器一样,它能够存放各种类型的对象。可以简单的认为,向量是一个能够存放任意类型的动态数组。二、容器特性顺序序列顺序容...
2019-09-02 22:17:15 354
地面分割方法:基于同心区域的区域地面分割和地面似然估计
2022-04-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人