라이브러리 Numpy를 이용한 정규 분포에 기초한 참깨염 노이즈 부가 처리 및 제거 처리
처음에(^ω^)
모자이크는 아니 네요. 소음이 아니네요 ...
정말 음향 신호 주위에서 할 예정이었던 것입니다만, 이미지 쪽이 우케가 좋을까라고 생각해 보았습니다. 생각보다 퀄리티 높다? !
 작성한 소스 코드
#---------------------------------------------------------
#ライブラリNumpyを用いた正規分布に基づくゴマ塩ノイズ付加処理と除去処理
#---------------------------------------------------------
import numpy as np
import cv2
#保存先指定
file = './text11.txt'
#カラーで読み込み
img = cv2.imread('./shigure.png')
#Numy配列に保存
im = np.array(img)
#画像サイズ取得
shape = im.shape
#1ピクセル事にノイズ付加処理
for x in range(shape[0]):
    for y in range(shape[1]):
        Count = 0
        rand = np.random.randint(3)#乱数作成
        print (rand)
        if rand == 0:
            for Count in range(3):
                im[x][y][Count] = 0
        if rand == 1:
            for Count in range(3):
               im[x][y][Count] = 255
#ノイズ付加画像出力
cv2.imwrite('./Add noise.png', im)
#ノイズ除去
median1 = cv2.medianBlur(im, ksize = 3)#1回目
median2 = cv2.medianBlur(median1, ksize = 3)#2回目
median3 = cv2.medianBlur(median2, ksize = 3)#3回目
median4 = cv2.medianBlur(median3, ksize = 3)#4回目
median5 = cv2.medianBlur(median4, ksize = 3)#5回目
median6 = cv2.medianBlur(median5, ksize = 3)#6回目
median7 = cv2.medianBlur(median6, ksize = 3)#7回目
median8 = cv2.medianBlur(median7, ksize = 3)#8回目
median9 = cv2.medianBlur(median8, ksize = 3)#9回目
median10 = cv2.medianBlur(median9, ksize = 3)#10回目
#ノイズ除去画像出力
cv2.imwrite('./Noise removal1.png', median1)#1回目のノイズ除去画像出力
cv2.imwrite('./Noise removal10.png', median10)#10回目のノイズ除去画像出力
 코드 해설
 코드 실행 결과
원본 이미지
 
노이즈 추가 이미지
 
노이즈 제거 1회째
 
노이즈 제거 10회째
 
 코드 해설 저것 이것
 노이즈 부가 처리
#1ピクセル事にノイズ付加処理
for x in range(shape[0]):
    for y in range(shape[1]):
        Count = 0
        rand = np.random.randint(3)#乱数作成
        print (rand)
        if rand == 0:
            for Count in range(3):
                im[x][y][Count] = 0
        if rand == 1:
            for Count in range(3):
               im[x][y][Count] = 255
노이즈 부가 처리에 관해서는, 1픽셀마다 난수를 이용해 노이즈를 부가하고 있습니다. 그러기 위해서는 1픽셀마다 내용물을 꺼내야 합니다. 그 때문에 2중 for를 이용해 보았습니다. x축과 y축의 관계에 주의하면서 보세요!
 노이즈 제거 처리
#ノイズ除去
median1 = cv2.medianBlur(im, ksize = 3)#1回目
median2 = cv2.medianBlur(median1, ksize = 3)#2回目
median3 = cv2.medianBlur(median2, ksize = 3)#3回目
median4 = cv2.medianBlur(median3, ksize = 3)#4回目
median5 = cv2.medianBlur(median4, ksize = 3)#5回目
median6 = cv2.medianBlur(median5, ksize = 3)#6回目
median7 = cv2.medianBlur(median6, ksize = 3)#7回目
median8 = cv2.medianBlur(median7, ksize = 3)#8回目
median9 = cv2.medianBlur(median8, ksize = 3)#9回目
median10 = cv2.medianBlur(median9, ksize = 3)#10回目
#ノイズ除去画像出力
cv2.imwrite('Noise removal1.png', median1)#1回目のノイズ除去画像出力
cv2.imwrite('Noise removal10.png', median10)#10回目のノイズ除去画像出力
 참고문헌
어쩌면 안돼.
 목차와 같은 것
 Re: 처음부터 시작하는 기계 학습 생활(심층 학습도 있어)
여기에 진척 상황 등을 실고 있습니다.
지금까지 쓴 것을 나열하고 있으니 봐주세요!
                
                    
        
    
    
    
    
    
                
                
                
                
                    
                        
                            
                            
                            Reference
                            
                            이 문제에 관하여(라이브러리 Numpy를 이용한 정규 분포에 기초한 참깨염 노이즈 부가 처리 및 제거 처리), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
                                
                                https://qiita.com/KengoKudou/items/49a25c5bdbdb1a4f6047
                            
                            
                            
                                텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
                            
                            
                                
                                
                                 우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)
                                
                                
                                우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)
                            
                            
                        
                    
                
                
                
            
#---------------------------------------------------------
#ライブラリNumpyを用いた正規分布に基づくゴマ塩ノイズ付加処理と除去処理
#---------------------------------------------------------
import numpy as np
import cv2
#保存先指定
file = './text11.txt'
#カラーで読み込み
img = cv2.imread('./shigure.png')
#Numy配列に保存
im = np.array(img)
#画像サイズ取得
shape = im.shape
#1ピクセル事にノイズ付加処理
for x in range(shape[0]):
    for y in range(shape[1]):
        Count = 0
        rand = np.random.randint(3)#乱数作成
        print (rand)
        if rand == 0:
            for Count in range(3):
                im[x][y][Count] = 0
        if rand == 1:
            for Count in range(3):
               im[x][y][Count] = 255
#ノイズ付加画像出力
cv2.imwrite('./Add noise.png', im)
#ノイズ除去
median1 = cv2.medianBlur(im, ksize = 3)#1回目
median2 = cv2.medianBlur(median1, ksize = 3)#2回目
median3 = cv2.medianBlur(median2, ksize = 3)#3回目
median4 = cv2.medianBlur(median3, ksize = 3)#4回目
median5 = cv2.medianBlur(median4, ksize = 3)#5回目
median6 = cv2.medianBlur(median5, ksize = 3)#6回目
median7 = cv2.medianBlur(median6, ksize = 3)#7回目
median8 = cv2.medianBlur(median7, ksize = 3)#8回目
median9 = cv2.medianBlur(median8, ksize = 3)#9回目
median10 = cv2.medianBlur(median9, ksize = 3)#10回目
#ノイズ除去画像出力
cv2.imwrite('./Noise removal1.png', median1)#1回目のノイズ除去画像出力
cv2.imwrite('./Noise removal10.png', median10)#10回目のノイズ除去画像出力
코드 해설
 코드 실행 결과
원본 이미지
 
노이즈 추가 이미지
 
노이즈 제거 1회째
 
노이즈 제거 10회째
 
 코드 해설 저것 이것
 노이즈 부가 처리
#1ピクセル事にノイズ付加処理
for x in range(shape[0]):
    for y in range(shape[1]):
        Count = 0
        rand = np.random.randint(3)#乱数作成
        print (rand)
        if rand == 0:
            for Count in range(3):
                im[x][y][Count] = 0
        if rand == 1:
            for Count in range(3):
               im[x][y][Count] = 255
노이즈 부가 처리에 관해서는, 1픽셀마다 난수를 이용해 노이즈를 부가하고 있습니다. 그러기 위해서는 1픽셀마다 내용물을 꺼내야 합니다. 그 때문에 2중 for를 이용해 보았습니다. x축과 y축의 관계에 주의하면서 보세요!
 노이즈 제거 처리
#ノイズ除去
median1 = cv2.medianBlur(im, ksize = 3)#1回目
median2 = cv2.medianBlur(median1, ksize = 3)#2回目
median3 = cv2.medianBlur(median2, ksize = 3)#3回目
median4 = cv2.medianBlur(median3, ksize = 3)#4回目
median5 = cv2.medianBlur(median4, ksize = 3)#5回目
median6 = cv2.medianBlur(median5, ksize = 3)#6回目
median7 = cv2.medianBlur(median6, ksize = 3)#7回目
median8 = cv2.medianBlur(median7, ksize = 3)#8回目
median9 = cv2.medianBlur(median8, ksize = 3)#9回目
median10 = cv2.medianBlur(median9, ksize = 3)#10回目
#ノイズ除去画像出力
cv2.imwrite('Noise removal1.png', median1)#1回目のノイズ除去画像出力
cv2.imwrite('Noise removal10.png', median10)#10回目のノイズ除去画像出力
 참고문헌
어쩌면 안돼.
 목차와 같은 것
 Re: 처음부터 시작하는 기계 학습 생활(심층 학습도 있어)
여기에 진척 상황 등을 실고 있습니다.
지금까지 쓴 것을 나열하고 있으니 봐주세요!
                
                    
        
    
    
    
    
    
                
                
                
                
                    
                        
                            
                            
                            Reference
                            
                            이 문제에 관하여(라이브러리 Numpy를 이용한 정규 분포에 기초한 참깨염 노이즈 부가 처리 및 제거 처리), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
                                
                                https://qiita.com/KengoKudou/items/49a25c5bdbdb1a4f6047
                            
                            
                            
                                텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
                            
                            
                                
                                
                                 우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)
                                
                                
                                우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)
                            
                            
                        
                    
                
                
                
            
#1ピクセル事にノイズ付加処理
for x in range(shape[0]):
    for y in range(shape[1]):
        Count = 0
        rand = np.random.randint(3)#乱数作成
        print (rand)
        if rand == 0:
            for Count in range(3):
                im[x][y][Count] = 0
        if rand == 1:
            for Count in range(3):
               im[x][y][Count] = 255
#ノイズ除去
median1 = cv2.medianBlur(im, ksize = 3)#1回目
median2 = cv2.medianBlur(median1, ksize = 3)#2回目
median3 = cv2.medianBlur(median2, ksize = 3)#3回目
median4 = cv2.medianBlur(median3, ksize = 3)#4回目
median5 = cv2.medianBlur(median4, ksize = 3)#5回目
median6 = cv2.medianBlur(median5, ksize = 3)#6回目
median7 = cv2.medianBlur(median6, ksize = 3)#7回目
median8 = cv2.medianBlur(median7, ksize = 3)#8回目
median9 = cv2.medianBlur(median8, ksize = 3)#9回目
median10 = cv2.medianBlur(median9, ksize = 3)#10回目
#ノイズ除去画像出力
cv2.imwrite('Noise removal1.png', median1)#1回目のノイズ除去画像出力
cv2.imwrite('Noise removal10.png', median10)#10回目のノイズ除去画像出力
어쩌면 안돼.
목차와 같은 것
 Re: 처음부터 시작하는 기계 학습 생활(심층 학습도 있어)
여기에 진척 상황 등을 실고 있습니다.
지금까지 쓴 것을 나열하고 있으니 봐주세요!
                
                    
        
    
    
    
    
    
                
                
                
                
                    
                        
                            
                            
                            Reference
                            
                            이 문제에 관하여(라이브러리 Numpy를 이용한 정규 분포에 기초한 참깨염 노이즈 부가 처리 및 제거 처리), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
                                
                                https://qiita.com/KengoKudou/items/49a25c5bdbdb1a4f6047
                            
                            
                            
                                텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
                            
                            
                                
                                
                                 우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)
                                
                                
                                우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)
                            
                            
                        
                    
                
                
                
            
Reference
이 문제에 관하여(라이브러리 Numpy를 이용한 정규 분포에 기초한 참깨염 노이즈 부가 처리 및 제거 처리), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/KengoKudou/items/49a25c5bdbdb1a4f6047텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
                                
                                
                                
                                
                                
                                우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)