Chinaunix首页 | 论坛 | 博客
  • 博客访问: 350655
  • 博文数量: 242
  • 博客积分: 10
  • 博客等级: 民兵
  • 技术积分: 1134
  • 用 户 组: 普通用户
  • 注册时间: 2012-10-20 10:53
文章分类

全部博文(242)

文章存档

2015年(1)

2014年(10)

2013年(18)

2012年(213)

分类:

2012-11-20 14:07:36

文件: contours.rar
大小: 3KB
下载: 下载
1.下载OpenCV-2.0.0.tar.bz2并解压;
2.cd OpenCV-2.0.0;
3../configure --host=arm-hismall-linux --without-gtk --without-carbon  --without-quicktime --without-1394libs --without-ffmpeg --without-python --without-swig --enable-static --disable-shared --disable-apps CXX=arm-hismall-linux-g++ CC=arm-hismall-linux-gcc CPPFLAGS=-I/opt/hisi-linux/x86-arm/gcc-3.4.3-uClibc-0.9.28/usr/include CFLAGS=-I/opt/hisi-linux/x86-arm/gcc-3.4.3-uClibc-0.9.28/usr/include
CPPFLAGS和CFLAGS需要根据自己的编译器安装目录修改;
4.下面是make,make完成后还要编译sample/c下的测试程序,但这个过程会遇到很多问题,可能与编译器版本有关,先做如下修改
(1):include/opencv/cxoperations.hpp:68的“#if __GNUC__ >= 4”改为“#if __GNUC__ >= 3”
(2):include/opencv/cxtypes.h:240的“return (int)lrint(value);”改为“return (int)(value + 0.5);”
此时可以顺利make,然后
(3)下载zlib-1.2.3.tar.gz,CC=arm-hismall-linux-gcc ./configure,make,然后把libz.a copy到opencv的src/.libs/
5.此时sample/c下的大部分程序都可以编译了,但在3520上运行时还缺少一些动态库,去编译器目录和sdk中找到libstdc++.so.6.0.3和libgcc_s.so.1并放到3520文件系统的/lib下,并做软链接把libstdc++.so.6链接到libstdc++.so.6.0.3;
6.以contours为例,在Opencv下用arm-hismall-linux-g++ samples/c/contours.c -o samples/c/contours -I/home/chl/temp/OpenCV-2.0.0/include/opencv -L/home/chl/temp/OpenCV-2.0.0/src/.libs -lcv -lhighgui -lcxcore -lz可以编译出contours可执行程序,但并不能运行,原因是3520上不能运行highgui库函数,去掉highgui库函数调用,把contours.c修改如附件即可;
 
 
 
另,一般监控中的视频采集都是YUV的,而opencv是不能直接支持yuv采集或转换的,那么怎么让opencv处理yuv呢,见附件contours.yuv.c;
 
good luck!!
 
阅读(1512) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~