Emgu CV Ram问题

时间:2018-12-20 21:02:14

标签: c# emgucv

我大约有100张图像,所以我开始将它们一张一张地发送给ProcessImage函数。并且它一直使用大量的Ram,直到达到5 GB左右,然后我的程序崩溃 如前所述:.SmoothGaussian在当前图像中执行高斯平滑并返回结果。

请注意:我开始删除代码的某些部分,直到达到100%的程度为止,我的Ram问题是由特定的突出显示的代码行引起的!我也在使用Emgu CV版本3.4.3

我在声明后尝试同时输入:temp.Dispose();temp=null();,但没有用!

using Emgu.CV;
using Emgu.CV.Structure;
using Emgu.CV.Util;

private void OpenFolder_Click(object sender, EventArgs e)
{
    OpenFileDialog open = new OpenFileDialog();
    open.Multiselect = true;
    if (open.ShowDialog() == DialogResult.OK)
    {
        for (int i = 0; i < open.FileNames.Count(); i++)
        {
            using (Image<Bgr, byte> ToProcess = new Image<Bgr,byte> (open.FileNames[i]))
            {
                ProcessImage(ToProcess, i);
            }
        }
    }
}

ProcessImage函数:

private void ProcessImage (Image<Bgr, byte> imgInput, int counter)
{
    //This line of code causes the problem!
    var temp = imgInput.SmoothGaussian(5);
}

0 个答案:

没有答案