我正在學習如何使用Emgu,並且VS2015遇到了問題而沒有突破它的異常,以及它沒有被try/catch塊捕獲的異常。 Visual Studio中的異常通知將閃爍一秒,然後程序退出。C#沒有捕獲代碼中的異常,或者與調試器
我的代碼:
using System;
using Emgu.CV;
using Emgu.CV.UI;
using Emgu.CV.Structure;
using Emgu.CV.Util;
using Emgu.CV.CvEnum;
namespace OpenCV1
{
class Program
{
static void Main(string[] args)
{
try
{
using (var image = new Image<Bgr, byte>(@"C:\Users\Administrator\Downloads\receipt-1.jpg"))
{
float scale = (float)500/(float)image.Height;
var resized = image.Resize(scale, Emgu.CV.CvEnum.Inter.Nearest);
var grey = image.Convert<Gray, byte>();
grey = grey.SmoothGaussian(5, 5, 1, 1);
var edged = grey.Canny(25, 100);
//ImageViewer.Show(edged, "edged");
VectorOfVectorOfPointF contours = new VectorOfVectorOfPointF();
Mat hierarchy = null;
CvInvoke.FindContours(edged.Copy(), contours, hierarchy, RetrType.List, ChainApproxMethod.ChainApproxSimple);
Console.ReadLine();
}
}
catch(Exception ex)
{
Console.WriteLine(ex.Message);
Console.ReadLine();
}
}
}
}
我的VS2015例外設置:
異常的截圖(這個閃爍幾乎太快收盤前看):
爲什麼我不能捕捉這些異常,爲什麼視覺工作室不會破壞它們?它仍然顯示異常消息,但幾乎立即關閉。
當我看到此行爲之前,它是因爲在調試器調用的非託管代碼中發生異常。嘗試保持所有「監視」或「本地」窗口關閉,以便您無法查看任何變量的內容,然後查看錯誤是否保持不變。 –
@ScottChamberlain關閉他們,同樣的交易 –