在视频处理过程中用到时空兴趣点[1](Space-Time Interest Points,STIP)和改进的密集轨迹[2](Improved Dense Trajectories,IDT)这两种特征提取方法,两者都是应用十分普遍的算法。我们可以在作者主页上找到公开的算法源码,它们在Linux下需要OpenCV和FFmpeg的支持方可顺利运行。之前已经用过这两种工具,现在换了工作环境后想要再用,但是配置和安装过程中依旧出现不少问题。因此在搞定之后觉得很有必要将具体过程和遇到的问题及解决方案记录下来以备后用,也希望能够给其他人带来一点点帮助。
OpenCV2.4.9及FFmpeg1.2.12源码包下载
这两个软件在官网都可以直接找到各种版本的源码包,下载之后编译安装。如果不是特别需要最新版本的软件,个人建议采用那些已被多数人使用过的偏早期版本,出现问题时也能够较为方便地找到对应的解决方案。我选用的分别是OpenCV2.4.9和FFmpeg1.2.12这两个版本。
OpenCV2.4.9下载
官网给出了从早期1.0.0到3.1和2.4.13版本的下载链接,对应着不同操作系统有不同的软件包。
http://opencv.org/downloads.html
我采用的2.4.9版本下载地址如下:
https://sourceforge.net/projects/opencvlibrary/files/opencv-unix/2.4.9/opencv-2.4.9.zip/downloadFFmpeg1.2.12下载
FFmpeg最新已经到了3.1.4版本,更新速度还是比较快的。个人选择早期的1.2.12版本已经能够满足实际需求,下载地址如下:
https://ffmpeg.org/olddownload.html
FFmpeg编译配置
FFmpeg是一个领先的多媒体框架,可以用来记录、转换数字音频、视频,并能将其转化为流的开源程序,它包括了目前领先的音/视频编码库libavcodec、libavutil、libavformat等[3]。
1.卸载之前安装的FFmpeg和x264软件
为了防止出现版本问题等,建议先卸载之前(可能)安装的相关版本。命令如下:
sudo apt-get -qq remove ffmpeg x264 libx264-dev
2.安装依赖项及相关软件
sudo apt-get install yasm
sudo aptitude install libx264-dev libfaac-dev libmp3lame-dev libtheora-dev libvorbis-dev libxvidcore-dev libxext-dev libxfixes-dev
3.编译安装
解压下载的FFmpeg包,进入解压的目录
cd ffmpeg-1.2.12
环境配置[4]
./configure --