我在MATLAB中编写了一个代码,要求用户在2D中输入某些类别的点作为输入(用户以图形方式输入点)。当收到所有的点数后,我的代码会为每个类创建一个Convex Hull并将其显示给用户(您可以在下面的图像中看到一个示例)。
现在我的代码检查这些凸起的船体是否有任何交叉点。如果两个类彼此分开(没有交叉点),我想在这两个分开的凸壳之间找到超平面方程。
是否有任何MATLAB方法可以找到超平面方程?
我知道支持向量机(SVM)使用超平面对不同的类进行分类,但我不需要训练SVM,因为我知道我的代码只是在两个类分开时才尝试找到超平面。所以我不希望使用SVM来保护我的算法的运行时间免于浪费时间到计算那么多我不需要的东西(使用SVM的一个例子是{{ 3}}这不是我的答案!)。
注意:我正在使用MATLAB 2014a。我有每个点的坐标。最好的超平面是目标(具有最大边距),如果有多个,最好的超平面之一就足够了。在这部分中,我只想在两个(不是更多)类之间使用超平面。