【发布时间】:2022-12-08 22:31:58
【问题描述】:
我正在尝试从相机检测文档并使用 OpenCV 裁剪它。当我在本地执行此操作时没有问题,但是当它在测试时工作时,下面的行需要超过 2 分钟。我试图在发布模式下构建我的项目,但没有任何改变。我正在使用 EMGU.CV 4.1.1.3497。让我感到困惑的是:它在事件处理程序中,并且每秒工作超过 1 次。仅第一次加载速度慢。然后它工作得很快。
private void Device_NewFrame(object sender, NewFrameEventArgs eventArgs)
{
using (Bitmap bitmap = (Bitmap)eventArgs.Frame.Clone())
{
using (Image<Bgr, byte> imageCV = new Image<Bgr, byte>(bitmap)) --this row takes 2 minutes on first load
{
//finding contour etc.
}
}
}
试图建立在发布模式上。 试图在本地添加测试我所有的 dll 版本。 在不同的设备和相机上尝试过。
【问题讨论】:
-
我的猜测是加载或编译库时出现某种超时。我会建议一些分析器来查看时间花在哪里。 Process Monitor 也可用于检查系统调用以及是否存在奇怪的故障。
-
嗨乔纳,感谢您的回复。我没有看到特定的失败,但是当我使用 procman 进行控制时,我可以看到读取文件 opencv_videoio_ffmpeg411.dll 花费了超过 1 分钟的时间。您有什么建议可以避免这种情况吗?我在上面添加了一些日志。
标签: c# .net opencv object-detection emgucv