tft每日頭條

 > 生活

 > opencv極簡教程

opencv極簡教程

生活 更新时间:2025-03-12 18:02:16

opencv極簡教程?經常有人問我計算機視覺怎麼入門,OpenCV怎麼入門網上也有很多回答我看了部分回答,覺得還是有必要說一下雖然很久不寫這類文章了,專業知識方面的文章我也都删了,畢竟隻看這類文章對學習幫助不大,反而可能誤導學習有時間看這類文章的人,還不如多動手練習,今天小編就來說說關于opencv極簡教程?下面更多詳細答案一起來看看吧!

opencv極簡教程(計算機視覺入門)1

opencv極簡教程

經常有人問我計算機視覺怎麼入門,OpenCV怎麼入門。網上也有很多回答。我看了部分回答,覺得還是有必要說一下。雖然很久不寫這類文章了,專業知識方面的文章我也都删了,畢竟隻看這類文章對學習幫助不大,反而可能誤導學習。有時間看這類文章的人,還不如多動手練習。

先簡單總結下部分網上的回答,這些回答大部分是推薦看書或視頻,比如CV成長指南、深度學習進階、線性代數、矩陣分析、數據結構、機器學習、統計學習方法、信息論、AI經典論文以及深度學習等等。我想,如果照着這種方式學下去,估計很多人還沒開始就要放棄了。還有的說直接看深度學習,然後找幾篇論文看下,就算入門了,這種純粹就是為了寫論文,對以後工作幫助不大,當然,如果找到一家以論文為主的單位,可能發展也不錯,但是肯定做不了應用。如果你覺得看了書或視頻,就認為自己已經入門了,那麼,請回答我下面的幾個簡單的問題:

1、什麼是數字圖像?

2、什麼是灰度圖,什麼是二值圖,什麼是彩色圖?顔色空間有哪些?

3、什麼是圖像的位數、什麼是圖像的通道?主流的圖像格式有哪些?有什麼特點?

如果連這些最基本的都沒有弄清楚,怎麼能算入門呢?另外多說一句,很多人将深度學習當成了計算機視覺。

再來一個稍微深一點的問題:

什麼是圖像特征?圖像特征有哪些?目前有哪些提取圖像特征的方法?圖像特征提取出來後怎麼表示?好好思考下,看自己能否回答得出來。

現在很多人做計算機視覺,畢竟視覺算法的崗位待遇不低,但是恐怕在不久的将來就會發生變化,前段時間看新聞說不少大的企業都開始裁員算法崗,我也不知道真假。但是有一點我還是比較清楚,企業需要的是能帶來實際效益的人,而不是隻會寫論文的人。我喜歡把做算法的人分為兩類,一類我稱為算法設計師,另一類我稱為算法研究人員。

對于第一類人員,應該是目前大部分做算法的人都屬于此類,主要就是使用算法,進行各種算法組合實現某個目标,調整一下算法的參數,對于企業而言,其實是需要這部分人将某個應用落地,從而帶來實際的效益。但是很遺憾,目前這部分人中也有大部分不合格,不能算是合格的算法設計師,很多人連基本的算法都不懂。對于第二類人員,目前能做純算法研究的人,實際是極少部分人。企業很少需要這類人,主要在高校或研究所,雖然論文數量不少,做得深的卻不多。當然,基礎研究必須要做。

怎麼學習計算機視覺?我想,首先應該搞清楚計算機視覺是什麼,能幹什麼,然後是怎麼幹。對于OpenCV的學習也是同樣的道理。後面我會給出我認為的學習路線,各位可以對照看下自己是否能學下去。

首先應該明确的是計算機視覺不等于深度學習,對于目前很多人都将計算機視覺與深度學習劃等号,至少很多人認為學好深度學習就是在搞計算機視覺,這是完全錯誤的。再說一點,所有的計算機視覺任務,歸根結底,就是要提取圖像的特征。深度學習隻是計算機視覺圖像處理中的其中一種算法。

計算機視覺簡單來說可以認為就是圖像處理,這種圖像處理與用PS軟件做圖像處理是不同的,具體的概念我就不詳述了。那麼,計算機視覺能幹什麼呢?當前,計算機視覺主要用于缺陷檢測、識别、分類、結合機器人的視覺引導定位、測量。所以不要隻是看到識别這一個方向。哪些地方需要用到計算機視覺呢?這個問題就沒什麼好說的了,幾乎每個行業都會用到,或者說都有視覺的需求。這其中又以工業生産為最,畢竟工業生産的體量最大。最後一個,計算機視覺怎麼幹?這個問題簡單,就是使用各種圖像處理算法實現某個任務。

我也不想說太多,下面我給出一種入門和提高的路線,不需要你學習那麼多聽起來就讓人聞風喪膽的知識,隻要你上過大學,學了點高等數學,線性代數和概率論就可以了,畢竟這幾門課程是每個理工科學生都要學的。

一、入門階段:

1、查閱什麼是數字圖像,熟悉我前面提到的幾個簡單的問題,就算是和數字圖像認識了。

2、學習OpenCV,結合使用OpenCV,了解并熟練使用以下函數:

(1)直方圖

(2)圖像平滑:均值濾波、高斯濾波、中值濾波、雙邊濾波。

(3)圖像增強:線性拉伸、對數變換、直方圖均衡化

(4)圖像銳化與邊緣檢測:sobel、laplacian、canny

(5)數學形态學:膨脹、腐蝕、開運算、閉運算

(6)圖像分割:二值化分割、局部自适應二值化

(7)圖像輪廓:查找輪廓、輪廓的長度和面積、最小包圍輪廓

(8)模闆匹配

3、看我微頭條給出的四個例子,把它都實現了。

到這裡,如果你都學會了,你會發現其實很多視覺應用好像都可以做了。

二、提高階段:以下内容隻要求會用,不用去看原理

1、圖像幾何變換

2、圖像特征:HOG、SIFT、SURF、ORB

3、相機标定

4、SVM(支持向量機)

5、CNN(卷積神經網絡)

到這裡,你會發現原來圖像變換,圖像各種任務也就那麼回事兒。

三、研究與寫論文階段

如果上面的内容你沒有做,我不建議你去做下面的事情。如果上面的内容你還不滿足,可以接着做下面的事情,結合源代碼把下面提到的算法原理搞清楚,

1、HOG、SIFT

2、SVM

3、線性回歸

4、CNN

好了,就這樣吧,上面的内容搞清楚了,你會發現原來看論文也不過如此,同時你會有寫論文的沖動。

要做到我上面提到的内容,需要多長時間?這麼說吧,前兩個階段找對了方法和工具,一個月有所小成,兩個月後會覺得好像自己什麼視覺應用都可以做。然後再做一段時間應用案例,會發現自己好像很多應用又做好不了。為什麼會這樣?哈哈哈哈,自己去思考,其實這時候你的水平已經比很多人都高了。最後階段需要多長時間,如果你已經做下去了,那可能就是一輩子的事情了。

最後,端午節到了,祝大家端午安康。

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2025 - www.tftnews.com All Rights Reserved