C++

在Eclipse下编译Dlib

Dlib是一款非常优秀的C++库,尤其是其中的人面部landmark点检测功能,可以在2ms左右的时间检测出面部的68个标记点。Dlib官方推荐采用CMake的方式来编译,并且给出了一些“example"以及对应的编译方法。 由于自己的项目采用了OpenCV,且开发是在Eclipse下完成的,所以需要在项目中引入Dlib,具体方法如下。 下载最新的Dlib源码 git clone https://github.com/davisking/dlib.git 假设你的代码存放在/tmp目录下,那Dlib的路径看上去是这个样子:/tmp/dlib。在这个目录下还存在一个名为dlib的文件夹,里边存放的正是Dlib的源代码。 配置include路径 打开需要使用的工程,依次点击Project >

linux

使用ANSI Escape Code刷新控制行输出

简单的C++程序多采用printf()或者cout <<的方式来将文本输出到终端窗口。如果我们希望输出的内容刚好处在循环内部的话,你会在终端窗口中看到输出的内容不断增加,将之前的输出“顶”出了窗口,如下图: 如果我希望新的输出覆盖旧的输出,看上去就是在原地刷新,如下图,该怎么办? 此时你需要ANCI escap code。套用一下维基百科上的介绍: In computing, ANSI escape codes (or escape sequences) are a method using in-band

Android

采用C++开发Android APP

作为一名算法开发人员,一定会有大量项目是用C/C++开发完成的。随着移动设备功能日益强大,总会有这么一天,你需要把曾经的C++代码移植到Android系统中运行。这正是我最近面临的状况。作为一名从未写过JAVA的业余程序员,如何解决这个问题? 问题分析 遇到困难先不要慌,镇静下来仔细分析一下情况。首先,需要移植的工程从功能上来分析大致可以分为三大模块: 调用摄像头进行人脸检测; 根据检测到的信息进行进一步计算; 将结果输出,控制后端的硬件。 第一部分调用了第三方视觉库OpenCV。第二和第三部分是自己编写的C++代码。考虑到Android系统本身提供了人脸检测的模块可供调用,第一部分的问题算不上棘手。在之前的项目中,第二部分内容的原理已经非常清晰,大不了用JAVA再实现一遍。第三部分因为平台与控制硬件发生了变化,有同事可以提供支持,在此可以不予考虑。所以我需要完成的事项就变为: 在Android系统下实现摄像头调用与人脸检测;