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


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

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) #輸入圖像,均值,標准差,百分比

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

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM