使用QtCreator加速Android NDK开发调试

2016-04-15
阅读 3 分钟
8.6k
为APP开发JNI接口以及NDK动态库的时候,需要频繁修改和调试C/C++代码,如果在eclipse或AndroidStudio开发的话,需要1)clean项目,2)ndk build 3)生成APK,启动调试,实际会卸载已安装APK再装一遍,这个过程相当耗时,快则7秒左右,慢则十几秒以上,有没有可能不需要重新安装APK,只需要替换它的so库,重启APP就能自动...

Programming Computer Vision with Python (学习笔记十二)

2015-12-25
阅读 7 分钟
8.2k
ORB(Oriented FAST and Rotated BRIEF)可用来替代SIFT(或SURF),它对图像更具有抗噪特性,是一种特征检测高效算法,其速度满足实时要求,可用于增强图像匹配应用。ORB的算法基于FAST角检测(Features from accelerated segment test)和BRIEF(Binary Robust Independent Elementary Features)特征描述符,这也是它名...

Programming Computer Vision with Python (学习笔记十一)

2015-12-15
阅读 4 分钟
9k
尺度不变特征变换(Scale-invariant feature transform, 简称SIFT)是图像局部特征提取的现代方法——基于区域/图像块的分析。在上篇笔记里我们使用的图像之间对应点的匹配方法,不适用于不同尺度的图像。有许多应用场景需要对不同尺度(即分辨率、缩放、旋转角度、亮度等都可能存在不同)的图像进行特征识别和匹配,这就需...

Programming Computer Vision with Python (学习笔记十)

2015-12-03
阅读 5 分钟
6.3k
现在考虑一个全景图拼接的应用场景,假设现有两张图片需要拼接成一张全景图,这两张图片是通过相机右转一定角度拍摄出来的,两张图片有部分取景是重叠的。如何实现拼接?当然这是一个不简单的问题,我们现在只考虑实现拼接目标的第一步:找出图像中重叠的内容,以及分别在两张图片中的位置。

Programming Computer Vision with Python (学习笔记九)

2015-11-27
阅读 5 分钟
6.5k
角检测(Corner detection)是指检测图像中具有代表性的(我们感兴趣的)角点,一般讲为形状或边缘的拐角处,这些点可以大略标记对象在图像中的轮廓和位置,如果从一个图像序列中检测每个图像的角点,就可以找出图像之间存在的相关和相对应的角点,这对比如全景拼接(多张图片拼接成一张全景图片)很有用。角检测还可以...

Programming Computer Vision with Python (学习笔记八)

2015-11-27
阅读 3 分钟
7.4k
图像去噪(Image Denoising)的过程就是将噪点从图像中去除的同时尽可能的保留原图像的细节和结构。这里讲的去噪跟前面笔记提过的去噪不一样,这里是指高级去噪技术,前面提过的高斯平滑也能去噪,但高斯平滑去噪的同时也把边缘模糊化了,另外使用形态学的方法去噪是指去除一些粗的椒盐噪声。对于一幅密布噪点的图像,如果...

Programming Computer Vision with Python (学习笔记七)

2015-11-26
阅读 6 分钟
9.2k
数学形态学(mathematical morphology)关注的是图像中的形状,它提供了一些方法用于检测形状和改变形状。起初是基于二值图像提出的,后来扩展到灰度图像。二值图像就是:每个像素的值只能是0或1,1代表描绘图像的点,0代表背景。

Programming Computer Vision with Python (学习笔记六)

2015-11-23
阅读 4 分钟
8.7k
边缘检测(edge detection)是最重要的图像处理技术之一,图像边缘检测大幅度地减少了数据量,并且剔除了可以认为不相关的信息,保留了图像重要的结构属性,为后续图像理解方法提供了基础。

Programming Computer Vision with Python (学习笔记五)

2015-11-16
阅读 3 分钟
7.8k
SciPy库,与之前我们使用的NumPy和Matplotlib,都是scipy.org提供的用于科学计算方面的核心库。相对NumPy,SciPy库提供了面向更高层应用的算法和函数(其实也是基于NumPy实现的),并以子模块的形式组织,每个子模块对应不同的应用领域,下面列出我们关心的一部分进行说明:constants:物理和数学常量fftpack:快速傅里叶...

Programming Computer Vision with Python (学习笔记四)

2015-11-13
阅读 6 分钟
12.9k
上一个笔记主要是讲了PCA的原理,并给出了二维图像降一维的示例代码。但还遗留了以下几个问题: 在计算协方差和特征向量的方法上,书上使用的是一种被作者称为compact trick的技巧,以及奇异值分解(SVD),这些都是什么东西呢? 如何把PCA运用在多张图片上? 所以,我们需要进一步的了解,同时,为示例对多张图片进行PC...

Programming Computer Vision with Python (学习笔记三)

2015-11-04
阅读 5 分钟
7.5k
原书对于PCA的讲解只有一小节,一笔带过的感觉,但我发现PCA是一个很重要的基础知识点,在机器机视觉、人脸识别以及一些高级图像处理技术时都被经常用到,所以本人自行对PCA进行了更深入的学习。

Programming Computer Vision with Python (学习笔记二)

2015-11-03
阅读 8 分钟
8.7k
NumPy是Python用于科学计算的基础库,提供了一些很有用的概念,如:N维数组对象,可用于表示向量、矩阵、图像数据等,另外还包含了线性代数及其运算函数。NumPy的数组对象在本书示例中会被大量使用,它可以作诸如矩阵乘法、变换、向量乘法和正态化等运算,我们通过这些运算来实现图像对齐、图像分类、图像扭转等。这是一...

Programming Computer Vision with Python (学习笔记一)

2015-11-02
阅读 4 分钟
14.9k
《Programming Computer Vision with Python》是一本介绍计算机视觉底层基本理论和算法的入门书,通过这本收可以学到有关对象识别、基于内容的图像搜索、光学字符识别、光流法、跟踪、三维重建、立体成像、增强现实、姿态估计、全景创建、图像分割、降噪、图像分组等技术的实现原理。英文版PDF下载:[链接]中文版介绍:[...

快速了解C/C++的左值和右值

2015-09-25
阅读 4 分钟
24.2k
因为上面的定义实在太模糊,导致左值和右值很难被理解,下面给出的定义,更简单更好理解:左值(lvalue)是一个表达式,它表示一个可被标识的(变量或对象的)内存位置,并且允许使用&操作符来获取这块内存的地址。如果一个表达式不是左值,那它就被定义为右值。

快速了解AndroidStudio的Gradle

2015-09-01
阅读 5 分钟
8.2k
前言在阅读本文章之前,期望你已经了解了这些内容: gradle是什么,它有哪些基本特性 gradle task的基本概念和写法 本人使用的环境:LUbuntu 14.04,AndroidStudio 1.3.2,其自带Gradle 2.4 Gradle Scripts 使用AndroidStudio新建一个Android项目,一直默认直到创建完成,然后点开AndroidStudio左边的Project面板,可以...

用QML开发Android APP(一)

2014-09-14
阅读 19 分钟
22.4k
用QML已经有一段时间了,我想通过博客记录自己是如何使用QML的,算是写点自己的经验吧,希望对未接触过QML但对它有兴趣的人提供点中文资料,仅此而已。 为了写起来有思路,我们来实现一个能在Android手机上运行的APP,暂且叫这个APP为“135Todo”吧,它是一个待办事项类的软件,类似的现成的软件很多,这类软件最基本的功...