❶ linux 怎麼用opencv
預備
GCC
CMake
OpenCV
這些都可以在CentOS 6.0的「添加/刪除軟體」裡面找到並安裝。其他Linux版本可以選擇用編譯後安裝或者在Rpmfind尋找二進制安裝版本:
http://rpmfind.net/
CentOS安裝OpenCV 2.4+
下載OpenCV 2.4+壓縮包解壓到一個文件夾里,如:/home/me/opencv/
構建Makefile,在終端輸入,進行構建:
cd /home/me/opencv/
cmake .
進行編譯並安裝,編譯過程可能有些警告發生,請無視這些警告:
make
make check
make install
寫一個OpenCV程序
新建一個簡單的程序,例如:DisplayImage.cpp。
#include <stdio.h>
#include <cv.h>
#include <highgui.h>
//使用cv這個命名空間
using namespace cv;
/* 主函數
*C語言規定main函數只能有兩個參數,
*習慣上將這兩個參數寫成argc和argv。
*第一個代表(傳參個數+1),
*第二個代表傳慘數據。
*一般有兩種寫法:
*main( int argc, char* argv[])
*main( int argc, char** argv)
*/
int main( int argc, char** argv )
{
//建立一個Mat類型的變數image
Mat image;
/* API中有:
* C++: Mat imread(const string& filename, int flags=1 )
* 意思是返回Mat類型數據,第一個參數接受一個string類型的引用,
* 第二個參數接受一個int類型的flags,一般都是1。
*/
image = imread( argv[1], 1 );
//當傳的參數不是一個,或者圖片沒有數據則提示沒有圖片並退出程序
if( argc != 2 || !image.data )
{
printf( "沒有該圖片 \n" );
return -1;
}
//C++: void namedWindow(const string& winname, int flags=CV_WINDOW_AUTOSIZE )
namedWindow( "顯示圖片", CV_WINDOW_AUTOSIZE );
//C++: void imshow(const string& winname, InputArray mat)
imshow( "顯示圖片", image );
//C++: int waitKey(int delay=0)
waitKey(0);
return 0;
}
新的頭文件寫法
同樣的程序,可以用新的頭文件寫法來寫:
#include "opencv2/core/core.hpp"
#include "opencv2/highgui/highgui.hpp"
#include <stdio.h>
using namespace cv;
int main( int argc, char** argv ){
Mat image;
image = imread( argv[1]);
if( argc != 2 || !image.data ){
printf("沒有圖片\n");
return -1;
}
namedWindow( "顯示圖片", CV_WINDOW_AUTOSIZE );
imshow( "顯示圖片", image );
waitKey(0);
return 0;
}
創建一個對應的CMake文件
新建一個CMakeLists.txt,內容大概是這樣的:
project( DisplayImage )
find_package( OpenCV REQUIRED )
add_executable( DisplayImage DisplayImage )
target_link_libraries( DisplayImage ${OpenCV_LIBS} )
生成可執行文件
cd <DisplayImage_directory>
cmake .
make
結果
生成了一個DisplayImage文件,所以運行這個文件,將文件路徑傳進去:
./DisplayImage lena.jpg
你就能看到圖片了
❷ opencv linux版本2.4.10和3.0的區別
#include <stdio.h>
/* 原始版本頭文件
#include <opencv\cv.h>
#include <opencv\cxcore.h>
#include <opencv\highgui.h>
*/
//新版本(2.4.10)頭文件
#include <opencv2\opencv.hpp>
#include <opencv2\highgui\highgui.hpp>
#include <opencv2\core\core.hpp>
using namespace cv;
int main()
{
// 新版本opencv 2.4.10
Mat imgSrc = imread("F:\\project\\opencv_1\\1.jpg");
namedWindow("Test");
imshow("Test", imgSrc);
waitKey();
/* 原始版本opencv
IplImage *img = cvLoadImage("F:\\project\\opencv_1\\1.jpg");
cvNamedWindow("Test", CV_WINDOW_AUTOSIZE);
cvShowImage("Test", img);
cvWaitKey(0);
cvReleaseImage(&img);
cvDestroyWindow("Test");
printf("Over!\n");
*/
return 0;
}
❸ linux怎麼切換opencv版本
1.注意事項:安裝目錄!
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local/opencv3.1.0 ..1
CMAKE_INSTALL_PREFIX之後的路徑就是opencv的安裝目錄了。之前的opencv2.4.13安裝到了根目錄,即/usr/local/里,所以之後的opencv3.1.0安裝到了/usr/local/opencv3.1.0/中這里,兩個版本opencv目錄一定要分開,不能安裝到同一個路徑下,否則會出現問題!
2.切換方式
切換方式其實比較簡單,把環境變數的路徑改一下就可以了。
a)
sudo gedit /etc/ld.so.conf.d/opencv.conf1
把opencv的lib路徑添加進去:
opencv3.1.0:
/usr/local/opencv-3.1.0/lib1
opencv2.4.13:
/usr/local/lib1
b)
sudo ldconfig1
c)
sudo gedit /etc/profile1
在最後加入PATH路徑:
opencv3.1.0:
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/opencv-3.1.0/lib/pkgconfig
export PKG_CONFIG_PATH12
opencv2.4.13:
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH12
d)
sudo gedit /etc/bash.bashrc 1
在最後添加PATH路徑:
opencv3.1.0:
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/opencv-3.1.0/lib/pkgconfig1
opencv2.4.13:
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig1
3.查看opencv版本:
pkg-config --modversion opencv
pkg-config --cflags opencv
pkg-config --libs opencv123
實際使用中發現還是在尋找opencv2.4.13.
如果編譯使用的是cmake,打開CMakeLists.txt,添加:
set(OPENCV_DIR 「/home/ubuntu/opencv-3.1.0/build」)
如果上述方法還沒有作用,那麼就只好卸載不需要的opencv版本了:
cd opencv-2.4.13/release
sudo make uninstall
cd ..
sudo rm -r release
sudo rm -r /usr/local/include/opencv2 /usr/local/include/opencv /usr/include/opencv /usr/include/opencv2 /usr/local/share/opencv /usr/local/sh
關於更多Linux的學習,請查閱書籍《linux就該這么學》。
❹ opencv官網怎麼沒有linux
http://opencv.org/releases.html這裡面有opencv各個版本的下載,裡面都有linux的版本啊!linux版本的不像其他版本的是直接解壓縮就可以了,因為linux系統版本太多,需要下載源代碼版本,然後使用CMake工具對代碼進行編譯。
❺ linux16.04怎麼安裝opencv
一、到Opecv-Release的Github項目上下載最新的Opencv版本,注意---基於python2.7,可選用 OpenCV2.3/2.4 以及 OpenCV3.X,我們選取版本3.3:
二、安裝GUN GCC編譯器,對於Ubuntu16.04版本的Linux操作系統這款編譯器是自帶的
三、安裝Cmake跨平台編譯工具(CMake 可以編譯源代碼、製作程序庫、產生適配器(wrapper)、還可以用任意的順序建構執行檔)安裝的方法:sudo apt-get install cmake
我已經安裝好了,就提示無需更新,無需安裝
四、安裝python2.7,在ubuntu中一般來說是自帶python2.7的,如果沒有安裝,請參看博客中其他的教程
五、安裝numpy,在安裝好python之後建議您安裝pip,安裝完pip之後就可以使用pip來安裝各種各樣的庫了,pip install numpy
我已經安裝好了,就提示無需更新,無需安裝
六、安裝pkg-config指令(注意,這里的安裝很重要,例如libgtk2.0-dev軟體包涉及到了opencv中的imshow等窗口調用能否使用的問題):
sudo apt-get install pkg-config libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
開始安裝Opencv For Python:
1、找到下載的Opencv3.3的目錄:
2、執行下面的指令(在執行指令的過程之前,我們可以切換到su超級許可權下進行操作):
tar -xzvf opencv-3.3.0.tar.gz
cd opencv-3.3.0/
cd ..
mkdir my_build_dir
cd my_build_dir
cmake ../opencv-3.3.0 -DWITH_GTK_2_X=ON -DCMAKE_INSTALL_PREFIX=/usr/local
make # make -j4表示開4個線程來進行編譯
make install
❻ 怎麼安裝opencv linux
OpenCV是一個基於開源發行的跨平台計算機視覺庫,它輕量級而且高效——由一系列 C 函數和少量 C++ 類構成,同時提供了Python、Ruby、MATLAB等語言的介面,實現了圖像處理和計算機視覺方面的很多通用演算法。在linux上安裝opencv的方法如下:
工具:
Windows7、VMware Workstation 12 Pro、ubuntu-15.10、opencv-3.0.0.zip
步驟:
一、安裝關聯庫
1、安裝編譯工具:sudo apt-get install build-essential
編譯程序有了這個軟體,它才知道頭文件和庫函數在哪,最後才形成一個開發環境。
❼ opencv for linux 是 sources版嗎
opencv的各個安裝版本其實都是帶有源碼的。只不過windows版本已經編譯好了各種dll等庫文件,因為windows的系統版本相對固定。linux操作系統版本太多,沒法直接給出各種so文件,所以linux版本一般都是源代碼版本,然後使用cmake進行編譯安裝。
❽ Linux下怎麼配置python和opencv
以下說明在Linux下Python和OpenCV結合安裝的過程,Python要使用OpenCV模塊,則必須導入OpenCV提供的包,所以要提供Python支持,首先在安裝OpenCV前安裝必要的組件,一般列表如下:
1、gcc g++一般系統自帶
2、cmake 編譯OpenCV時使用,需要手動安裝
3、pkg-config命令,一般系統自帶,如果缺少,使用 yum -y install pkg-config 安裝
4、Python 2.x,系統自帶
5、NumPy 一個用於大型矩陣處理的庫,這個必須!如果不安裝則後面OpenCV安裝後也編譯不出來Python的模塊,其他庫可以後來安裝
最後一步是安裝OpenCV
在保證前4項沒問題的情況下,開始安裝NumPy模塊,官網下載地址為:http://www.scipy.org/scipylib/download.html
進入SourceForge下載,地址為:https://sourceforge.net/projects/numpy/
直接點擊Download即可下載,下載成功之後上傳到Linux伺服器,安裝過程很簡單,解壓後直接安裝即可(之前要確保python-devel已經安裝)
unzip numpy-1.11.1.zip
cd numpy-1.11.1/
python setup.py install
另外numpy還可以去python官網下載:https://pypi.python.org/pypi/numpy
安裝成功之後接下來進一步安裝OpenCV,官方網站為:http://opencv.org/進入後點擊DOWNLOADS來到下載界面:http://opencv.org/downloads.html,這里下載2.4.13的版本
下載完之後上傳到Linux,執行接下來的安裝:
unzip opencv-2.4.13.zip
cd opencv-2.4.13/
cmake -D WITH_GTK_2_X=ON -D CMAKE_INSTALL_PREFIX=/usr/local .
make # make -j4表示開4個線程來進行編譯
make install
安裝過程時間可能會有點長10~30分鍾左右,編譯完成之後OpenCV就安裝到了指定的/usr/local下面的一些目錄中,庫文件就安裝到了/usr/local/lib下,Python的模塊安裝位置是:/usr/local/lib/python2.7/site-packages,執行 ls /usr/local/lib/python2.7/site-packages/ 可以看到兩個文件,一個是cv2.so一個是cv.py
這兩個文件在剛才opencv-2.4.13編譯的目錄下面lib/下也存在著兩個python模塊文件,但是不幸的是現在並不能直接使用,原因是我們操作系統python依賴包的位置是/usr/lib/python2.7下,所以剛才如果編譯到/usr下是直接可以用的,不過這個也不重要,只要我們將這兩個文件復制到正確的目錄下,那麼就能正常使用OpenCV的功能了,執行: cp /usr/local/lib/python2.7/site-packages/cv* /usr/lib/python2.7/site-packages/ 復制過去之後進入python互動式界面執行 import cv2 沒有報錯則安裝成功
可以寫一個測試的小案例,在伺服器上有一張圖片是test.jpg現在簡單的使用cv2模塊解析成圖像矩陣,然後再寫入磁碟文件中,代碼如下:
#!/usr/bin/python
# -*- coding:utf-8 -*-
import cv2
image = cv2.imread("test.jpg")
print image
cv2.imwrite("test1.jpg",image)
這里將原有的test.jpg生成test1.jpg,
執行 python cvtest.py 執行完後會發現輸出好多矩陣變數,並且生成了test1.jpg文件
生成的文件有可能比原文件大也有可能小,具體根據圖像來決定,現在查看一下圖片內容,和之前是一樣的
❾ linux下opencv-2.4.13要用哪個版本的cmake來進行編譯
1.下載然後解壓安裝壓縮包
unzip opencv-2.4.13.zip
2. 進入剛解壓的文件夾,建立release文件夾
cd opencv-2.4.13mkdir release
3. 安裝一下必須的依賴庫
sudo apt-get install build-essential cmake libgtk2.0-dev pkg-config python-dev python-numpy libavcodec-dev libavformat-dev libswscale-dev
4. 進入release文件夾,用cmake編譯OpenCV的源碼,把lib安裝到/usr/local目錄下
cd release
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..
5. 安裝
sudo make install
❿ 如何在Linux下編譯安裝OpenCV
下載opencv的linux安裝版,使用cmake工具編譯安裝,按照opencv的安裝文檔,一般是先執行cmake config,然後執行cmake install。