C++ OpenCV Flann-断言失败
我一直在尝试设置一个基本的3D点法兰knnsearch,但到目前为止还不能成功地让它工作。我试过很多不同的方法,但都有错误。有一段时间,我在C++ OpenCV Flann-断言失败,c++,opencv,visual-c++,flann,opencv3.0,C++,Opencv,Visual C++,Flann,Opencv3.0,我一直在尝试设置一个基本的3D点法兰knnsearch,但到目前为止还不能成功地让它工作。我试过很多不同的方法,但都有错误。有一段时间,我在cv::flann::Index kdtree(cv::Mat(cvPointCloud)方面遇到了问题抱怨类型不匹配。但我似乎不再看到那个错误,但这一个已经取代了它,我不知道该怎么办 OpenCV错误:断言失败(mtype==type0 | | |)(CV_MAT_CN(mtype)==CV_MAT_CN (type0)和((1根据,变量'dists'需要
cv::flann::Index kdtree(cv::Mat(cvPointCloud)方面遇到了问题代码>抱怨类型不匹配。但我似乎不再看到那个错误,但这一个已经取代了它,我不知道该怎么办
OpenCV错误:断言失败(mtype==type0 | | |)(CV_MAT_CN(mtype)==CV_MAT_CN
(type0)和((1根据,变量'dists'需要是
std::vector<float> dists(NUM_NEAREST_NEIGHBORS);
std::向量距离(NUM\u近邻);
不是
std::vector<int> dists(NUM_NEAREST_NEIGHBORS);
std::向量距离(NUM\u近邻);
正如在代码中声明的那样。是否可以使用Point3i而不是Point3f?我所有的数据都是int,不想在它们之间混合。切换时,我收到以下错误:OpenCV错误:不支持的格式或格式组合(type=4)在cv::flann::buildIndex\中,文件E:\opencv\source\modules\flann\src\miniflann.cpp,第315行
,其中type=4
是cv\u 32S
我认为不是。它只接受点3f的向量作为输入。将数据向量转换为点3f的向量,只需花费O(n)。
std::vector<int> dists(NUM_NEAREST_NEIGHBORS);