標籤:

新手學opencv怎麼做?opencv各個版本有什麼區別?

原諒我問太多,作為一名本科學習機械的研究生,研究生跑過去學能源,但是導師卻要我做圖像處理,寫個小軟體出來。最近我才剛剛學完圖像處理基本知識,想看看opencv。以下哪基本書適合新手?(準備買,但是實在不知道哪些適合,這幾本書基本圖書館都借完了。電子版看來看去,實在看得頭暈)

1.OpenCV3編程入門

2.學習OpenCV

3. OpenCV2計算機視覺編程手冊

4.OpenCV教程:基礎篇。

最後問下?opencv3和opencv2,1有什麼區別?學哪個簡單,容易入門?


樓主你選個最實用的吧,opencv2。

opencv2現有的學習資料最多,而且當前基於它的項目也最多。

熟悉了它之後,無論退到opencv1,還是要用opencv3,都非常容易,基本不用花多餘的功夫。


既然題主是學能源的,估計以後再用到這塊的機會不太多了。

那就花點功夫把老闆要你做的這部分圖像處理的活幹了就好了,可以先把老闆的要求細化規整下來為幾個具體的要求,然後直接找找看OpenCV里有沒有相關的函數,一般是有的,直接利用起來,花點時間調調程序一般就沒問題了,其間有不懂的地方可以查書或Google都行。

1、書的話買也成,不買看電子版也無所謂,書都沒太大區別,反正是當工具書用了。你用的哪個版本的OpenCV就看對應版本的書就好了。

2、OpenCV3和OpenCV2.X區別大概就是OpenCV3在架構上做出了一些調整,添加了一些新演算法,同時引入了T-API等等。對於題主的需求來說,私下以為用2.X比較合適,有些像SIFT演算法之類的3裡面沒有,2.X在這種情況下用起來方便一點可能。總之,兩者學起來都不難,畢竟只是一個工具,入門還是挺快的都。


瀉藥。

《學習Opencv》算是很經典的了,我們實驗室人手一本。《Opencv3編程入門》最近在看,入門挺好的,淺顯易懂,建議看過之後再去看《學習Opencv》。《編程手冊》也有很多人推薦,還沒上手不好評論。我之前學習這塊的時候,是先整體瀏覽快速入門,然後再針對你做的方向去看具體細節,畢竟研究生時間還是很短的,一方面你要上課,還要接老闆項目,哪來那麼多時間全面發展,至少我現在都還沒入門,自己的體會是這樣的。

3和2.x的區別樓上也有說,還是建議用2.x吧。想入門也挺快的,看你怎麼定義這個入門了。還是了解自己的研究方向,是目標檢測還是跟蹤或者是分類等等,針對性的學,可能更快一點。加油!


介紹一本opencv不錯的書-OpenCV3使用Java開發手冊

本書特色:


◎內容涵蓋機器學習、光學辨識、影像處理


◎具320多個範例,含2.x(2.4.13)、3.x(3.1)版


◎包含目前最夯最熱門的人工智慧:機器學習、光學辨識及影像處理。


◎全世界博碩士很多以opencv做為論文的開發工具。


◎許多工作皆需要光學辨識技能,如Robot、自動辨識。


◎此書是全世界OpenCV書中以Java展示最多的範例,約320個

第13章 Machine Learning機器學習 523

範例13-1-1人臉辨識 524

範例13-1-2人臉辨識Live版 527

範例13-1-3人臉辨識含眼鼻Live版 527

範例13-1-4人臉眼鼻快速辨識Live版 529

範例13-1-5 整合應用:檢測到眼睛自動添加眼鏡Live版 531

範例13-1-6檢測到眼睛自動添加半透明眼鏡Live版 534

範例13-1-7檢測行人 535

範例13-1-8檢測車輛 537

範例13-1-9 DetectMultiScale3參數測試 538

範例13-1-10計算車流量 540

範例13-1-11 偵測RJ45網路頭Live版 542

範例13-2-1 電腦小手寫板程式Live版 549

範例13-2-1a手寫數字的資料庫 552

範例13-2-1b鳶尾花資料庫 555

範例13-3-1常態貝葉斯分類器預測鳶尾花數據集 560

範例13-3-2常態貝葉斯分類器-預測手寫數字 561

範例13-3-3常態貝葉斯分類器-預測手寫數字Live版 563

範例13-4-1決策樹Decision Trees預測鳶尾花數據集 565

範例13-4-2決策樹-預測手寫數字 569

範例13-4-3決策樹-預測手寫數字Live版 571

範例13-5-1最大期望值EM-預測鳶尾花數據集 572

範例13-5-2最大期望值-預測鳶尾花數據集二元分類 576

範例13-5-3最大期望值-預測鳶尾花數據集3類修改版 578

範例13-5-4最大期望值-預測手寫數字 581

範例13-5-5最大期望值-預測手寫數字(二元分類) 583

範例13-5-6最大期望值-預測手寫數字Live版 586

範例13-6-1 Logistic回歸-預測鳶尾花數據集 586

範例13-6-2 Logistic回歸-預測手寫數字 590

範例13-6-3 Logistic回歸-預測手寫數字,調整參數 593

範例13-6-4 Logistic回歸-預測手寫數字Live版 593

範例13-7-1 KNN-預測鳶尾花數據集 594

範例13-7-2 KNN-預測鳶尾花數據集2 597

範例13-7-3 KNN-預測手寫數字 600

範例13-7-3 KNN-預測手寫數字Live版 602

範例13-7-5 KNN-分類練習 602

範例13-8-1 隨機森林-預測鳶尾花數據集 604

範例13-8-2隨機森林-預測手寫數字 607

範例13-8-3 隨機森林-預測手寫數字Live版 609

範例13-9-1 Boost分類-預測鳶尾花數據集 609

範例13-9-2 Boost分類-預測鳶尾花數據集2 612

範例13-9-3 Boost-預測手寫數字 615

範例13-9-4 Boost-預測手寫數字Live版 617

範例13-10-1 類神經網路-初聲試啼小練習 618

範例13-10-2 類神經網路-預測鳶尾花數據集 623

範例13-10-3類神經網路-預測手寫數字 625

範例13-10-4類神經網路-預測手寫數字Live版 627

範例13-11-1 SVM-預測鳶尾花數據集 627

範例13-11-2 SVM預測手寫數字 631

範例13-11-3 SVM預測手寫數字Live版 633

範例13-11-4 SVM分類練習於2D平面 633

範例13-12-1 Kmean(K均值)簡單分類 636

範例13-12-2 Kmean 1維數據分類 640

範例13-12-3 Kmean 2維數據分類 643

範例13-12-4 Kmean 應用於影像處理-減色處理 646

範例13-12-5 Kmean預測分類-鳶尾花數據集 648

範例13-12-6 Kmean預測分類-手寫數字數據集 650

範例13-12-7 Kmean預測分類-手寫數字Live版 652

範例13-13-1馬氏距離 654

範例13-13-2馬氏距離使用於-鳶尾花數據集 656

範例13-13-3馬氏距離使用於-手寫數字數據集 657

範例13-13-4修改馬氏距離使用於-手寫數字數據集 660

範例13-13-5修改馬氏距離使用於-鳶尾花數據集 665

範例13-13-6修改版馬氏距離使用於-預測手寫數字Live版 666

範例13-14-1主成份分析PCA 671

範例13-14-2鳶尾花數據集使用PCA降維 673

範例13-14-3鳶尾花數據使用PCA降維整合Kmean聚類處理 675

範例13-14-4鳶尾花數據使用PCA降維整合Knn分類處理 678

範例13-14-5手寫數字集使用PCA降維整合Kmean聚類處理 680

範例13-14-6 手寫數字集使用PCA降維整合KNN及SVM分類 682

範例13-14-7 改善手寫數字集使用PCA降維整合KNN及SVM 685

範例13-14-8 改善鳶尾花數據使用PCA降維整合KNN分類 689

範例13-14-9個人人臉辨識整合PCA與SVM計算 690

範例13-14-10個人人臉辨識整合PCA與LibSVM計算 694

範例13-15-0車牌辨識 699

範例13-15-1 Java呼叫外部命令Tesseract字元識別引擎 701


OpenCV3編程入門,這本書就夠了。《學習opencv》里有許多圖像基礎理論,外加函數講解,雖然是opencv1,但是借鑒性很大,可以下載一個電子版的看看,因為主要的庫函數幾乎沒變。《OpenCV3編程入門》這本書其實主要是講opencv2,作者在主體上基於opencv2.4.9寫的。

opencv3的改變,可以參考https://zhuanlan.zhihu.com/p/19988205

opencv只是個函數庫,重要在於演算法思想,沒必要單獨花時間去學,項目中要用什麼函數,就直接找就行。


如果opencv主頁沒有推出2.4.1x的話 我是推薦3的!畢竟在配置階段你就知道opencv3比從前簡化了不要一點點。。哪怕現在有新版的2.4.1x 我也還是推薦3.。。雖然資料少一點,但是基本還是可以參照2.4.10的所有資料的 不怕用新的 畢竟語言自己也會更新換代 也有更多的東西添加上去


同是新手 剛剛入門 共同討論學習 關於opencv國內的學習資料真的很少~大多也是國外的譯文版

建議先看《opencv3編程入門》這本適用於現在opencv2和3的版本 代碼寫的很規範 注釋內容也詳細 內容從細節寫起 讓人一眼就看得懂 重點是它還有完整的實例 比如這個功能怎樣去實現的 他把代碼從頭到尾貼出來 適合新手模仿和入門

同時匹配著看編程手冊 這本相對於上一個多了點原理 也就是說讓你不僅知道編程的結果還有過程 (不過這個譯本錯誤較多 具體斟誤的話網上有~)

最後如果你想的話就再看學習opencv 這本是1.0版本 編程語言也是c 反正我看著沒有2和3的版本舒服~就沒有再看了……但基本用opencv的前輩們都是從這本看起的(畢竟當時資源少)這本原理上更多 相對你解決問題的方法也會多一點 看你自己的情況而定嘍~

第四本教程我沒有看過不了解~

1.0就是最原始的c介面 後面更新的2 3啊是c++ (但貌似現在又興起了python做圖像?)個人認為2和3沒太大差別 現在普遍用的還是2 大多2.4.8 或2.4.9

最後想說 如果選擇做圖像處理 不管你用什麼語言 編程基礎還是很重要滴~


推薦閱讀:

1.5【OpenCV圖像處理】讀寫像素
有什麼好的機器視覺相關網站推薦呢?
[171104] 基於 Python OpenCV 圖像處理的顆粒物計數(如細胞和瓜子計數)
在 MFC 框架中,有什麼方法能直接將 OpenCV 2.0 庫中 Mat 格式的圖片傳遞到 Picture Control(圖片控制項)顯示?
ImagePy 簡介

TAG:OpenCV |