ubuntu安装opencv详细步骤

来源:互联网 发布:js取数组前几个 编辑:程序博客网 时间:2024/06/05 04:03

今天帮实验室同学在ubuntu下安装了opencv,现在将详细步骤记录如下:

1、在终端输入并运行
sudo cp /etc/apt/sources.list   /etc/apt/sources.list.backup (备份当前的源列表,以便日後需要时恢复)
sudo gedit /etc/apt/sources.list (修改sources.list文件中源的列表)

弹出文本后在sources.list文件中,把原来的源全部删除,然后把下面的源添加进去:
我采用网易163源,速度还不错,如下:
deb http://mirrors.163.com/ubuntu/ intrepid main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ intrepid-security main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ intrepid-updates main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ intrepid-proposed main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ intrepid-backports main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ intrepid main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ intrepid-security main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ intrepid-updates main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ intrepid-proposed main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ intrepid-backports main restricted universe multiverse

2、保存编辑好的文件,执行以下命令更新。
sudo apt-get update #这一步是更新你的源列表,换源后必须执行

3、解压openCV2.1

   tar  xjf OpenCV-2.1.0.tar.bz2

4、更新完之后,执行如下命令

huanghuang@huanghuang-desktop:~$sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg62-dev libtiff4-dev cmake libswscale-dev libjasper-dev

5、huanghuang@huanghuang-desktop:/$ cd /opencv-linux/OpenCV-2.1.0
huanghuang@huanghuang-desktop:/opencv-linux/OpenCV-2.1.0$

6、huanghuang@huanghuang-desktop:/opencv-linux/OpenCV-2.1.0$ cmake .
7、make

  sudo make install

8、sudo  gedit /etc/ld.so.conf.d/opencv.conf

  里面为空文档,在其中添加/usr/local/lib,然后保存。

9、配置库执行,sudo ldconfig

10、sudo gedit /etc/bash.bashrc

 打开,在其最后添加

 PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig

 export PKG_CONFIG_PATH

 保存退出。

11、check some demos:

1
mkdir  /openCV_samples
2
cp /opencv-linux/OpenCV-2.1.0/samples/c/* /openCV_samples
3cd /openCV_samples/
4
chmod +x build_all.sh

5./build_all.sh

12、huanghuang@huanghuang-desktop:/openCV_samples$ ls
0                           fback.cpp                motempl.c
adaptiveskindetector        ffilldemo                mser_sample
adaptiveskindetector.cpp    ffilldemo.c              mser_sample.cpp
agaricus-lepiota.data       find_obj                 mushroom
airplane.jpg                find_obj_calonder        mushroom.cpp
baboon200.jpg               find_obj_calonder.cpp    one_way_sample.cpp
baboon200_rotated.jpg       find_obj.cpp             one_way_train_0000.jpg
baboon.jpg                  find_obj_ferns           one_way_train_0001.jpg
bgfg_codebook               find_obj_ferns.cpp       peopledetect
bgfg_codebook.cpp           fitellipse               peopledetect.cpp
bgfg_segm                   fitellipse.cpp           pic1.png
bgfg_segm.cpp               fruits.jpg               pic2.png
blobtrack                   grabcut                  pic3.png
blobtrack.cpp               grabcut.cpp              pic4.png
box_in_scene.png            houghlines               pic5.png
box.png                     houghlines.c             pic6.png
build_all.sh                image                    polar_transforms
calibration                 image.cpp                polar_transforms.c
calibration_artificial      inpaint                  puzzle.png
calibration_artificial.cpp  inpaint.cpp              pyramid_segmentation
calibration.cpp             kalman                   pyramid_segmentation.c
camshiftdemo                kalman.c                 right01.jpg
camshiftdemo.c              kmeans                   right02.jpg
CMakeLists.txt              kmeans.c                 right03.jpg
contours                    laplace                  right04.jpg
contours.c                  laplace.c                right05.jpg
convert_cascade             left01.jpg               right06.jpg
convert_cascade.c           left02.jpg               right07.jpg
convexhull                  left03.jpg               right08.jpg
convexhull.c                left04.jpg               right09.jpg
cvsample.dsp                left05.jpg               right11.jpg
delaunay                    left06.jpg               right12.jpg
delaunay.c                  left07.jpg               right13.jpg
demhist                     left08.jpg               right14.jpg
demhist.c                   left09.jpg               scene_l.bmp
dft                         left11.jpg               scene_r.bmp
dft.c                       left12.jpg               squares
distrans                    left13.jpg               squares.c
distrans.c                  left14.jpg               stereo_calib
drawing                     lena.jpg                 stereo_calib.cpp
drawing.c                   letter_recog             stereo_calib.txt
edge                        letter_recog.cpp         stereo_match
edge.c                      letter-recognition.data  stereo_match.cpp
example_cmake               lkdemo                   stuff.jpg
facedetect                  lkdemo.c                 tree.avi
facedetect.cmd              minarea                  tree_engine
facedetect.cpp              minarea.c                tree_engine.cpp
fback                       morphology               watershed
fback_c                     morphology.c             watershed.cpp
fback_c.c                   motempl                  waveform.data

13、huanghuang@huanghuang-desktop:/openCV_samples$ ./grabcut   lena.jpg

 

14、试下摄像头。。
huanghuang@huanghuang-desktop:/openCV_samples$ ./camshiftdemo

效果不错,呵呵!
15、为了方便使用,我把它做到桌面的图标,类似于windows下面的图标。如下:

 

这样一点击就去可以用了,
要退出只要在终端中用ctrl+c。