matlab中噪声代码
cdtv
A
new
algorithm
for
image
denoising
简介
本算法基于
Coordinate
Descent
,
求解
L0-TV
图像去噪模型。L0-TV
的论文见
代码使用的是
Matlab
和
C/C++
混合编程的方法,并行版本使用的是
Pthreads
,当然也有纯
Matlab
版本的。目前只写了用于
512*512
黑白图片的代码。由于模型对于
RGB
三层有可分性,所以可以将代码分别作用到
RGB
三层,即得彩色图片的去噪结果。代码在
Ubuntu
14.04
bit
和
Matlab
2014a
的环境下编译通过。
使用
在
Matlab
下面输入:
mex
pcdtv.c
即可得到非并行版本的链接库,使用
U=pcdtv(lambda,B)
即可运行程序,其中
B
是损坏的图片(程序目前只支持
512*512
大小的),建议先将
B
的取值都限制到0
到
1
的范围内,这时
lambda=5
较为合适,
U
是结果
。
在
Matlab
下面输入:
mex
mex_pcdtv2.c
-lpthread
可以得到使用
2022-06-28 10:30:34
3.26MB
系统开源
1