将opencv中的高斯噪声转换为emgu cv

本文关键字:转换 emgu cv 噪声 高斯 opencv | 更新日期: 2023-09-27 18:08:49

我正在学习图像处理,我需要在c#中使用emgu cv制作高斯噪声。我找到了代码

Mat gaussian_noise = image .clone();

randn (gaussian_noise 128 30);

表示在开放cv中产生高斯噪声。emgu cv的翻译代码是什么?

将opencv中的高斯噪声转换为emgu cv

经过一番搜索,我发现Emgu上与randn等价的是Matrix上的SetRandNormal(MCvScalar, MCvScalar)方法。因此,要编写类似于您的代码的内容,您必须执行:

//Create your image as Image<Bgr,byte> here, for example.
Matrix<byte> matrix = new Matrix<byte>(img.Width, img.Height);
CvInvoke.cvConvert(img, matrix);
matrix.SetRandNormal(new MCvScalar(128), new MCvScalar(30));
//And Here you can convert back to image and do whatever you want.

应该可以,但是我没有在这台机器上安装Emgu,所以我现在不能测试它。

祝你好运!