LBD_and_LineMatching
LBD_and_LineMatching copied to clipboard
./Test_Single_LMA LinesInImage1.png LinesInImage2.png a.png
anny@danny-K46CM:~/LBD_and_LineMatching-master/build$ ./Test_Single_LMA LinesInImage1.png LinesInImage2.png a.png terminate called after throwing an instance of 'std::logic_error' what(): basic_string::_M_construct null not valid 已放弃 (核心已转储) what's wrong with this
确定图片的路径是对的吗,好像正确的路径应该是 ./Test_Single_LMA ../image/pic1.png ../image/pic2.png out.png
我把图片拷到build文件夹里了,所以图片路径应该没问题
-ubuntu:~/LBD_and_LineMatching-master/build$ ./Test_Single_LMA ../image/pic1.png ../image/pic2.png out.png terminate called after throwing an instance of 'std::logic_error' what(): basic_string::_M_construct null not valid Aborted (core dumped)
我也遇到这样的问题了QWQ,请问楼上有解决这个问题吗?
同上有人解决了吗
这里的错误是在int image_process(string img1path, string img2path, string outpath, string paramfilepath, bool saveLR = false)赋值时只使用前三个参数,第四个参数记录对比结果的文件名字未加入,所以赋值给一个null给string变量使得赋值失败,所以只要输入./Test_Single_LMA 图片一路径 图2路径 对比图片3路径 记录文档路径 就行,比如我把其他要用到的文件都放入build中,我输入的是./Test_Single_LMA imag1.png imag2.png imag3.png test.txt
请问这个问题还有其他解决方法吗,试过了前面提到的方式,还是会出现这样的错误
请问这个问题还有其他解决方法吗,试过了前面提到的方式,还是会出现这样的错误
源代码中Demo_LBD_single.cpp第20行在argv[3]后面再加一个argv[4]即可,这样的话运行的时候需要输入四个参数,如./Test_Single_LMA pic1.png pic2.png out 1 ,当然你的图片输入路径要写对,我是把可执行的程序和输入的图片放到一个文件夹里了,out是输出的文件名,会输出out.png,1是存储数据的文档,如线段的起始点,结束点,线宽等
请问这个问题还有其他解决方法吗,试过了前面提到的方式,还是会出现这样的错误
源代码中Demo_LBD_single.cpp第20行在argv[3]后面再加一个argv[4]即可,这样的话运行的时候需要输入四个参数,如./Test_Single_LMA pic1.png pic2.png out 1 ,当然你的图片输入路径要写对,我是把可执行的程序和输入的图片放到一个文件夹里了,out是输出的文件名,会输出out.png,1是存储数据的文档,如线段的起始点,结束点,线宽等
非常感谢,我改过了,可以使用了
请问这个问题还有其他解决方法吗,试过了前面提到的方式,还是会出现这样的错误
源代码中Demo_LBD_single.cpp第20行在argv[3]后面再加一个argv[4]即可,这样的话运行的时候需要输入四个参数,如./Test_Single_LMA pic1.png pic2.png out 1 ,当然你的图片输入路径要写对,我是把可执行的程序和输入的图片放到一个文件夹里了,out是输出的文件名,会输出out.png,1是存储数据的文档,如线段的起始点,结束点,线宽等
非常感谢!亲测可用!
请问这个批量LBD的执行命令怎么写?