91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

資源簡介

python編寫的ROF圖像降噪程序,代碼全面,親測可行,降噪效果優與一般的圖像降噪方法,對圖像處理研究者有一定幫助。

資源截圖

代碼片段和文件信息

from?numpy?import?*
from?pylab?import?*
from?PIL?import?Image
def?denoise(imU_inittau=0.5tv_weight=30max_iteration=10):
???#imU_init為含噪音的圖像tau與步長有關,tv_weight為全變差所占的權重λ,max_iteration為最大的迭代次數
???mn?=?im.shape
???U?=?U_init
???Px?=?im
???Py?=?im
???count?=?0
???while(count???????Uold?=?U
???????GradUx?=?roll(U-1axis=1)-U?#這里就是差分ux,如果對axis的選取有疑惑,本文后邊提供了一個鏈接
???????GradUy?=?roll(U1axis?=?0)-U?#這里就是差分uy#roll()函數,其實就相當于將矩陣移動,類似于無界模式的貪吃蛇,在最邊緣位置的數會移動到對面
???????NormNew?=?maximum(1sqrt(GradUx**2+GradUy**2))#為了防止出現分母為0
???????Px?=?GradUx/NormNew
???????Py?=?GradUy/NormNew
???????RxPx?=?roll(Px-1axis=1)
???????RyPy?=?roll(Py-1axis=0)
???????DivP?=?(RxPx-Px)+(RyPy-Py)
???????step?=?tau*(exp(-count*2/(max_iteration))+0.1)#有點模擬退火的意思
???????U?=?Uold?-?step*((Uold-im)+tv_weight*DivP)?#梯度下降
???????error?=?linalg.norm(U-Uold)/sqrt(n*m)
???????if?(count%10==0):
???????????print(‘step:‘step)
???????????print(‘error:‘error)
???????????count+=1
???????????return?UU-U_init
if?__name__==‘__main__‘:
???????from?numpy?import?random
???????from?scipy.ndimage?import?filters
???????im?=?zeros((500500))#建立一個圖形,外黑,中灰,內白
???????im[100:400100:400]?=?128
???????im[200:300200:300]?=?255
???????noise?=?30?*random.standard_normal((500500))?#噪聲
???????im?=?im?+?noise
???????UT?=?denoise(imimmax_iteration=10tau=0.5)
???????gray()
???????subplot(121)
???????imshow(im)
???????subplot(122)
???????imshow(U)
???????print(corrcoef(T.flatten()noise.flatten()))#相關度檢驗


?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????1834??2019-03-02?09:30??rofDeNoise.py

評論

共有 條評論