国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【OpenCV-Python】:基于均值、中值、方框、雙邊和高斯濾波的圖像去噪

這篇具有很好參考價值的文章主要介紹了【OpenCV-Python】:基于均值、中值、方框、雙邊和高斯濾波的圖像去噪。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

?博客主頁:王樂予??
?年輕人要:Living for the moment(活在當(dāng)下)!??
??推薦專欄:【圖像處理】【千錘百煉Python】【深度學(xué)習(xí)】【排序算法】

本節(jié)將對經(jīng)過噪聲污染的圖像進行去噪,去噪方法包含均值濾波、中值濾波、方框濾波、雙邊濾波和高斯濾波。

??一、引言

??1.1 圖像用例

實驗所用的圖像為【OpenCV-Python】:對圖像添加高斯噪聲與椒鹽噪聲中得到的均值為0,方差為0.01的高斯噪聲污染圖像和噪聲密度為0.05的椒鹽噪聲污染圖像,如圖所示:
【OpenCV-Python】:基于均值、中值、方框、雙邊和高斯濾波的圖像去噪

??1.2 評價指標

為了評判去噪質(zhì)量的好壞,我們將選取PSNR、SSIM和MSE作為評價指標!

評價指標見:【OpenCV-Python】:圖像PSNR、SSIM、MSE計算

??1.3 定義圖像質(zhì)量評價函數(shù)

def compare(ori, gaussian_denosing, sp_denosing):

    # ori為原圖(未被噪聲污染的圖),gaussian_denosing為經(jīng)過高斯噪聲污染的圖通過去噪算法去噪后的圖;sp_denosing為經(jīng)過椒鹽噪聲污染的圖通過去噪算法去噪后的圖
    gaussian_psnr = compare_psnr(ori, gaussian_denosing)
    sp_psnr = compare_psnr(ori, sp_denosing)

    gaussian_ssim = compare_ssim(ori, gaussian_denosing, multichannel=True)
    sp_ssim = compare_ssim(ori, sp_denosing, multichannel=True)

    gaussian_mse = compare_mse(ori, gaussian_denosing)
    sp_mse = compare_mse(ori, sp_denosing)

    return gaussian_psnr, sp_psnr, gaussian_ssim, sp_ssim, gaussian_mse, sp_mse

??二、均值濾波

??2.1 濾波原理

均值濾波也稱線性濾波,它是指使用一個模板在原圖上進行均值計算并替換原圖的值。

均值濾波器的模板有標準像素平均和加權(quán)平均之分,一個 3 × 3 3×3 3×3大小的模板如下圖所示:
【OpenCV-Python】:基于均值、中值、方框、雙邊和高斯濾波的圖像去噪

??2.2 實驗過程

使用函數(shù):cv2.blur()

??2.2.1 程序設(shè)計

"""
均值濾波
"""
gaussian_blur = cv2.blur(gaussian_img, (3, 3))
sp_blur = cv2.blur(sp_img, (3, 3))
h1 = np.hstack([gaussian_img, gaussian_blur])
h2 = np.hstack([sp_img, sp_blur])
v = np.vstack([h1, h2])
cv2.imshow('out', v)
cv2.waitKey()

??2.2.2 實驗結(jié)果

【OpenCV-Python】:基于均值、中值、方框、雙邊和高斯濾波的圖像去噪

  • 第一幅圖為被高斯噪聲污染的圖像;
  • 第二幅圖為使用均值濾波對第一幅圖去噪后的圖像;
  • 第三幅圖為被椒鹽噪聲污染的圖像;
  • 第四幅圖為使用均值濾波對第三幅圖去噪后的圖像。

??2.2.3 指標參數(shù)

gaussian_psnr, sp_psnr, gaussian_ssim, sp_ssim, gaussian_mse, sp_mse = compare(original, gaussian_blur, sp_blur)
print('均值濾波對高斯噪聲污染圖像去噪后的指標為:PSNR:{},SSIM:{},MSE:{}'.format(gaussian_psnr, gaussian_ssim, gaussian_mse))
print('均值濾波對椒鹽噪聲污染圖像去噪后的指標為:PSNR:{},SSIM:{},MSE:{}'.format(sp_psnr, sp_ssim, sp_mse))

結(jié)果為:

均值濾波對高斯噪聲污染圖像去噪后的指標為:PSNR:27.51495578617511,SSIM:0.7044879580272968,MSE:115.23509979248047
均值濾波對椒鹽噪聲污染圖像去噪后的指標為:PSNR:25.66665449076371,SSIM:0.5821969899711158,MSE:176.36601893107095

從指標結(jié)果可以看出,均值濾波對高斯噪聲的去除能力更強!

??三、中值濾波

??3.1 濾波原理

中值濾波是把圖像中的一點用該點的一個鄰域中的各值的中值代替。

??3.2 實驗過程

使用函數(shù):cv2.medianBlur()

??3.2.1 程序設(shè)計

gaussian_blur = cv2.medianBlur(gaussian_img, (3, 3))
sp_blur = cv2.medianBlur(sp_img, (3, 3))
h1 = np.hstack([gaussian_img, gaussian_blur])
h2 = np.hstack([sp_img, sp_blur])
v = np.vstack([h1, h2])
cv2.imwrite(r"C:\Users\Lenovo\Desktop\DIP\median_filter.jpg", v)
cv2.imshow('out', v)
cv2.waitKey()

??3.2.2 實驗結(jié)果

【OpenCV-Python】:基于均值、中值、方框、雙邊和高斯濾波的圖像去噪

  • 第一幅圖為被高斯噪聲污染的圖像;
  • 第二幅圖為使用中值濾波對第一幅圖去噪后的圖像;
  • 第三幅圖為被椒鹽噪聲污染的圖像;
  • 第四幅圖為使用中值濾波對第三幅圖去噪后的圖像。

??3.2.3 指標參數(shù)

gaussian_psnr, sp_psnr, gaussian_ssim, sp_ssim, gaussian_mse, sp_mse = compare(original, gaussian_blur, sp_blur)
print('中值濾波對高斯噪聲污染圖像去噪后的指標為:PSNR:{},SSIM:{},MSE:{}'.format(gaussian_psnr, gaussian_ssim, gaussian_mse))
print('中值濾波對椒鹽噪聲污染圖像去噪后的指標為:PSNR:{},SSIM:{},MSE:{}'.format(sp_psnr, sp_ssim, sp_mse))

結(jié)果為:

中值濾波對高斯噪聲污染圖像去噪后的指標為:PSNR:26.882078435438537,SSIM:0.6406334892144118,MSE:133.31300481160483
中值濾波對椒鹽噪聲污染圖像去噪后的指標為:PSNR:28.5392567826037,SSIM:0.7218574470291008,MSE:91.0237414042155

從指標結(jié)果可以看出,中值濾波對椒鹽噪聲的去除能力更強!

??四、方框濾波

??4.1 濾波原理

方框濾波又稱盒子濾波,方框濾波中可以自由選擇是否對均值濾波的結(jié)果進行歸一化,即可以自由選擇濾波結(jié)果是鄰域像素值之和的平均值(均值濾波),還是鄰域像素值之和。也就是說均值濾波是方框濾波的特殊情況。

方框濾波卷積核可以表示為:

K = 1 α [ 1 1 1 ? 1 1 1 1 1 ? 1 1 ? ? ? ? ? ? 1 1 1 ? 1 1 1 1 1 ? 1 1 1 1 1 ? 1 1 ] K=\frac{1}{\alpha }\begin{bmatrix} 1& 1& 1& \cdots & 1& 1\\ 1& 1& 1& \cdots & 1& 1\\ \cdots & \cdots & \cdots & \cdots & \cdots & \cdots \\ 1& 1& 1& \cdots & 1& 1\\ 1& 1& 1& \cdots & 1& 1\\ 1& 1& 1& \cdots & 1& 1 \end{bmatrix} K=α1? ?11?111?11?111?11?111????????11?111?11?111? ?
上式的對應(yīng)關(guān)系為:
α = { 1 w i d t h × h e i g h t n o r m a l i z e = 1 1 n o r m a l i z e = 0 \alpha =\left\{\begin{matrix} \frac{1}{width\times height}& normalize=1\\ 1& normalize=0 \end{matrix}\right. α={width×height1?1?normalize=1normalize=0?

??4.2 實驗過程

使用函數(shù):cv2.boxFilter(src, ddepth, ksize, anchor, normalize, borderType)

參數(shù)說明:

  • src:輸入圖像;
  • ddepth:圖像深度,-1表示用原圖深度;
  • ksize:內(nèi)核大?。?/li>
  • anchor:錨點,默認為(-1,-1),表示當(dāng)前計算均值的點位于核的中心點位置;
  • normalize:表示是否進行歸一化處理,值為1,進行歸一化處理;值為0,不進行歸一化處理;
  • borderType:表示以何種方式處理邊界,默認即可。

??4.2.1 程序設(shè)計

"""
方框濾波
"""
gaussian_blur = cv2.boxFilter(gaussian_img, -1, (3, 3), normalize=0)
sp_blur = cv2.boxFilter(sp_img, -1, (3, 3), normalize=0)
h1 = np.hstack([gaussian_img, gaussian_blur])
h2 = np.hstack([sp_img, sp_blur])
v = np.vstack([h1, h2])
cv2.imwrite(r"C:\Users\Lenovo\Desktop\DIP\box_filter.jpg", v)
cv2.imshow('out', v)
cv2.waitKey()

??4.2.2 實驗結(jié)果

【OpenCV-Python】:基于均值、中值、方框、雙邊和高斯濾波的圖像去噪

  • 第一幅圖為被高斯噪聲污染的圖像;
  • 第二幅圖為使用方框濾波對第一幅圖去噪后的圖像;
  • 第三幅圖為被椒鹽噪聲污染的圖像;
  • 第四幅圖為使用方框濾波對第三幅圖去噪后的圖像。

由圖可知,不經(jīng)過歸一化的方框濾波很容易出現(xiàn)大面積的白色。

??4.2.3 指標參數(shù)

gaussian_psnr, sp_psnr, gaussian_ssim, sp_ssim, gaussian_mse, sp_mse = compare(original, gaussian_blur, sp_blur)
print('方框濾波對高斯噪聲污染圖像去噪后的指標為:PSNR:{},SSIM:{},MSE:{}'.format(gaussian_psnr, gaussian_ssim, gaussian_mse))
print('方框濾波對椒鹽噪聲污染圖像去噪后的指標為:PSNR:{},SSIM:{},MSE:{}'.format(sp_psnr, sp_ssim, sp_mse))

結(jié)果為:

方框濾波對高斯噪聲污染圖像去噪后的指標為:PSNR:5.251255346836561,SSIM:0.415694536225471,MSE:19406.84003829956
方框濾波對椒鹽噪聲污染圖像去噪后的指標為:PSNR:5.328992238651672,SSIM:0.41684132817868463,MSE:19062.556196848553

??五、雙邊濾波

??5.1 濾波原理

雙邊濾波是一種非線性的濾波方法,其同時考慮空間幾何距離與灰度相似性。

??5.2 實驗過程

使用函數(shù):cv2.bilateralFilter(src, d, sigmaColor, sigmaSpace[, dst[, borderType]])

參數(shù)說明:

  • src:輸入圖像;
  • d:濾波期間使用的每個像素鄰域的直徑,如果其值為非正數(shù),則從sigmaSpace計算;
  • sigmaColor:在顏色空間中過濾sigma,較大的參數(shù)意味著像素鄰域內(nèi)較遠的顏色將相互影響;
  • sigmaSpace:在幾何空間中過濾sigma,較大的參數(shù)意味著更遠的像素將相互影響;

??5.2.1 程序設(shè)計

"""
雙邊濾波
"""
gaussian_blur = cv2.bilateralFilter(gaussian_img, 25, 100, 100)
sp_blur = cv2.bilateralFilter(sp_img, 25, 100, 100)
h1 = np.hstack([gaussian_img, gaussian_blur])
h2 = np.hstack([sp_img, sp_blur])
v = np.vstack([h1, h2])
cv2.imwrite(r"C:\Users\Lenovo\Desktop\DIP\bilateral_filter.jpg", v)
cv2.imshow('out', v)
cv2.waitKey()

??5.2.2 實驗結(jié)果

【OpenCV-Python】:基于均值、中值、方框、雙邊和高斯濾波的圖像去噪

  • 第一幅圖為被高斯噪聲污染的圖像;
  • 第二幅圖為使用雙邊濾波對第一幅圖去噪后的圖像;
  • 第三幅圖為被椒鹽噪聲污染的圖像;
  • 第四幅圖為使用雙邊濾波對第三幅圖去噪后的圖像。

??5.2.3 指標參數(shù)

gaussian_psnr, sp_psnr, gaussian_ssim, sp_ssim, gaussian_mse, sp_mse = compare(original, gaussian_blur, sp_blur)
print('雙邊濾波對高斯噪聲污染圖像去噪后的指標為:PSNR:{},SSIM:{},MSE:{}'.format(gaussian_psnr, gaussian_ssim, gaussian_mse))
print('雙邊濾波對椒鹽噪聲污染圖像去噪后的指標為:PSNR:{},SSIM:{},MSE:{}'.format(sp_psnr, sp_ssim, sp_mse))

結(jié)果為:

雙邊濾波對高斯噪聲污染圖像去噪后的指標為:PSNR:25.992916512934414,SSIM:0.6635250024737996,MSE:163.60203806559244
雙邊濾波對椒鹽噪聲污染圖像去噪后的指標為:PSNR:21.06964250996061,SSIM:0.3879879230675302,MSE:508.2953186035156

從指標結(jié)果可以看出,雙邊濾波對高斯噪聲的去除能力更強!

??六、高斯濾波

??6.1 濾波原理

在實際濾波中,將當(dāng)前像素作為核中心,利用卷積核對周圍鄰域像素作加權(quán)平均,其值作為當(dāng)前像素的新值。

高斯濾波步驟:

  • 移動相關(guān)核的中心元素,使它位于輸入圖像待處理像素的正上方;
  • 將輸入圖像的像素值作為權(quán)重,乘以相關(guān)核;
  • 將上面各步得到的結(jié)果相加做為輸出。

簡單來說就是根據(jù)高斯分布得到高斯模板然后做卷積相加的一個過程。

https://www.cnblogs.com/kensporger/p/11628050.html
https://www.jianshu.com/p/73e6ccbd8f3f

??6.2 實驗過程

使用函數(shù):cv2.GaussianBlur(src, ksize, sigmaX [ , dst [ , sigmaY [ , borderType ] ] ] )
參數(shù)說明:

  • src:輸入圖像;
  • ksize:高斯核大小,必須是正數(shù)和奇數(shù);
  • sigmaX:X方向的高斯核標準差;
  • sigmaY:Y方向的高斯核標準差;如果該值為0,則默認為與sigma相等。
  • borderType:邊界處理方式。

??6.2.1 程序設(shè)計

"""
高斯濾波
"""
gaussian_blur = cv2.GaussianBlur(gaussian_img, (5, 5), 0, 0)
sp_blur = cv2.GaussianBlur(sp_img, (5, 5), 0, 0)
h1 = np.hstack([gaussian_img, gaussian_blur])
h2 = np.hstack([sp_img, sp_blur])
v = np.vstack([h1, h2])
cv2.imwrite(r"C:\Users\Lenovo\Desktop\DIP\gaussian_filter.jpg", v)
cv2.imshow('out', v)
cv2.waitKey()

??6.2.2 實驗結(jié)果

【OpenCV-Python】:基于均值、中值、方框、雙邊和高斯濾波的圖像去噪

  • 第一幅圖為被高斯噪聲污染的圖像;
  • 第二幅圖為使用高斯濾波對第一幅圖去噪后的圖像;
  • 第三幅圖為被椒鹽噪聲污染的圖像;
  • 第四幅圖為使用高斯濾波對第三幅圖去噪后的圖像。

??6.2.3 指標參數(shù)

gaussian_psnr, sp_psnr, gaussian_ssim, sp_ssim, gaussian_mse, sp_mse = compare(original, gaussian_blur, sp_blur)
print('高斯濾波對高斯噪聲污染圖像去噪后的指標為:PSNR:{},SSIM:{},MSE:{}'.format(gaussian_psnr, gaussian_ssim, gaussian_mse))
print('高斯濾波對椒鹽噪聲污染圖像去噪后的指標為:PSNR:{},SSIM:{},MSE:{}'.format(sp_psnr, sp_ssim, sp_mse))

結(jié)果為:

高斯濾波對高斯噪聲污染圖像去噪后的指標為:PSNR:27.80345326784865,SSIM:0.7496298168722767,MSE:107.82886505126953
高斯濾波對椒鹽噪聲污染圖像去噪后的指標為:PSNR:26.360239863855103,SSIM:0.6420068535144939,MSE:150.33370971679688

從指標結(jié)果可以看出,高斯濾波對高斯噪聲的去除能力更強!文章來源地址http://www.zghlxwxcb.cn/news/detail-446590.html

??七、全部代碼

import numpy as np
import cv2
from skimage.measure import compare_ssim, compare_psnr, compare_mse

original = cv2.imread(r"C:\Users\Lenovo\Desktop\DIP\lena1.jpg")
gaussian_img = cv2.imread(r"C:\Users\Lenovo\Desktop\DIP\gaussian.jpg")
sp_img = cv2.imread(r"C:\Users\Lenovo\Desktop\DIP\sp.jpg")

def compare(ori, gaussian_denosing, sp_denosing):

    # ori為原圖(未被噪聲污染的圖),gaussian_denosing為經(jīng)過高斯噪聲污染的圖通過去噪算法去噪后的圖;sp_denosing為經(jīng)過椒鹽噪聲污染的圖通過去噪算法去噪后的圖
    gaussian_psnr = compare_psnr(ori, gaussian_denosing)
    sp_psnr = compare_psnr(ori, sp_denosing)

    gaussian_ssim = compare_ssim(ori, gaussian_denosing, multichannel=True)
    sp_ssim = compare_ssim(ori, sp_denosing, multichannel=True)

    gaussian_mse = compare_mse(ori, gaussian_denosing)
    sp_mse = compare_mse(ori, sp_denosing)

    return gaussian_psnr, sp_psnr, gaussian_ssim, sp_ssim, gaussian_mse, sp_mse

"""
均值濾波
"""
gaussian_blur = cv2.blur(gaussian_img, (3, 3))
sp_blur = cv2.blur(sp_img, (3, 3))
h1 = np.hstack([gaussian_img, gaussian_blur])
h2 = np.hstack([sp_img, sp_blur])
v = np.vstack([h1, h2])
cv2.imwrite(r"C:\Users\Lenovo\Desktop\DIP\mean_filter.jpg", v)
cv2.imshow('out', v)
cv2.waitKey()

gaussian_psnr, sp_psnr, gaussian_ssim, sp_ssim, gaussian_mse, sp_mse = compare(original, gaussian_blur, sp_blur)
print('均值濾波對高斯噪聲污染圖像去噪后的指標為:PSNR:{},SSIM:{},MSE:{}'.format(gaussian_psnr, gaussian_ssim, gaussian_mse))
print('均值濾波對椒鹽噪聲污染圖像去噪后的指標為:PSNR:{},SSIM:{},MSE:{}'.format(sp_psnr, sp_ssim, sp_mse))

"""
中值濾波
"""
gaussian_blur = cv2.medianBlur(gaussian_img, 3)
sp_blur = cv2.medianBlur(sp_img, 3)
h1 = np.hstack([gaussian_img, gaussian_blur])
h2 = np.hstack([sp_img, sp_blur])
v = np.vstack([h1, h2])
cv2.imwrite(r"C:\Users\Lenovo\Desktop\DIP\median_filter.jpg", v)
cv2.imshow('out', v)
cv2.waitKey()

gaussian_psnr, sp_psnr, gaussian_ssim, sp_ssim, gaussian_mse, sp_mse = compare(original, gaussian_blur, sp_blur)
print('中值濾波對高斯噪聲污染圖像去噪后的指標為:PSNR:{},SSIM:{},MSE:{}'.format(gaussian_psnr, gaussian_ssim, gaussian_mse))
print('中值濾波對椒鹽噪聲污染圖像去噪后的指標為:PSNR:{},SSIM:{},MSE:{}'.format(sp_psnr, sp_ssim, sp_mse))

"""
方框濾波
"""
gaussian_blur = cv2.boxFilter(gaussian_img, -1, (3, 3), normalize=0)
sp_blur = cv2.boxFilter(sp_img, -1, (3, 3), normalize=0)
h1 = np.hstack([gaussian_img, gaussian_blur])
h2 = np.hstack([sp_img, sp_blur])
v = np.vstack([h1, h2])
cv2.imwrite(r"C:\Users\Lenovo\Desktop\DIP\box_filter.jpg", v)
cv2.imshow('out', v)
cv2.waitKey()

gaussian_psnr, sp_psnr, gaussian_ssim, sp_ssim, gaussian_mse, sp_mse = compare(original, gaussian_blur, sp_blur)
print('方框濾波對高斯噪聲污染圖像去噪后的指標為:PSNR:{},SSIM:{},MSE:{}'.format(gaussian_psnr, gaussian_ssim, gaussian_mse))
print('方框濾波對椒鹽噪聲污染圖像去噪后的指標為:PSNR:{},SSIM:{},MSE:{}'.format(sp_psnr, sp_ssim, sp_mse))

"""
雙邊濾波
"""
gaussian_blur = cv2.bilateralFilter(gaussian_img, 25, 100, 100)
sp_blur = cv2.bilateralFilter(sp_img, 25, 100, 100)
h1 = np.hstack([gaussian_img, gaussian_blur])
h2 = np.hstack([sp_img, sp_blur])
v = np.vstack([h1, h2])
cv2.imwrite(r"C:\Users\Lenovo\Desktop\DIP\bilateral_filter.jpg", v)
cv2.imshow('out', v)
cv2.waitKey()

gaussian_psnr, sp_psnr, gaussian_ssim, sp_ssim, gaussian_mse, sp_mse = compare(original, gaussian_blur, sp_blur)
print('雙邊濾波對高斯噪聲污染圖像去噪后的指標為:PSNR:{},SSIM:{},MSE:{}'.format(gaussian_psnr, gaussian_ssim, gaussian_mse))
print('雙邊濾波對椒鹽噪聲污染圖像去噪后的指標為:PSNR:{},SSIM:{},MSE:{}'.format(sp_psnr, sp_ssim, sp_mse))

"""
高斯濾波
"""
gaussian_blur = cv2.GaussianBlur(gaussian_img, (5, 5), 0, 0)
sp_blur = cv2.GaussianBlur(sp_img, (5, 5), 0, 0)
h1 = np.hstack([gaussian_img, gaussian_blur])
h2 = np.hstack([sp_img, sp_blur])
v = np.vstack([h1, h2])
cv2.imwrite(r"C:\Users\Lenovo\Desktop\DIP\gaussian_filter.jpg", v)
cv2.imshow('out', v)
cv2.waitKey()

gaussian_psnr, sp_psnr, gaussian_ssim, sp_ssim, gaussian_mse, sp_mse = compare(original, gaussian_blur, sp_blur)
print('高斯濾波對高斯噪聲污染圖像去噪后的指標為:PSNR:{},SSIM:{},MSE:{}'.format(gaussian_psnr, gaussian_ssim, gaussian_mse))
print('高斯濾波對椒鹽噪聲污染圖像去噪后的指標為:PSNR:{},SSIM:{},MSE:{}'.format(sp_psnr, sp_ssim, sp_mse))

到了這里,關(guān)于【OpenCV-Python】:基于均值、中值、方框、雙邊和高斯濾波的圖像去噪的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • OpenCV-Python(48):K均值聚類

    OpenCV-Python(48):K均值聚類

    學(xué)習(xí)K值聚類的概念以及工作原理。 K均值聚類的OpenCV實現(xiàn) ????????下面用一個最常用的例子來給大家介紹K 值聚類。 ????????話說有一個公司要生產(chǎn)一批新的T 恤。很明顯他們要生產(chǎn)不同大小的T 恤來滿足不同客客的要求。所以這個公司搜集了很多人的身高和體重信息,

    2024年01月20日
    瀏覽(20)
  • OpenCV 入門教程:中值濾波和雙邊濾波

    在圖像處理和計算機視覺領(lǐng)域,中值濾波和雙邊濾波是兩種常見的濾波方法,用于平滑圖像、去除噪聲等。 OpenCV 提供了中值濾波和雙邊濾波的實現(xiàn)函數(shù),使得圖像處理更加靈活和高效。本文將以中值濾波和雙邊濾波為中心,為你介紹使用 OpenCV 進行濾波操作的基本步驟和實例

    2024年02月13日
    瀏覽(25)
  • OpenCV(二十二):均值濾波、方框濾波和高斯濾波

    OpenCV(二十二):均值濾波、方框濾波和高斯濾波

    目錄 1.均值濾波 2.方框濾波 3.高斯濾波 1.均值濾波 ? ? ? ?OpenCV中的均值濾波(Mean Filter)是一種簡單的濾波技術(shù),用于平滑圖像并減少噪聲。它的原理非常簡單:對于每個像素,將其與其周圍鄰域內(nèi)像素的平均值作為新的像素值。 具體的均值濾波原理如下: 定義濾波器大小

    2024年02月09日
    瀏覽(22)
  • Opencv-圖像噪聲(均值濾波、高斯濾波、中值濾波)

    Opencv-圖像噪聲(均值濾波、高斯濾波、中值濾波)

    圖像噪聲是圖像處理中常見的問題,它是由于各種原因引入的不希望的隨機變化或干擾,導(dǎo)致圖像質(zhì)量下降。噪聲可以出現(xiàn)在圖像的亮度、顏色和紋理等方面,對圖像分析、計算機視覺和圖像處理任務(wù)造成困難。為了減少或消除圖像中的噪聲,常常使用不同類型的濾波技術(shù)。

    2024年02月04日
    瀏覽(97)
  • 【OpenCV-Python】——機器學(xué)習(xí)kNN算法&SVM算法&k均值聚類算法&深度學(xué)習(xí)圖像識別&對象檢測

    目錄 前言: 1、機器學(xué)習(xí) 1.1 kNN算法 1.2 SVM算法(支持向量機) ?1.3 k均值聚類算

    2024年02月05日
    瀏覽(29)
  • 基于MATLAB對彩色圖像去噪的代碼,均值濾波,中值濾波,空域低通濾波。

    基于MATLAB對彩色圖像去噪的代碼,均值濾波,中值濾波,空域低通濾波。

    本文主要為代碼展示,未對所用算法進行較為詳細的文字介紹,請讀者見諒。如有建議,歡迎私信。 ? MATLAB調(diào)用格式為: J=imnoise(I,type)或者J=imnoise(I,type,parameters)。將類型噪聲添加到灰度圖像。 其中,I為原始圖像,J為有噪圖像,參數(shù)type和parameters用于確定噪聲類型和相應(yīng)的參

    2024年02月06日
    瀏覽(17)
  • python實現(xiàn)對圖片進行均值濾波、中值濾波、高斯濾波處理及其原理和特點

    python實現(xiàn)對圖片進行均值濾波、中值濾波、高斯濾波處理及其原理和特點

    1.高斯濾波 ? ? ? ? 1)原理:對圖像鄰域內(nèi)像素進行平滑時,鄰域內(nèi)不同位置的像素被賦予不同的權(quán)值。 ? ? ? ? 2)特點:對圖像進行平滑的同時,同時能夠更多的保留圖像的總體灰度分布特征。 ? ? ? ? 3)代碼 ? ? ? ? 4)效果圖(左原圖) ?2.均值濾波 ????????1)

    2024年02月06日
    瀏覽(27)
  • 基于OpenCV-Python的圖像位置校正和版面分析

    基于OpenCV-Python的圖像位置校正和版面分析

    使用opencv對圖像進行操作,要求:(1)定位銀行票據(jù)的四條邊,然后旋正。(2)根據(jù)版面分析,分割出小寫金額區(qū)域。 首先是對圖像的校正 讀取圖片 對圖片二值化 進行邊緣檢測 對邊緣的進行霍夫曼變換 將變換結(jié)果從極坐標空間投影到笛卡爾坐標得到傾斜角 根據(jù)傾斜角對

    2024年01月19日
    瀏覽(41)
  • Python實現(xiàn):高斯濾波 均值濾波 中值濾波 Canny(邊緣檢測)PCA主成分分析 直方圖規(guī)定化 Mean_Shift

    Python實現(xiàn):高斯濾波 均值濾波 中值濾波 Canny(邊緣檢測)PCA主成分分析 直方圖規(guī)定化 Mean_Shift

    左側(cè)為原圖右側(cè)為高斯濾波后的圖 左圖為帶有噪聲的輸入原圖,右圖為經(jīng)過均值濾波后的圖片 左圖為帶有噪聲的輸入原圖,右圖為經(jīng)過中值濾波后的圖 上圖為輸入原圖,下圖為經(jīng)過Canny邊緣檢測后的圖 上圖為原圖 中圖為規(guī)定目標圖 下圖為原圖經(jīng)過規(guī)定化后的圖 左圖為原輸

    2024年02月07日
    瀏覽(25)
  • opencv-python基于計算機視覺的答題卡識別及判分系統(tǒng)ocr

    opencv-python基于計算機視覺的答題卡識別及判分系統(tǒng)ocr

    python ?django ?mysql 基于計算機視覺的答題卡識別及判分系統(tǒng)設(shè)計與實現(xiàn) 通過查閱資料和文獻在充分掌握OpenCV圖像處理開源框架,采用Python開發(fā)語言、實現(xiàn)簡單答題卡識別系統(tǒng),其基本功能包括:1,對答題卡進行圖像處理;2,識別答題卡的選擇題選項;3,將選擇題所選答案與

    2024年02月20日
    瀏覽(21)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包