bl双性强迫侵犯h_国产在线观看人成激情视频_蜜芽188_被诱拐的少孩全彩啪啪漫画

關于python高斯函數卷積的信息

2021-02-08 Python OpenCV GaussianBlur()函數

borderType= None)函數

成都創新互聯公司是專業的館陶網站建設公司,館陶接單;提供網站設計制作、成都網站建設,網頁設計,網站設計,建網站,PHP網站建設等專業做網站服務;采用PHP框架,可快速的進行館陶網站開發網頁制作和功能擴展;專業做搜索引擎喜愛的網站,專業的做網站團隊,希望更多企業前來合作!

此函數利用高斯濾波器平滑一張圖像。該函數將源圖像與指定的高斯核進行卷積。

src:輸入圖像

ksize:(核的寬度,核的高度),輸入高斯核的尺寸,核的寬高都必須是正奇數。否則,將會從參數sigma中計算得到。

dst:輸出圖像,尺寸與輸入圖像一致。

sigmaX:高斯核在X方向上的標準差。

sigmaY:高斯核在Y方向上的標準差。默認為None,如果sigmaY=0,則它將被設置為與sigmaX相等的值。如果這兩者都為0,則它們的值會從ksize中計算得到。計算公式為:

borderType:像素外推法,默認為None(參考官方文檔 BorderTypes

)

在圖像處理中,高斯濾波主要有兩種方式:

1.窗口滑動卷積

2.傅里葉變換

在此主要利用窗口滑動卷積。其中二維高斯函數公式為:

根據上述公式,生成一個3x3的高斯核,其中最重要的參數就是標準差 ,標準差 越大,核中心的值與周圍的值差距越小,曲線越平滑。標準差 越小,核中心的值與周圍的值差距越大,曲線越陡峭。

從圖像的角度來說,高斯核的標準差 越大,平滑效果越不明顯。高斯核的標準差 越小,平滑效果越明顯。

可見,標準差 越大,圖像平滑程度越大

參考博客1:關于GaussianBlur函數

參考博客2:關于高斯核運算

如何用python實現圖像的一維高斯濾波器

如何用python實現圖像的一維高斯濾波器

現在把卷積模板中的值換一下,不是全1了,換成一組符合高斯分布的數值放在模板里面,比如這時中間的數值最大,往兩邊走越來越小,構造一個小的高斯包。實現的函數為cv2.GaussianBlur()。對于高斯模板,我們需要制定的是高斯核的高和寬(奇數),沿x與y方向的標準差(如果只給x,y=x,如果都給0,那么函數會自己計算)。高斯核可以有效的出去圖像的高斯噪聲。當然也可以自己構造高斯核,相關函數:cv2.GaussianKernel().

import cv2

import numpy as np

import matplotlib.pyplot as plt

img = cv2.imread(‘flower.jpg‘,0) #直接讀為灰度圖像

for i in range(2000): #添加點噪聲

temp_x = np.random.randint(0,img.shape[0])

temp_y = np.random.randint(0,img.shape[1])

img[temp_x][temp_y] = 255

blur = cv2.GaussianBlur(img,(5,5),0)

plt.subplot(1,2,1),plt.imshow(img,‘gray‘)#默認彩色,另一種彩色bgr

plt.subplot(1,2,2),plt.imshow(blur,‘gray‘)

OpenCV Python 系列教程4 - OpenCV 圖像處理(上)

學習目標:

OpenCV 中有 150 多種色彩空間轉化的方法,這里只討論兩種:

HSV的色相范圍為[0,179],飽和度范圍為[0,255],值范圍為[0,255]。不同的軟件使用不同的規模。如果要比較 OpenCV 值和它們,你需要標準化這些范圍。

HSV 和 HLV 解釋

運行結果:該段程序的作用是檢測藍色目標,同理可以檢測其他顏色的目標

結果中存在一定的噪音,之后的章節將會去掉它

這是物體跟蹤中最簡單的方法。一旦你學會了等高線的函數,你可以做很多事情,比如找到這個物體的質心,用它來跟蹤這個物體,僅僅通過在相機前移動你的手來畫圖表,還有很多其他有趣的事情。

菜鳥教程 在線 HSV- BGR 轉換

比如要找出綠色的 HSV 值,可以使用上面的程序,得到的值取一個上下界。如上面的取下界 [H-10, 100, 100],上界 [H+10, 255, 255]

或者使用其他工具如 GIMP

學習目標:

對圖像進行閾值處理,算是一種最簡單的圖像分割方法,基于圖像與背景之間的灰度差異,此項分割是基于像素級的分割

threshold(src, thresh, maxval, type[, dst]) - retval, dst

計算圖像小區域的閾值。所以我們對同一幅圖像的不同區域得到不同的閾值,這給我們在不同光照下的圖像提供了更好的結果。

三個特殊的輸入參數和一個輸出參數

adaptiveThreshold(src, maxValue, adaptiveMethod, thresholdType, blockSize, C[, dst]) - dst

opencv-threshold-python

OpenCV 圖片集

本節原文

學習目標:

OpenCV 提供兩種變換函數: cv2.warpAffine 和 cv2.warpPerspective

cv2.resize() 完成縮放

文檔說明

運行結果

說明 : cv2.INTER_LINEAR 方法比 cv2.INTER_CUBIC 還慢,好像與官方文檔說的不一致? 有待驗證。

速度比較: INTER_CUBIC INTER_NEAREST INTER_LINEAR INTER_AREA INTER_LANCZOS4

改變圖像的位置,創建一個 np.float32 類型的變換矩陣,

warpAffine(src, M, dsize[, dst[, flags[, borderMode[, borderValue]]]]) - dst

運行結果:

旋轉角度( )是通過一個變換矩陣變換的:

OpenCV 提供的是可調旋轉中心的縮放旋轉,這樣你可以在任何你喜歡的位置旋轉。修正后的變換矩陣為

這里

OpenCV 提供了 cv2.getRotationMatrix2D 控制

cv2.getRotationMatrix2D(center, angle, scale) → retval

運行結果

cv2.getAffineTransform(src, dst) → retval

函數關系:

\begin{bmatrix} x'_i \ y'_i \end{bmatrix}\begin{bmatrix} x'_i \ y'_i \end{bmatrix} =

其中

運行結果:圖上的點便于觀察,兩圖中的紅點是相互對應的

透視變換需要一個 3x3 變換矩陣。轉換之后直線仍然保持筆直,要找到這個變換矩陣,需要輸入圖像上的 4 個點和輸出圖像上的對應點。在這 4 個點中,有 3 個不應該共線。通過 cv2.getPerspectiveTransform 計算得到變換矩陣,得到的矩陣 cv2.warpPerspective 變換得到最終結果。

本節原文

平滑處理(smoothing)也稱模糊處理(bluring),是一種簡單且使用頻率很高的圖像處理方法。平滑處理的用途:常見是用來 減少圖像上的噪點或失真 。在涉及到降低圖像分辨率時,平滑處理是很好用的方法。

圖像濾波:盡量保留圖像細節特征的條件下對目標圖像的噪聲進行抑制,其處理效果的好壞將直接影響到后續圖像處理和分析的有效性和可靠性。

消除圖像中的噪聲成分叫做圖像的平滑化或濾波操作。信號或圖像的能量大部分集中在幅度譜的低頻和中頻段,在高頻段,有用的信息會被噪聲淹沒。因此一個能降低高頻成分幅度的濾波器就能夠減弱噪聲的影響。

濾波的目的:抽出對象的特征作為圖像識別的特征模式;為適應圖像處理的要求,消除圖像數字化時混入的噪聲。

濾波處理的要求:不能損壞圖像的輪廓及邊緣等重要信息;圖像清晰視覺效果好。

平滑濾波是低頻增強的空間濾波技術,目的:模糊和消除噪音。

空間域的平滑濾波一般采用簡單平均法,即求鄰近像元點的平均亮度值。鄰域的大小與平滑的效果直接相關,鄰域越大平滑效果越好,但是鄰域過大,平滑也會使邊緣信息的損失的越大,從而使輸出圖像變得模糊。因此需要選擇合適的鄰域。

濾波器:一個包含加權系數的窗口,利用濾波器平滑處理圖像時,把這個窗口放在圖像上,透過這個窗口來看我們得到的圖像。

線性濾波器:用于剔除輸入信號中不想要的頻率或者從許多頻率中選擇一個想要的頻率。

低通濾波器、高通濾波器、帶通濾波器、帶阻濾波器、全通濾波器、陷波濾波器

boxFilter(src, ddepth, ksize[, dst[, anchor[, normalize[, borderType]]]]) - dst

均值濾波是方框濾波歸一化后的特殊情況。歸一化就是要把處理的量縮放到一個范圍內如 (0,1),以便統一處理和直觀量化。非歸一化的方框濾波用于計算每個像素鄰近內的積分特性,比如密集光流算法中用到的圖像倒數的協方差矩陣。

運行結果:

均值濾波是典型的線性濾波算法,主要方法為鄰域平均法,即用一片圖像區域的各個像素的均值來代替原圖像中的各個像素值。一般需要在圖像上對目標像素給出一個模板(內核),該模板包括了其周圍的臨近像素(比如以目標像素為中心的周圍8(3x3-1)個像素,構成一個濾波模板,即 去掉目標像素本身 )。再用模板中的全體像素的平均值來代替原來像素值。即對待處理的當前像素點(x,y),選擇一個模板,該模板由其近鄰的若干像素組成,求模板中所有像素的均值,再把該均值賦予當前像素點(x,y),作為處理后圖像在該點上的灰度個g(x,y),即個g(x,y)=1/m ∑f(x,y) ,其中m為該模板中包含當前像素在內的像素總個數。

均值濾波本身存在著固有的缺陷,即它不能很好地保護圖像細節,在圖像去噪的同時也破壞了圖像的細節部分,從而使圖像變得模糊,不能很好地去除噪聲點。

cv2.blur(src, ksize[, dst[, anchor[, borderType]]]) → dst

結果:

高斯濾波:線性濾波,可以消除高斯噪聲,廣泛應用于圖像處理的減噪過程。高斯濾波就是對整幅圖像進行加權平均的過程,每一個像素點的值,都由其本身和鄰域內的其他像素值經過 加權平均 后得到。高斯濾波的具體操作是:用一個模板(或稱卷積、掩模)掃描圖像中的每一個像素,用模板確定的鄰域內像素的加權平均灰度值去替代模板中心像素點的值。

高斯濾波有用但是效率不高。

高斯模糊技術生成的圖像,其視覺效果就像是經過一個半透明屏幕在觀察圖像,這與鏡頭焦外成像效果散景以及普通照明陰影中的效果都明顯不同。高斯平滑也用于計算機視覺算法中的預先處理階段,以增強圖像在不同比例大小下的圖像效果(參見尺度空間表示以及尺度空間實現)。從數學的角度來看,圖像的高斯模糊過程就是圖像與正態分布做卷積。由于正態分布又叫作高斯分布,所以這項技術就叫作高斯模糊。

高斯濾波器是一類根據高斯函數的形狀來選擇權值的線性平滑濾波器。 高斯平滑濾波器對于抑制服從正態分布的噪聲非常有效。

一維零均值高斯函數為: 高斯分布參數 決定了高斯函數的寬度。

高斯噪聲的產生

GaussianBlur(src, ksize, sigmaX[, dst[, sigmaY[, borderType]]]) - dst

線性濾波容易構造,并且易于從頻率響應的角度來進行分析。

許多情況,使用近鄰像素的非線性濾波會得到更好的結果。比如在噪聲是散粒噪聲而不是高斯噪聲,即圖像偶爾會出現很大值的時候,用高斯濾波器進行圖像模糊時,噪聲像素不會被消除,而是轉化為更為柔和但仍然可見的散粒。

中值濾波(Median filter)是一種典型的非線性濾波技術,基本思想是用像素點鄰域灰度值的中值來代替該像素點的灰度值,該方法在去除脈沖噪聲、椒鹽噪聲『椒鹽噪聲又稱脈沖噪聲,它隨機改變一些像素值,是由圖像傳感器,傳輸信道,解碼處理等產生的黑白相間的亮暗點噪聲。椒鹽噪聲往往由圖像切割引起。』的同時又能保留圖像邊緣細節,

中值濾波是基于排序統計理論的一種能有效抑制噪聲的非線性信號處理技術,其基本原理是把數字圖像或數字序列中一點的值用該點的一個鄰域中各點值的中值代替,讓周圍的像素值接近的真實值,從而消除孤立的噪聲點,對于 斑點噪聲(speckle noise)和椒鹽噪聲(salt-and-pepper noise) 來說尤其有用,因為它不依賴于鄰域內那些與典型值差別很大的值。中值濾波器在處理連續圖像窗函數時與線性濾波器的工作方式類似,但濾波過程卻不再是加權運算。

中值濾波在一定的條件下可以克服常見線性濾波器如最小均方濾波、方框濾波器、均值濾波等帶來的圖像細節模糊,而且對濾除脈沖干擾及圖像掃描噪聲非常有效,也常用于保護邊緣信息, 保存邊緣的特性使它在不希望出現邊緣模糊的場合也很有用,是非常經典的平滑噪聲處理方法。

與均值濾波比較:

說明:中值濾波在一定條件下,可以克服線性濾波器(如均值濾波等)所帶來的圖像細節模糊,而且對濾除脈沖干擾即圖像掃描噪聲最為有效。在實際運算過程中并不需要圖像的統計特性,也給計算帶來不少方便。 但是對一些細節多,特別是線、尖頂等細節多的圖像不宜采用中值濾波。

雙邊濾波(Bilateral filter)是一種非線性的濾波方法,是結合 圖像的空間鄰近度和像素值相似度 的一種折衷處理,同時考慮空域信息和灰度相似性,達到保邊去噪的目的。具有簡單、非迭代、局部的特點。

雙邊濾波器的好處是可以做邊緣保存(edge preserving),一般過去用的維納濾波或者高斯濾波去降噪,都會較明顯地模糊邊緣,對于高頻細節的保護效果并不明顯。雙邊濾波器顧名思義比高斯濾波多了一個高斯方差 sigma-d ,它是基于空間分布的高斯濾波函數,所以在邊緣附近,離的較遠的像素不會太多影響到邊緣上的像素值,這樣就保證了邊緣附近像素值的保存。 但是由于保存了過多的高頻信息,對于彩色圖像里的高頻噪聲,雙邊濾波器不能夠干凈的濾掉,只能夠對于低頻信息進行較好的濾波。

運行結果

學習目標:

形態變換是基于圖像形狀的一些簡單操作。它通常在二進制圖像上執行。

膨脹與腐蝕實現的功能

侵蝕的基本思想就像土壤侵蝕一樣,它會侵蝕前景物體的邊界(總是試圖保持前景為白色)。那它是做什么的?內核在圖像中滑動(如在2D卷積中)。只有當內核下的所有像素都是 1 時,原始圖像中的像素( 1 或 0 )才會被視為 1 ,否則它將被侵蝕(變為零)

erode(src, kernel[, dst[, anchor[, iterations[, borderType[, borderValue]]]]]) - dst

與腐蝕的操作相反。如果內核下的至少一個像素為“1”,則像素元素為“1”。因此它增加了圖像中的白色區域或前景對象的大小增加。通常,在去除噪音的情況下,侵蝕之后是擴張。因為,侵蝕會消除白噪聲,但它也會縮小我們的物體。所以我們擴大它。由于噪音消失了,它們不會再回來,但我們的物體區域會增加。它也可用于連接對象的破碎部分

請問下卷積怎么算的?

代卷積公式啊,我這里打不出公式里的那些符號.看概率課本,多維隨機變量那章,有詳細的步驟

高斯全函數

高斯函數有兩個特性:

1:一個高斯函數跟另外一個高斯函數的卷積仍然是一個高斯函數,A*B=C C的標準差的平方是A和B的標準差的平方和,也就是說卷積后的高斯函數更寬,模糊的效果更明顯(直觀上看,連續做高斯模糊運算,圖像會越來越模糊。)

2:高斯函數的傅立葉變換仍然是一個高斯函數,如果原來的高斯函數越寬(標準差越大),變換后的高斯函數就越窄(標準差越小),也就是說一個越寬的高斯函數,低通(高阻)濾波的效果越明顯,處理后的圖像的細節就越不清楚(更模糊)。

要對數字圖像做高斯模糊,就是用一個符合高斯函數分布的卷積核對數字圖像做卷積運算。

要確定的有標準差的大小,卷積核的大小,最后的比例系數的大小。

一個標準差為1.4的高斯5x5的卷積核:

2 4 5 4 2

4 9 12 9 4

5 12 15 12 5

4 9 12 9 4

2 4 5 4 2

最后乘以比例系數 1/115

舉1個例子:

設x∈R , 用 [x]表示不超過x 的最大整數則 y= [x] 稱為高斯函數,也叫取整函數。

任意一個實數都能寫成整數部分與非負純小數之和,即:x= [x] + α(0α1) ,所以有:[x]=x[x]+1 ,這里[x] 是 x的整數部分,而= x- [x] 是x 的小數部分。

分享標題:關于python高斯函數卷積的信息
轉載來源:http://vcdvsql.cn/article24/hshpje.html

成都網站建設公司_創新互聯,為您提供網站導航云服務器標簽優化面包屑導航外貿網站建設品牌網站建設

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

手機網站建設