- 博客(22)
- 收藏
- 关注
原创 “fatal error: Eigen/Core: No such file or directory” while installing OpenCV on Ubuntu
修改头文件Go to /home/avi/opencv/modules/core/include/opencv2/core/private.hpp file.Edit the line: # include <Eigen/Core> to # include <eigen3/Eigen/Core>
2020-04-29 00:54:39
610
1
原创 cmake 编译c++项目
分两步:CMakeLists.txt文件编写结束以后就可以对工程进行编译了,进入build目录。并执行cmake和make指令,如下:第一步$ cmake ..…的意思时去上一目录寻找源文件,进行编译如果就在一个目录下,也可以用cmake.第二步$ make然后,可以用ls查看,绿色的就是可执行文件,使用 ./xxxx 命令执行就可以了...
2020-04-28 13:50:55
585
转载 Android 文件操作权限 java.io.FileNotFoundException:*** (Permission denied)
大家都知道,Android 6.0中,某些权限属于Protected Permission,例如:读写手机存储权限,仅仅在AndroidManifest.xml中申明是无法真正获取到权限的,打开手机的权限管理页面,我们可以看见,读写手机存储权限栏是一个问号,这意味着App并未获取到该权限。这是访问手机存储时,会报出类似下面的错误:java.io.FileNotFoundException:**...
2020-04-23 10:36:39
1714
原创 Android JNI以及NDK开发流程四步简述
一 JNI开发1、在Java类中声明native方法创建Java类JNITest.javapublic native String get();2、编译Java源文件获得class文件,然后通过javah命令导出JNI的头文件javac ./com/wdz/JNITest.javajavah com.wdz.JNITest在当前目录下,生成com_wdz_JNITest.h的头文...
2020-04-02 11:41:53
219
转载 Yii中ActiveRecord与Model的关系
AtiveRecord 是继承自Model的,Model有的ActiveRecord 都有。Active Record (活动记录,以下简称AR)提供了一个面向对象的接口, 用以访问数据库中的数据。一个 AR 类关联一张数据表, 每个 AR 对象对应表中的一行,对象的属性(即 AR 的特性Attribute)映射到数据行的对应列。 一条活动记录(AR对象)对应数据表的一行,AR对象的属性则映射...
2020-03-31 22:19:25
471
原创 利用adb工具实现Android Studio 无线调试
最近需要在Android手机上开发app与树莓派有线测试,这样就面临一个尴尬的问题,手机无法与电脑连接usb开发app了,幸好可以利用adb工具实现PC端与Android端无线安装app.一,首先保证PC和手机处在同一局域网,如果有必要的话,需要关闭防火墙二 插上USB线,开启USB连接,adb usb三 检查插上的设备,adb devices四 开启端口借助usb数据线在手机上开启连...
2020-03-30 23:43:09
614
原创 SLAM学习——BA(Bundle Adjustment)与图优化
BA与图优化所谓的Bundle Adjustment,是指从视觉重建中提炼出最优的3D模型和相机参数(内参数和外参数)。从每一个特征点反射出来的几束光线(bundles of light rays),在我们把相机位姿和特征点空间位置做出最优的调整(adjustment)之后,最后收束到相机光心的这个过程,简称BA。Bundle Adjustment简述在SFM(structure from ...
2020-03-27 16:22:39
7778
原创 网络端口理解
这里讨论的是TCP/IP协议中的端口,端口号的范围从0到65535,比如用于浏览网页服务的80端口,用于FTP服务的21端口等等。什么是端口在Internet上,各主机间通过TCP/TP协议发送和接收数据报,各个数据报根据其目的主机的IP地址来进行互联网络中的路由选择。可见,把数据报顺利的传送到目的主机是没有问题的。我们知道大多数操作系统都支持多程序(进程)同时运行,那么目的主机应该把接收到的...
2020-03-26 22:46:51
481
原创 SLAM学习——视觉里程计中位姿估计,PnP、ICP问题的本质描述
SLAM中的前端也称为视觉里程计,本质在于利用计算计算机视觉图像中的特征点的距离,进而估算相机的旋转R和位移t,即计算相机的姿态变化。
2020-03-25 23:28:08
1621
原创 SLAM学习——特征点SIFT、SURF、ORB
SLAM的本质问题在于让计算机识别出连续两幅图像之间的姿态变化,通常需要在图像中选取一些特征点作为标识用来计算相机位姿变化。注意特征点不是角点,不仅包括点的位置,还包括点的特征描述。常用的特征点包括:1)SIFT特征点(尺度不变特征变换,ScaleInvariant Feature Transform)SIFT特征点属于最常见的特征点,它充分考虑了在图像变换过程中出现的光照,尺度,旋转等变...
2020-03-25 10:00:05
1887
原创 最新WAMP配置网络服务器——Forbidden You don't have permission to access this resource原因分析与解决
问题wamp安装网络服务器后,可以在服务器本地访问,但是不能实现外网访问,出现错误:原因分析很明显,可以看出是因为无法访问,而且是Apache出了问题。搜索了一下,可以看出需要重新配置apache的参数,网上说了都是修改httpd.conf下的<Directory 将Deny all 修改成Allow all,需要修改很多地方,特别麻烦。但是最新版的wamp,显示Don’t mo...
2020-03-17 19:02:39
14294
1
原创 SLAM中的贝叶斯公式、先验概率和后验概率
全概率公式设事件 B1,B2…Bn 构成一个完备事件组,即它们两两不相容,和为全集且 P(Bi)>0,则对任一事件 A 有:注意事件A与事件组B没有关系。贝叶斯定理好吧,著名的定理了,大家应该都听过,再复述一遍。这个工时其实计算了一个概率,假设事件A已经发生了,事件组Bi中某一件是造成事件A发生的原因。贝叶斯公式左侧就是在A发生的前提下,Bi发生的概率,即计算事件组Bi中每一...
2020-03-14 10:10:20
669
原创 SLAM用到的相机模型——矩阵表示以及坐标变换矩阵
1 单目相机模型说白了,单目相机就是针孔相机,需要建立三个坐标系,成像坐标系,实际是个二维坐标系相机坐标系,以镜片为原点,镜头向前为Z轴,随相机位置改变,即相机位姿世界坐标系,只有一个,物体的真实坐标现在来对这个简单的针孔模型进行几何建模。设 O − x − y − z 为相机坐标系,习惯上我们让 z 轴指向相机前方, x 向右, y 向下。 O 为摄像机的光心,也是针孔模型中的针...
2020-03-10 22:42:39
1635
原创 SLAM中的李群与李代数
群群是一些数据,并有特定的运算方式,通俗点,元素集合加上代数运算,使得集合中任意两个元素经过运算后形成的第三个元素仍然在这个集合里面。群必须满足四种公理:封闭性(closure),结合性(associtivity), 单位元(identity,也叫幺元),逆元(invertibility)。》》》》》凤姐咬你李群李群除了满足上述四个公理,还需要满足其他公理,例如不可交换。李群是具有微分流...
2020-03-09 22:57:16
1132
2
转载 SLAM主要步骤
整体视觉SLAM流程图。整个视觉SLAM流程包括以下步骤。1.传感器信息读取。在视觉SLAM中主要为相机图像信息的读取和预处理。如果是在机器人中,还可能有码盘、惯性传感器等信息的读取和同步。2.视觉里程计(Visual Odometry,VO)。视觉里程计的任务是估算相邻图像间相机的运动,以及局部地图的样子。VO又称为前端(Front End)。3.后端优化(Optimization)。后...
2020-03-08 23:50:09
8648
原创 Android图片缓存框架实现
Glide有三级缓存,分别是:内存缓存、本地缓存、网络缓存配置分为四步,需要配置本地缓存,配置下载器、配置解码器、进行显示。四个配置都是相应接口的实现,便于后续的扩展升级下载器根据传入的请求,返回一个inputstream。首先判断应该从网络请求,还是应该从本地获得。Glide 能够实现activity生命周期的识别,主要在于with(this)时...
2020-03-08 17:59:34
379
原创 树莓派与Android端APP进行有线通信并实现控制与反馈
如何实现通信首先,我们要意识到一点,Android与树莓派都是独立的linux系统,二者通信其实是两台独立设备之间的通信,可以有三种方式:1)有线通信2)无线通信3)蓝牙通信1、基于有线通信方式下的Android设备控制树莓派2、基于***无线通信***方式下的Android设备控制树莓派3、基于***蓝牙通信***方式下的Android设备控制树莓派...
2020-03-08 17:56:41
1751
原创 Binder机制实现跨进程传递数据——Android学习
1 跨进程传递数据用在什么地方?典型的应用场景是控制Service。一般情况下,APP会利用单独的Service播放音乐,在Activity利用控制后台播放音乐Service的暂停播放,开始播放音乐等,就需要在进程间传递数据。2 简单的控制Service简单是新建Service类后,实现onBind()方法,返回一个继承了Binder类的内部类,返回给客户端,实现进程控制。3 标准控制Se...
2019-11-03 19:34:46
531
原创 Android集成Zxing实现二维码扫描识别,过程、常见错误及修改
Android Studio可以用两种方法实现Zxing的导入,第一种方法:直接implementation在需要使用zxing进行二维码扫描的app的build.gradle直接添加依赖:implementation 'com.journeyapps:zxing-android-embedded:2.3.0@aar'implementation 'com.journeyapps:zxi...
2019-10-03 14:43:27
2074
转载 自定义View控件——Android学习
1、自定义View / ViewGroup的步骤大致如下:自定义属性;选择和设置构造方法;重写onMeasure()方法;重写onDraw()方法;重写onLayout()方法;重写其他事件的方法(滑动监听等)。2、构造方法当我们定义一个新的类继承了View或ViewGroup时,系统都会提示我们重写它的构造方法。View / ViewGroup中又四个构造方法可以重写,它们分...
2019-09-16 23:57:17
115
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人