① ubuntu怎麼設置opencv需要設置連接器中的庫
我在網上查找安裝方法時有兩種方式,第一種方案在第三步測試的時候沒有成功,不知道問題出在哪裡,換用了第二種方式。如果直接用第二種方式安裝不成功,可以試試進行第一種方式的第2步。
安裝環境是Ubuntu 10.04,內核版本2.6.32.22。OpenCV版本為2.4.3。
第一種方式,參考org.cn/index.php/Debian%E4%B8%8B%E5%AE%89%E8%A3%85
1.更新下載更新軟體包列表信息
$ apt-get update
2.查詢OpenCV相關軟體包
查詢獲得的內容和OpenCV軟體包版本有關
復制代碼
$ apt-cache search opencv
libcv-dev - development files for libcv
libcv4 - computer vision library
libcvaux-dev - development files for libcvaux
libcvaux4 - computer vision extension library
libhighgui-dev - development files for libhighgui
libhighgui4 - computer vision GUI library
opencv-doc - OpenCV documentation and examples
python-opencv - Python bindings for the computer vision library
harpia - Image Processing/Computer Vision Automatic Prgm. Tool
復制代碼
3.測試
進入軟體目錄/sample/cpp,執行以下命令
g++ `pkg-config opencv --libs --cflags opencv` drawing.cpp -o drawing
成功編譯並能執行表示安裝成功。
第二種方式,OpenCV 2.4.3同樣適用,參考自http://www.linuxidc.com/Linux/2012-12/75641.htm
1.安裝必要的依賴包
這一步我略去了,因為原文中提到的ffmepg1我並不需要安裝,並且我是從第一種方式轉過來的,就沒有安裝這些包,不過還是列在下面:
sudo apt-get install build-essential libgtk2.0-dev l www.hbbz08.com ibjpeg62-dev libtiff4-dev libjasper-dev libopenexr-dev cmake python-dev python-numpy libtbb-dev libeigen2-dev yasm libfaac-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev
2.安裝OpenCV
(1)下載OpenCV 2.4.3 http://sourceforge.net/projects/opencvlibrary/
(2) tar -xvf OpenCV-2.4.3.tar.bz2
(3)將其復制到 「 home/你的計算機名/」下;
(4)cd OpenCV-2.4.3
(5)mkdir release
(6)cd release
(7)
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_TBB=ON -D WITH_V4L=OFF -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=ON ..
如果沒有cmake,apt-get install就行
(8) make
(9)sudo make install
3.添加庫的路徑
(1)sudo gedit /etc/ld.so.conf.d/opencv.conf
文件可能需要創建,添加下面內容並保存
/usr/local/lib
(2)sudo ldconfig
(3) sudo gedit /etc/environment
添加下面內容
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
這時,再回到OpenCV-2.4.3/sample/cpp下時,用第一種方式的測試方法,drawing.cpp文件就能正確編譯,而且也可以通過生成的文件看到效果了。
2013.1.6更新:QT調用openCV庫(ixunjishu/qianrushipeixun/959.html)
QT的安裝過程就略去了,注意需要QT設計器和QTcreator,前者我是下源碼編譯的,後者用軟體中心裝的。
配置QT, sudo gedit /usr/share/qt4/mkspecs/default/qmake.conf
在文件內添加了下面兩句:
QMAKE_INCDIR = /usr/include/opencv
QMAKE_LIBS = -lcvaux -lcv -lcxcore -lhighgui -lml
實常式序,創建一個QT4 Console Application,代碼如下:
復制代碼
#include <cv.h>
#include <highgui.h>
int main()
{
IplImage *img = 0;
img = cvLoadImage("Lena.bmp",-1);//Lena.bmp在所建工程的目錄下
cvNamedWindow("lena", 1);
cvShowImage("lena", img);
cvWaitKey(0);
return 0;
}
復制代碼
關鍵的一步,在工程的.pro文件添加下面的內容:
復制代碼
INCLUDEPATH += /usr/include/opencv
LIBS += /usr/lib/libcv.so \
/usr/lib/libcvaux.so \
/usr/lib/libcxcore.so \
/usr/lib/libhighgui.so \
/usr/lib/libml.so
復制代碼
這時就能編譯運行了。
② linux下面的opencv怎麼添加新模塊
一、必須要安裝好cmake,這里可以通過指令直接鏈接到linux下的一個庫裡面有cmake版本
1.安裝cmake的安裝包
sudo apt-get install cmake
2.安裝cmake相關的依賴庫
sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev
libavformat-dev libjpeg.dev libtiff4.dev
③ OpenCV中機器學習模塊的用法
其基本步驟如下:
1.主機代碼執行;
2.傳輸數據到GPU;
3.確定grid,block大小;
4.調用內核函數,GPU運行程序;
5.傳輸結果到CPU;
6.繼續主機代碼執行。
注意的問題:cu,cpp文件的組織。
內核函數和其wrapper函數置於cu文件中。
在cpp文件聲明wrapper函數,並調用wrapper函數。
wrapper函數的聲明定義需加extern "C"。
OpenCV中GPU模塊的使用。
④ 如何編譯 opencv動態鏈接庫
在一個項目中需要用到OpenCV,剛開始使用了OpenCV的動態鏈接庫,這樣,在移動可執行程序時還必須將OpenCV動態支持庫一起搬移,很是麻煩。所以,最終選擇OpenCV靜態鏈接庫,這樣程序移植運行就方便了很多。
需要編譯成靜態庫以便於應用程序鏈接。
網上有的教程中寫的在VC++2010下安裝OpenCV2.1時用到了TBB庫,而我在編譯鏈接自己的程序後需要用到TBB.dll。本人設計的目的就是要做一個獨立的界面程序,不需要攜帶其他第三方庫。經過一段時間的努力最終找到了編譯OpenCV2.1靜態庫的方法。
需要的工具環境及文件:
-------------------------------------------------------------------------------------------------------------
1、Windows XP
2、VC++2010(VS2010)
3、為編譯OpenCV源碼包(我下載的有:OpenCV2.1.0,OpenCV2.3.0及OpenCV2.4.4)
4、CMake2.8.9
說明:OpenCV各版本官方下載地址:opencv.org/
cmake-2.8.9下載地址:ishare.iask.sina.com.cn/download/explain.php?fileid=35025936
--------------------------------------------------------------------------------------------------------------
以OpenCV2.1.0編譯靜態庫為例
CMake配置
-------------------------------------------------------------------------------------------------------------
打開CMake並設置:
Where is the rource code :OpenCV源代碼所在的文件夾
Where to build the binaries:CMake配置好得到的文件放在位置(我的:E:\OpenCV2.1.0-prj)
然後點擊configure,選擇"Visual Studio 10"。然後確定。
等待configure完成,會出現很多紅色的選項,因為主要是生成OpenCV的庫,所以只需保留某些選項:
去掉BUILD_NEW_PYTHON_SUPPORT,BUILD_SHARED_LIBS, BUILD_TESTS
勾選OPENCV_BUILD_3RDPARTY_LIBS, WITH_TBB,WITH_JASPER, WITH_JPEG,
WITH_PNG, WITH_TIFF選項,
然後再點擊configure,如下圖:
提示TBB_INCLUDE_DIR找不到,因為我們不需要TBB庫,所以忽略,再一次點擊configure。
等待配置完成,最後點擊generate,完成後關閉CMake。
-------------------------------------------------------------------------------------------------------------
VC++2010編譯靜態庫
-------------------------------------------------------------------------------------------------------------
進入E:\OpenCV2.1.0-prj目錄,使用VC++2010打開.sln文件,打開項目管理器
這時候會看到
解決方案中有很多小項目存在。
註:這時我們右鍵任意點擊一個子項目(如cv),選擇屬性,可以在配置屬性下的常規項目中看到,配置類型為
靜態庫(lib)。
按住ctrl鍵,選中除過ALL_BUILD, INSTALL, ZERO_CHECK,
uninstall四個項目的其他所有項目,在菜單中選擇項目->屬性,打開配置屬性->c/c++->代碼生成選項,在右側窗口中的運行時庫中選擇多線程調試(/MTd),然後確認。
說明:這里有四個選項(/MT, /MTd, /MD,
/MDd),前兩個一組,為靜態鏈接運行時庫,運行時不需要運行時庫的支持,代碼直接插入到程序中去;後兩個一組,為動態鏈接運行時庫,運行時需要msvcr90.dll或msvcp90.dll支持。
我們先編譯Debug版的OpenCV靜態庫,在解決方案"opencv"(22個項目)上單擊右鍵,選擇重新生成解決方案,此時便開始編譯OpenCV庫了,等編譯結束會提示完成16個,失敗4個:
這四個項目生成的是exe程序,不需要管他們。到這步我們已經生成了Debug版本的靜態庫!
然後我們用相同的方式生成Release版的庫,在之前的基礎上只需要將選項選擇多線程/MT,再進行編譯。編譯時警告很多,直接忽略!
注意:/MT即是Release版本,/MTD即是Debug版本。
最終我們需要的靜態庫就存在:E:\OpenCV2.1.0-prj/lib 和 E:\OpenCV2.1.0-prj/3rdparty/lib
兩個目錄,我們編譯好的庫就在這兩個文件夾下。分別
將E:\OpenCV2.1.0-prj/3rdparty/lib中Debug
下面的所有文件Copy到E:\OpenCV2.1.0-prj/lib中的Debug 文件中。
將E:\OpenCV2.1.0-prj/3rdparty/lib中Release下面的所有文件Copy到E:\OpenCV2.1.0-prj/lib中的Release文件中。
⑤ opencv和opencv4android的區別
方法/步驟選圖,兩張圖的重疊區域不能太小,我個人認為最少不少於15%,這樣才能保證有足夠的角點匹配。角點檢測。這一步OpenCV提供了很多種方法,譬如Harris角點檢測,而監測出的角點用CvSeq存儲,這是一個雙向鏈表。角點提純。在提純的時候,需要使用RANSAC提純。OpenCV自帶了一個函數,FindHomography,不但可以提純,還可以計算出3x3的轉換矩陣。這個轉換矩陣十分重要。角點匹配。經過提純後的角點,則需要匹配。圖像變換。這一步我曾經嘗試過很多法,最後選擇了FindHomography輸出的變換矩陣,這是一個透視變換矩陣。經過這個透視變換後的圖像,可以直接拿來做拼接。圖象拼接。完成上面步驟之後,其實這一步很容易。球面變換。這一步需要對坐標系進行轉換,從平面坐標到球面坐標。
⑥ 求OpenCV的傻瓜教程
OPENCV教程網路網盤免費資源在線學習
鏈接: https://pan..com/s/1Ecei7hikkS8HHIGTGXtlkQ
OPENCV教程 附贈:Opencv書籍 《OpenCV3編程入門》書本配套源代碼 08
人工智慧之OpenCV人臉識別案例實戰視頻教程 07
OpenCV3.3深度神經網路(DNN)模塊-應用視頻教程 06
OpenCV視頻分析與對象跟蹤實戰教程 05
OpenCV圖像分割實戰視頻教程 04
OpenCV級聯分類器訓練與使用實戰教程課程 03
OpenCV圖像處理-小案例實戰 02
OpenCV特徵提取與檢測實戰視頻課程 01
OpenCV圖像處理視頻課程 OpenCVjc-jcp.rar OpenCV3編程入門電子書及配套源碼.zip
課程配套源代碼.zip
課程配套PPT.zip
⑦ opencv中的Dnn模塊怎麼用Java調用
1.檢查環境變數設定。
比如:所編輯的Dll在目錄「D:/cppProjects/nativecode/release」內,將這個路徑復制添加到電腦的環境變數中的path變數內即可。
2.檢查項目屬性設定。
右擊項目名|選擇屬性properties|在左邊列表內選擇「Java Build Path」|在右邊選項卡用選擇「source」|點開項目名前的「+」號,選擇「Native library location」,「Edit」選擇上面「D:/cppProjects/nativecode/release」路徑。(當然如果將dll拷貝到workspace下也可以用相對路徑。也可右擊「src」設定其properties內Native Library項。)