0

我想做一个应用程序 - 从图像识别车牌。我使用 OpenCvSharp 和 Puma.NET。

但是当我启动我的应用程序时,写道找不到该号码。

当我使用断点时 - 异常 - “识别引擎因代码停止:0”

我加载了三个dll——dibapi.dll、puma.net.dll、puma.interop.dll。

为什么无法识别数字?

 public void RecognizePlate() // 
    {
        plateList.Clear();
        int i = 1;
        foreach(var plateImage in plate)
        {
            plateList.Add(i.ToString()+ " ) " + RunPuma(plateImage));
            i++;
        }
    }

    string RunPuma(IplImage img) // 
    {
        PumaPage Image = new PumaPage(img.ToBitmap());
        using (Image)
        {
            Image.FileFormat = PumaFileFormat.RtfAnsi; 
            Image.AutoRotateImage = true; 
            Image.FontSettings.DetectBold = true; 
            Image.FontSettings.DetectItalic = true;
            Image.EnableSpeller = false;
            Image.Language = PumaLanguage.English; 

            try
            {
                string s = Image.RecognizeToString();
                return s;
            }

            catch(Exception e)
            {
                return "This is NOT NUMBER";
            }
        }

        return "Error";
    }`
4

2 回答 2

0

您将需要以管理员身份重新启动 Visual Studio,然后您应该能够工作。

于 2016-06-21T11:07:41.140 回答
0

问题是注册不成功。

根据文档,apuma.dll组件应在安装过程中注册。但*.bat文件似乎是错误的,至少对我的电脑来说是这样。

我解决了以下问题:

  1. 将所有文件Puma.NET\COM Server\RegisterPuma.NET\COM Server
  2. Puma.NET\COM Server在目录中打开控制台。
  3. 键入此命令:regsvr32 APuma.dll

如果你收到注册成功的消息,乔治就是你的叔叔!!

于 2017-02-11T01:26:12.483 回答