C++ 匹配线段-稳健快速的方法
我有从单个图像数据中提取的二维线段,希望与从其他源中提取的三维线段相匹配。为此,首先,我想使用共线方程(我知道外部方向参数)将3D线段投影到图像空间。由于两条线段都在同一坐标系中,现在我想找到与该直线最匹配的线段 我正在寻找一种快速而健壮的算法来匹配相应的线段,以便以后更新我的三维线段C++ 匹配线段-稳健快速的方法,c++,image-processing,vector,pattern-matching,computational-geometry,C++,Image Processing,Vector,Pattern Matching,Computational Geometry,我有从单个图像数据中提取的二维线段,希望与从其他源中提取的三维线段相匹配。为此,首先,我想使用共线方程(我知道外部方向参数)将3D线段投影到图像空间。由于两条线段都在同一坐标系中,现在我想找到与该直线最匹配的线段 我正在寻找一种快速而健壮的算法来匹配相应的线段,以便以后更新我的三维线段 如果有人对此有想法,请给出一些建议。提前感谢。您遇到的问题与类似。因此,令人惊讶的是,它的解决方案可能也很相似 简单的方法是将每个2D段与每个3D段进行比较,最佳匹配是与实际长度和位置进行比较时最接近预测长度和位
如果有人对此有想法,请给出一些建议。提前感谢。您遇到的问题与类似。因此,令人惊讶的是,它的解决方案可能也很相似 简单的方法是将每个2D段与每个3D段进行比较,最佳匹配是与实际长度和位置进行比较时最接近预测长度和位置的匹配。实际为二维线段。这类似于O(AB),其中A是2D段的数量,B是3D段的数量 通过按字典顺序对2D线段进行排序,您可以在一定程度上加快该方法的速度,然后使用我在本文中提到的同一种算法来获得x值在某个范围内的所有线段,这些线段的x值在一条或两条线段端点*的预期x值之内。在最坏的情况下,您仍然可能遇到O(AB),但平均时间应该更接近O(B log A)。虽然,根据你所说的,你是否可以使用这种方法还不清楚,所以这一段应该更多地被认为是一个提纲 比O(B log A)或O(A log B)更快的速度可能要求这是一个经过充分研究的问题
- 如果按字典顺序对2D端点进行排序,则可能不需要1个端点
- 如果按字典顺序对2D端点进行排序,则可能不需要1个端点