【问题标题】:input cascade could not be found/opened无法找到/打开输入级联
【发布时间】:2014-12-23 12:26:12
【问题描述】:

伙计们,我需要你的帮助!!!。我正在使用 opencv 中的 haartraining 函数制作自己的 haarcascade.xml 文件以进行车辆检测。无论如何,我在第 9 阶段停止了训练并创建了以下文件。

  • 参数
  • stage0
  • 第一阶段
  • 第二阶段
  • .
  • .
  • .
  • stage9

这些都是xml文件

然后我在 opencv 示例文件夹中编译 convert_cascade.c 并获取 .exe 文件以从那些创建的 xml 文件文件中获取最终的 xml 文件。然后我在cmd中给了这样的参数(进入项目文件夹后)

convert_cascade --size="40x40" file_path_to_created xml 文件vehicle.xml

到那个 exe 文件,它说“输入级联无法找到/打开”。我搜索了整个互联网,但没有找到任何可行的解决方案。告诉我如何解决这个问题。

注意-我将convert_cascade.c(不在opencv目录中。在另一个目录中)编译为vs 2010环境中的c ++文件(opencv链接)并成功构建。

我的操作系统是 Windows 7。 开放式CV 2.4.8。 如果我的问题不清楚,请告诉我。我会编辑它们

【问题讨论】:

  • 我认为因为在您的帖子中显示代码会很好
  • 也许代码要求文件名以.xml结尾?根据你的清单,你的没有。
  • 感谢您的快速回复。到目前为止,我还没有代码。我按照“note.sonots.com/SciSoftware/haartraining.html#x15ebd98”中的教程进行操作。它说我必须提供包含创建的 xml 文件(stage0、stage1、stage2..)的文件夹的文件夹路径和要创建的 xml 文件的名称。该程序向我展示了如何输入参数并告诉我“找不到输入级联..”
  • @Jongware:这些阶段 xml 文件位于名为“data”的文件夹中。所以我给了那个文件夹的路径。 “文件名以 .xml 结尾”是什么意思?
  • 我给出了以下命令 >convert_cascade --size="40x40" data vehicle.xml

标签: c++ c opencv


【解决方案1】:

看来,您中止了训练(按 Ctrl^c),因此没有生成 cascade.xml。

不用担心,只需以相同的方式重新启动 opencv_traincascade 工具的 cmdline,并使用与以前相同的参数,只需使用 -stage 9 即可。 (甚至可能是 8,最后阶段可能会因中止而损坏)。

这应该尝试完成最后阶段的训练,并在数据文件夹中生成一个cascade.xml。

然后使用它作为参数来生成你的vehicle.xml:

convert_cascade --size="40x40" data\cascade.xml vehicle.xml

【讨论】:

  • 两个程序都应该允许这样做。只是(可能删除最后一个阶段)并再次调用它。
  • 感谢您的回复 berak。对不起,我意识到我的情况不同。我使用级联训练应用程序进行训练。我在那里设置了 40 个阶段,但在第 9 个阶段停止了。我知道你提到 cascade.xml 将在 40 个阶段后生成。 (我知道我应该将其设置为 20 或接近)。我发现 convert_cascade.exe 只支持 haartraining 应用程序而不是级联训练应用程序提供的文件。所以我认为这可能是 convert_cascade 给我错误的原因。所以我又要开始训练了。
  • 顺便说一句,在我的数据文件夹中没有 cascade.xml 文件。所以你的意见是什么?
猜你喜欢
  • 1970-01-01
  • 2021-07-16
  • 2014-01-13
  • 2015-12-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多