OpenNI2 研究
作者:Sam (甄峰) sam_code@hotmail.com 0. 背景介绍: 近期要研究ROS Xtion Driver. 在ROS系统下, Xtion Driver是openni2_camera, 它读取Xtion数据并将数据发布到各Topic供其它Node使用。但研究下来,其实openni2_camera仅仅是冰山露出海面的部分。它构建了类似Linux Driver...
View Article毫米波雷达简介
作者: Sam (甄峰) sam_code@hotmail.com 毫米波实质上就是电磁波。毫米波的频段比较特殊,其频率高于无线电,低于可见光和红外线,频率大致范围是10GHz—200GHz。毫米波介于微波(Micro waves)和THz(1000GHz)之间,可以说是微波的一个子集。 在这个频段,毫米波相关的特性使其非常适合应用于车载领域。目前,比较常见的车载领域的毫米波雷达频段有三类。...
View ArticleOpenCV for Linux 编译中遇到的几个问题
作者:Sam (甄峰) sam_code@hotmail.com 这几天需要编译Linux下几个特定版本(2.4.13)的OpenCV库。OpenCV各版本库已经编译多次,本想这是非常容易的事情了,可没想到竟然遇到一些问题。先把最后找到的经典方法记录如下: 0. Download OpenCV: 先使用:git clone https://github.com/opencv/opencv.git...
View ArticleROS 公用包学习解析 vision_opencv
作者: Sam (甄峰) sam_code@hotmail.com 0.vision_opencv简介: 这个stack是ROS的OpenCV Interface。这个stack包含两个Package。cv_bridge, image_geometry. 主要用来将sensor::Image (ROS)和cv::Mat(OpenCV)之间数据转换。 cv_bridge: ROS...
View Article使用Android NDK编译器写Makefile研究
作者: Sam (甄峰) sam_code@hotmail.com 0. 基础介绍: Android推出NDK,是为了可以编译JNI和Native程序。它提供了一系列脚本:ndk-build, ndk-stack, ndk-dbg, ndk-which. 用来帮助用户编译,调试程序。 有了这些脚本,尤其是ndk-build, 它和Android.mk,...
View Articlei2c_tools使用记录
作者: Sam (甄峰) sam_code@hotmail.com 最近又需要研究I2C Driver。在测试连线时,需要I2C工具。于是下载编译了I2C_Tools. 记录之。 1. download and Make: $git clone git://git.kernel.org/pub/scm/utils/i2c-tools/i2c-tools.git $make...
View ArticleAndroid APP开发环境安装-Linux
作者: Sam (甄峰) sam_code@hotmail.com 因为众所周知的原因,Android APP开发环境在国内安装很麻烦。 幸好有无数热心人提供了很多办法解决这个问题。现记录如下。 0. 不同形式的Android 开发环境。 首先介绍不同的Android 开发环境。 0.1. Eclipse + ADT Plugin. ADT...
View ArticleAndroid Studio 简介和使用细节
作者: Sam (甄峰) sam_code@hotmail.com 在Android系统发布早期,Android APP官方IDE是Eclipse+ADT(Android Developer Tools). 但因为这个方案有兼容性和稳定性等各种问题。2014年,Google基于IntelliJ IDEA制作了Android Studio。并将其作为官方唯一提供全面支持的Android IDE。...
View ArticleAndroid NDK学习 NDK一些新特性
作者: Sam (甄峰) sam_code@hotmail.com 从2012年最初接触NDK到现在已经5年过去了,从最初的NDK R7到现在已经到达NDK R14. 它本身也发生了很多变化。 例如对C++支持程度。对64bit ARM的支持等。现有必要把这些新特性研究一下。 1. 32bit/64bit ARM平台支持: 在NDK R10的某个版本中,开始支持64bit...
View ArticleCMake使用记录
作者: Sam (甄峰) sam_code@hotmail.com 最近尝试再次编译OpenCV4Android。因为Android SDK, NDK, Cmake版本问题,意料之中的遇到N多问题。分析和解决问题大都需要修改CMake file. 现记录一些信息如下。 0. CMake基本语法记录: 0.1. CMake中的赋值: set(variable value1 value2...
View ArticleOpenCV4Android编译
作者: Sam (甄峰) sam_code@hotmail.com 又尝试完整编译OpenCV4Android (3.1), 因为开发平台(FC26-64bit), CMake(3.9.1), Android SDK 版本,NDK(ndk R14B)等都有变化,会遇到一些版本匹配问题。现记录如下。...
View ArticleLinux Socket详解 <十一> socket收发缓冲区
作者: Sam (甄峰) sam_code@hotmail.com socket在发送和接收时,根据不同的协议族和Type,会有不同类型的缓冲区。现研究如下。 1. TCP socket的接收和发送缓冲区: socket(AF_INET, SOCK_STREAM, 0); 每个TCP Socket在内核中都有一个发送缓冲区和一个接收缓冲区,...
View ArticleNDK升级遇到的一些问题汇总
作者: Sam (甄峰) sam_code@hotmail.com 之前每次升级NDK,均会遇到或大或小的问题,常见的问题有:NDK下的C库,C++库与Android设备内的库不匹配等。但这次从android-ndk-r10e 升级到android-ndk-r14b. 却遇到不少有特色的问题。记录如下: 1. 在Amlogic AArch64--S905X平台: Android版本:6.0.1...
View ArticleWin7下Android开发环境安装
作者: Sam (甄峰) sam_code@hotmail.com 之前Android App开发都是在Linux下,使用工具为Eclipse+ADT。 但Eclipse真是比较难用,且随着Google在2015年停止维护升级ADT。所以使用Android Studio也成了必由之路。 这次选择在Windows平台开发APP,就选择使用Android Studio。 0.基础介绍:...
View ArticleAndroidStudioApp工程结构
作者: Sam (甄峰) sam_code@hotmail.com Android Studio的App工程结构, 目录结构与 Eclipse+ADT的有一些不同。现学习如下。 1. Project和Module: Android Studio的在创建项目时,有两个层级。一个是Project, 相当于workspace. 另一个是module, 可以对应App....
View ArticleAndroidStudio下SVN的使用
作者: Sam (甄峰) sam_code@hotmail.com 先前使用Eclipse+ADT开发Android App.对如何将代码做版本控制, 一直是一知半解的。 通常的做法就是在Linux下使用SVN工具, 如RapidSVN把整个目录存储起来。 这显然不是个好办法。 所以在转到 Android Studio后。 记录下如何使用SVN工具。 1. SVN工具的安装和设置:...
View ArticleAndroid App的构建过程和工具
摘抄 : Sam (甄峰) sam_code@hotmail.com 此Blog大量摘抄网络内容。谢谢各位研究者分享。 1. Android APP的构建: 不管用Eclipse+ADT还是 Android Studio, 创建APP的过程相当简单, Build, Run,或创建有签名的APK,只需鼠标点击Menu即可。 这是因为构建工具已经在后台做了大量工作。 例如: 大量资源文件,...
View ArticleAndroidStuidoGradle初探
作者: Sam (甄峰) sam_code@hotmail.com 从2013年开始, Google就选中Gladle作为Android Studio的构建工具。 我们使用Android Studio开发, 必须对如何使用Gradle有所了解。 1. Android Studio 项目中的4类Gradle文件: 1.1: 属于Project的Gradle文件: build.gradle:...
View ArticleAndroidStuido使用记录
作者: Sam (甄峰) sam_code@hotmail.com 在Android Studio使用中,常会遇到这样那样的问题。 有些与SDK版本有关, 有些与Build-tools版本有关, 还有些和Gradle或Gradle插件版本有关。 现把常见的问题记录如下: 1: Gradle版本和Gradle插件版本: Error:(1, 1) A problem occurred...
View Article