1
Im使用EMGU(opencv包裝)進行圖像處理。我想從一個文件夾中逐個加載圖像以對它們執行一些操作。我使用下面的代碼,並會在使用塊中執行一些操作。正確處理EMGU中的圖像
string[] filenames = Directory.GetFiles(directory);
foreach(string filename in filenames)
{
using (Image<Bgr, Byte> image = new Image<Bgr, byte>(filename))
{
}
}
但是,當我運行代碼時,應用程序使用不斷增長的內存塊,直到遇到有關尋址或內存不足的異常。
有什麼建議嗎?
是的,這似乎是問題所在。必須確保我妥善處置了無意中製作的任何副本。垃圾收集器不應該照顧這個嗎? – Christo 2011-04-18 13:33:34
GC將處理託管對象,但EmguCV只是非託管API的包裝 - 這是泄漏的內存。 – dahlbyk 2011-04-18 16:06:09