openCV圖像處理常用算法總結

一、直方圖和濾波器

1、直方圖:在灰度圖中,每個點的像素範圍爲 0~255 ,密度是具有該值的圖像像素數量。

2、色彩均衡:色彩均衡的目的是獲得分佈更加均勻的直方圖。其結果將會導致圖像的對比度增加。

3、LUT色彩空間轉換表:生成一個256個元素的矩陣,取得要從源空間變換到目標色彩空間的變換函數f(x)。從0到255,對每個數字帶入到f(x)中,將得到的結果存入到矩陣中對應的位置。然後,對要處理的圖像使用這個表就可以將全部色彩元素對應到相應的色彩空間,這樣節省了大量的計算性能。

4、濾波器:這裏濾波器我們可以理解爲一個矩陣,將這個矩陣在對應的圖像上滑過與圖像上的每個點做點積運算(這個過程叫做卷積),即對圖像進行了處理。濾波器主要分爲兩種:去噪聲濾波器、邊緣檢測濾波器

1、去噪聲濾波器:代表 高斯濾波器、均值濾波器、中值濾波器

高斯濾波器:高斯濾波器是一種線性濾波器,其卷積模板中的係數隨着與模板中心的距離增大而減小,相比於均值濾波器,高斯濾波器對整個圖像模糊程度較小,能夠有效抑制噪聲,平滑圖像。

均值濾波器:使用相鄰像素的平均值來代替原來的像素值,採用線性的方式,對整個圖像起到平滑的作用,但也破壞了圖像的細節信息,使得圖像變得模糊。

中值濾波器:中值濾波器採用非線性的方式,使用卷積模板的中值來代替像素值,適用於處理椒鹽噪聲。

2、邊緣檢測濾波器(算子和濾波器的關係點這裏查看

sobel濾波器:Sobel算子是典型的基於一階導數的邊緣檢測算子,是離散型的差分算子。

Roberts算子:Roberts邊緣算子是一個2x2的模板,採用的是對角方向相鄰的兩個像素之差。從圖像處理的實際效果來看,邊緣定位較準,對噪聲敏感。適用於邊緣明顯且噪聲較少的圖像分割。

Canny算子:該算子功能比前面幾種都要好,但是它實現起來較爲麻煩,Canny算子是一個具有濾波,增強,檢測的多階段的優化算子,在進行處理前,Canny算子先利用高斯平滑濾波器來平滑圖像以除去噪聲,Canny分割算法採用一階偏導的有限差分來計算梯度幅值和方向,在處理過程中,Canny算子還將經過一個非極大值抑制的過程,最後Canny算子還採用兩個閾值來連接邊緣。

 

二、光學檢查、對象分割、檢測

1、背景去除算法

①減法 R = L - I:先取一張背景圖,然後用包含檢測目標的圖與背景圖做差,剩下的即爲檢測目標

②除法 R = 255 * (1 - (I / L)):方法同上不過運算時改用除法。

(注:如果無法獲取背景,通常我們可以將原圖採用圖像大小的核的模糊方法,來獲取背景)

2、二值化:即將圖片分成色彩只有0和255的圖像,一般用於灰度圖。

3、連通組件:用於分割和識別二進制圖像(二值化後的圖像),如果兩個像素具有相同的值並且他們是鄰居則把他們連起來,有四連通、八連通兩種形式。

4、查找輪廓:利用像素顏色深度等高線查找輪廓。

 

三、檢測面部部位與覆蓋面具

1、haar級聯:一個基於haar特徵的級聯分類器,它是一組弱分類器的串聯。(CascadeClassifier OpenCV中的類)

2、積分圖像:簡單來說就是以原點到各點所構成的矩形的面積做加減運算,從而得到所需要的計算區域的方法。這種方法因爲計算公式固定不會受到圖像放大或縮小的影響。

 

四、視頻監控、背景建模、形態學操作

1、幀差分:計算當前幀與前一幀之間,以及當前幀與下一幀之間的絕對差值。然後採用這些幀差異並應用按位AND運算符。這一步運算將會突出顯示圖像中的移動部分。這種方法的主要問題是檢測均勻着色的對象它只能檢測均勻着色對象的邊緣,原因是該對象的很大一部分有這非常低的像素差異。另外一個問題是無法檢測對象是否朝相機運動或者遠離相機運動。

2、高斯混合法:再每一幀圖像的連續收集中每個部分將逐漸成爲背景的一部分。如果場景是靜態的,則模型會自行調整以確保背景模型被更新。

3、侵蝕:通過剝離圖像中所有形狀的邊界層從而使形狀變細的操作。

4、膨脹:通過向圖像中所有的形狀添加邊界層來使形狀變粗的操作。

5、形態開口:先侵蝕後膨脹

6、形態閉合:先膨脹後侵蝕

7、獲取邊界:獲取膨脹和侵蝕之間的差異來獲取

8、禮貌變換:輸入圖像與形態開口之間的差異。

9、黑帽變換:形態閉合與輸入圖像之間的差異。

 

五、對象跟蹤

HSV:一種色彩空間,H色值,S飽和度,V明度

meanshift:當我們希望追蹤一個感興趣區域(ROI)時,在這個區域,我們根據顏色直方圖選擇若干點,並計算空間圖心,如果圖心位於該區域中心我們就知道這個對象沒有移動,如果圖心不在這個區域中心,我們就知道這個對象在某個方向移動了。它的問題是不允許改變邊界框的大小。

CAMShift:在meanshift的基礎上可以使邊界適應對象的大小。選擇好對象以後計算該對象的直方圖反投影(一種識別圖像與直方圖模型匹配程度的方法)並提取所有信息。a、計算特定對象的直方圖模型。b、使用這個模型在圖像中找到該事物。 

興趣點:在計算機視覺中也被稱爲特徵點,或者特徵。興趣點基本上是圖像中唯一檢測到的到東西。

Harris角點檢測:要確定一塊區域是否有一個角點,考慮所有的相鄰區域並計算所有相鄰區域的強度差異。如果在所有方向的差異都很大,那麼我們就知道該區域有一個角點。

流光跟蹤:稠密流光跟蹤(Lucas-Kanade)、稀疏流光跟蹤(Farneback)(算法詳解

 

 

 

 

 

圖片來源:

https://zhuanlan.zhihu.com/p/111142437

https://zhuanlan.zhihu.com/p/56728333

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章