关注this tutorial后,我创建了我的正样本,但现在需要使用mergevec将它们合并。我下载了所提供的mergevec.exe二进制文件,并获得了两个必需的dll cxcore100.dll
和highgui100.dll
。但是,当我像这样运行它时:
mergevec samples.txt samples.vec
它给了我错误:
ERROR: Input file <filename> does not exist or not readable.
我该怎么做才能解决这个问题?我的vec文件很好,因为我能够使用opencv_createsamples
实用程序查看它们。所以我知道他们很好。
答案 0 :(得分:4)
我也遇到了这个问题并制作了一个python实用程序,它结合了.vec文件以避免再次安装openCV:https://github.com/wulfebw/mergevec
希望它有所帮助。
答案 1 :(得分:1)
我和你几天前的情况一样,所以我会尽力帮助你= P.
首先,我有兴趣知道你在哪里找到了mergevec.exe,因为如果我回想起它就不能再下载了。我问,因为我认为你可能已经下载了在Linux上编译的exe。当我尝试执行mergevec时,我遇到了同样的错误,我在我的Windows计算机上编译了Ubuntu。即使有2个dll。
正如我解释的那样here,来自Naotoshi的合并最初是为Unix发行而制作的,所以在windows下你会遇到很多问题。我第一次试图在Windows上做,但我放弃了,因为它太复杂了,即使有完整的Cygwin安装,我也无法编译mergevec.cpp。
我建议你做的是创建一个Ubuntu虚拟机并编译自己的mergevec.exe。完成后,您可以复制虚拟机中的vec文件并在Ubuntu下合并它们。在此之后,如果需要,可以将合并的vec文件恢复到Windows(最好不要在VM下运行培训:计算能力较低)。
这就是我所做的:
如果您遇到任何图书馆问题或OpenCV安装问题,请不要犹豫,我也经历过这些问题。