ORBSLAM2中ORB特征提取的特点 ORBSLAM2中通过对OpenCV中的ORB特征点提取类进行修改,对图像进行分块提取,而后划分节点,使得每个节点中保存的特征点性能是该节点所有特征点中最好的. 可能按照上面说的方式,大家不太能理解. 这么说吧.将铺满苹果的桌子进行画格子,然后每个格子中就会有不同数量的苹果,在每个格子中选出最好吃的苹果,格子中其他的苹果全部扔掉.(虽然有点可惜,但是大局为重嘛),那么原先摆满苹果的桌子(如图1所示),现在就剩下每个格子一个苹果的桌子,尽管苹果少了很多,但是…
ORBSLAM2中使用ORB描述子的方法 经典的视觉SLAM系统大体分为两种:其一是基于特征点法的,其二是基于直接法的.那么本文主要就讲特征点法的SLAM. 基于特征点法的视觉SLAM系统典型的有PTAM,ORBSLAM等.本文主要围绕ORBSLAM2的方案来阐述特征点法SLAM,因为ORBSLAM2可以说是特征点法SLAM的巅峰之作.ORBSLAM2采用三个主要线程:跟踪,局部建图和闭环以及一个额外线程:全局BA,该线程只有在闭环时才会触发.值得注意的是,ORBSLAM2中每个模块中都采用OR…
jQuery中的$符号功能很强大,原因在于对函数参数的个数以及种类的控制,还有对于面向对象思想的运用 function jQuery(args){ //接受参数,并对其判断 this.elements = []; //定义一个数组,每个生成的jQuery对象里都有这么一个elements数组属性,用于放选择出的元素 switch (typeof args){ case 'function': //如果传的是函数,就把这个函数传到ready函数的参数中 ready(args); break; ca…
jQuery的源码思路1--后代选择器 这里探讨一下jQuery中后代选择器的封装原理,并自己写一下 getEle('#div1 ul li .box');接受的参数就是个后代选择器,类似于这样: #div1 ul li .box id/tagname/class div#div1 div.box input[type=button] li:eq(3)/lt(3)/gt(3) li:first/last/odd/even function getEle(str){ var arr = str.m…
项目源码https://github.com/979451341/FFmpegCompress 这个视频压缩是通过类似在mac终端上输入FFmpeg命令来完成,意思是我们需要在Android上达到能够执行FFmpeg命令.其实做到这一点还比较容易,这一次重在说说这压缩过程,不是看代码运行过程,通过log来观察代码运行的结果. 1.首先普及一下相关专业名词 视频尺寸:指的就是视频的分辨率,常见的分辨率有4096*2304,1920*1080,720*576等. 视频编码:视频编码方式就是指通过特定…
这是Live555源码阅读的第一部分,包括了时间类,延时队列类,处理程序描述类,哈希表类这四个大类. 本文由乌合之众 lym瞎编,欢迎转载 http://www.cnblogs.com/oloroso/ HandlerDescriptor 处理程序描述类 HandlerDescriptor类是一个很重要的类,其保存了处理程序的函数指针和相关的数据的地址.在构建处理任务的时候,会使用到这个类的对象,处理任务的时候也会用到. HandlerDescriptor类同时将HandlerIterator类…
想着使用原生Javascript做一个随机点名的小应用, 也可以做抽奖使用. html简单化,人名单可以通过js生成并处理. 可以非常随意的添加修改人名字. 应用想带点特效,比如老.虎机转动的特效. 思路入下: 借鉴模板引擎的思想,在页面中添加一个指定ID的script标签,我们可以在任意文本中将提前准备好的人名单复制进来并添加注释. 利用正则处理空白字符,把所有人名添加到数组当中,再删除该script节点,在这里我们只讨论名字为两个字或者三个字的. 遍历数组,此时数组的每一项是一个人名,有两个…
使用java开发,如果能阅读JDK的经典代码,对自己的水平提高是很有帮助的.笔者在实际工作中总结了两种阅读JDK源码的方式.第一种下载android源代码,直接在android源码代码中,这里的代码虽然不是标准的JDK源码,但是也很不错值得一看.另外一种,就是笔者接触java之后一直使用的方式,直接访问JDK源码,无须下载其他文件.       步骤一:在eclipse中,按住Ctrl+鼠标右键访问String类        步骤二:在eclipse打开的空白页中选择change Attach…
petalinux使用太不方便,捆绑的太死板,也不通用,还不如直接用编译器来的简单高效. 本文说明从petalinux中提取出源代码的过程,前提是已经petalinux-build完成. 1. uboot 编译结果里没有uboot的源码,可能是编译完了就删除了. 从git上下载吧. git clone https://github.com/Xilinx/u-boot-xlnx.git 2. linux 分析log文件太费劲了,直接查找linux内核的文件,获取内核源码. [liuwanpeng@…
分析SpringBoot的自动化配置原理的时候,可以观察下这些@Enable*注解的源码,可以发现所有的注解都有一个@Import注解.@Import注解是用来导入配置类的,这也就是说这些自动开启的实现其实是导入了一些自动配置的Bean. 如:freemarker的自动化配置类FreeMarkerAutoConfiguration,这个自动化配置类需要classloader中的一些类需要存在并且在其他的一些配置类之后进行加载. 但是还存在一些自动化配置类,它们需要在使用一些注解开关的情况下才会生…