python+OpenCV 椒鹽噪聲和高斯噪聲

1.椒鹽噪聲,定義:PepperandSalt (src, percetage)  # 輸入圖像,百分比dom

import cv2 import random from numpy import *
#椒鹽噪聲
def PepperandSalt(src,percetage): NoiseImg=src NoiseNum=int(percetage*src.shape[0]*src.shape[1]) for i in range(NoiseNum): randX=random.random_integers(0,src.shape[0]-1) randY=random.random_integers(0,src.shape[1]-1) if random.random_integers(0,1)<=0.5: NoiseImg[randX,randY]=0 else: NoiseImg[randX,randY]=255
    return NoiseImg

 2.高斯噪聲,定義GaussianNoise(src,means,sigma,percetage) #輸入圖像,均值,標準差,百分比spa

import cv2 from numpy import shape import random #高斯噪聲
def GaussianNoise(src,means,sigma,percetage): NoiseImg=src NoiseNum=int(percetage*src.shape[0]*src.shape[1]) for i in range(NoiseNum): randX=random.randint(0,src.shape[0]-1) randY=random.randint(0,src.shape[1]-1) NoiseImg[randX, randY]=NoiseImg[randX,randY]+random.gauss(means,sigma) if  NoiseImg[randX, randY]< 0: NoiseImg[randX, randY]=0 elif NoiseImg[randX, randY]>255: NoiseImg[randX, randY]=255
    return NoiseImg
相關文章
相關標籤/搜索