| 查看: 5318 | 回复: 3 | |||
[求助]
如何给图像加一个大小可控的泊松噪声 已有1人参与
|
|
如题,请教高手 matlab中用imnoise产生的poisson噪声,但噪声大小由输入图像自动生成,不可控制。 我想要可由参数控制的poisson噪声,从未产生含噪图像,用于图像降噪。 谢谢大家了 |
» 猜你喜欢
售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急
已经有3人回复
面上合作单位盖章
已经有9人回复
面上函评意见出来了,像什么等级?
已经有17人回复
为什么国自然不能直接公布
已经有5人回复
梦想
已经有7人回复
学科评审组评审是指会评吗?
已经有4人回复
为什么资助数各大高校都创新高,自己申请怎么就这么难
已经有14人回复
小白求助 投论文要求的highlights应该如何写
已经有4人回复
麻烦专家们看看评委们的意见(F口面上)
已经有12人回复
怎么看青基中了没有啊
已经有6人回复
feixiaolin
荣誉版主 (文坛精英)
-

专家经验: +518 - 信息EPI: 3
- 应助: 942 (博后)
- 贵宾: 1.275
- 金币: 3891
- 散金: 58785
- 红花: 532
- 沙发: 11
- 帖子: 24217
- 在线: 2601.8小时
- 虫号: 2139575
- 注册: 2012-11-21
- 专业: 光学信息获取与处理
- 管辖: 数学
2楼2014-04-16 21:34:01
3楼2017-07-17 10:35:46
|
图像泊松噪声是没法控制大小的,泊松噪声是和你图像亮度挂钩的,图像越亮,泊松噪声就近似高斯分布了,图像越暗,其影响越严重,因此单论一张图来说,控制其泊松噪声的大小是没有意义的。 如果你非要改变泊松噪声,可以有如下代码 function [ b ] = poisson_fun( a,lamda ) sizeA = size(a); a = double(a( );% (Monte-Carlo Rejection Method) Ref. Numerical % Recipes in C, 2nd Edition, Press, Teukolsky, % Vetterling, Flannery (Cambridge Press) b = zeros(size(a),'like', a); idx1 = find(a<50); % Cases where pixel intensities are less than 50 units if (~isempty(idx1)) g = exp(-a(idx1)*lamda); em = -ones(size(g)); t = ones(size(g)); idx2 = (1:length(idx1))'; while ~isempty(idx2) em(idx2) = em(idx2) + 1; t(idx2) = t(idx2) .* rand(size(idx2)); idx2 = idx2(t(idx2) > g(idx2)); end b(idx1) = em; end % For large pixel intensities the Poisson pdf becomes % very similar to a Gaussian pdf of mean and of variance % equal to the local pixel intensities. Ref. Mathematical Methods % of Physics, 2nd Edition, Mathews, Walker (Addison Wesley) idx1 = find(a >= 50); % Cases where pixel intensities are at least 50 units if (~isempty(idx1)) b(idx1) = round(a(idx1) + sqrt(lamda*a(idx1)) .* randn(size(idx1))); end b =uint8(reshape(b,sizeA)); end |

4楼2018-05-02 11:19:26










回复此楼
);
20