小编Sch*_*ler的帖子

从一组点中找到四边形的角点

我尝试从一组点获得四边形的角点.

  • 订购点集并描述大纲
  • 有时轮廓有一些噪音(见第2张图)
  • 搜索到的角点不必是给定点集之外的点(参见左下角的第3张图)
  • 搜索的角点描述了凸四边形,不一定是矩形

例1 例题 示例3

第二张照片有点极端,但我的一组点的"质量"位于第一张照片和第二张照片之间.

首先,我想要制作超过1-360°和长度的直方图,以下两点描述.四个最高峰将描述每条线的长度.但是由于iam失去了订单点,只知道度数和长度或一条线,并且不知道一条线属于哪个位置.

然后我考虑合并两个以下的行,如果它们具有或多或少相同的程度,但我不知道如何处理这里的噪音或预测角落.

有没有人知道处理这个问题或类似的算法?

algorithm math trigonometry corner-detection

8
推荐指数
1
解决办法
1588
查看次数

在objc库中调用包装的静态c ++库会导致链接器错误

我有一个cpp静态库,并尝试将其包装在一个静态的obj-c库中,以便它从外部看起来像一个普通的obj-c lib.我的obj-c lib编译得很好,但是当我尝试在App中使用这个lib时,我得到以下链接器错误:

Apple Mach-O Linker (Id) Error
Undefined symbols for architecture i386:
  "operator new(unsigned long)", referenced from:
...
Run Code Online (Sandbox Code Playgroud)

所有libs都可以在每个需要的架构中编译好.

我的包装器lib看起来像这样:

ObjcLib.h

@interface  ObjcLib: NSObject{
}
- (void) doSomething:(NSString*)text;
@end
Run Code Online (Sandbox Code Playgroud)

ObjcLib.mm

#import "ObjcLib.h"
#import "apiFromCppLib.h"
@interface ObjcLib (){
@private
    cppApiNamespace::BaseApi* api;
}
@end

@implementation ObjcLib
- (void) doSomething:(NSString*)text{
    api = new cppApiNamespace::BaseAPI();
}
Run Code Online (Sandbox Code Playgroud)

在我的应用程序中,我在Link Binary With Libraries下添加了ObjcLib.a.库搜索路径也是正确的,但是当我尝试用[ObjcLib alloc]创建一个对象时,我得到了上面提到的链接器错误.我正在使用XCode4和LLVM编译器3.0

希望任何人都可以给我一个提示可能是错误的提示,或者我的包装是否正确.

编辑:在应用程序的构建设置中添加-lstdc ++作为其他链接器标志解决了许多链接器错误,但不是全部.解决的问题是ObjcLib.h和ObjcLib.mm中的cpp命令.保留的是来自BaseAPI的一些方法调用.我们将仔细研究一下这个方法调用与正确链接的其他方法的不同之处.

c++ objective-c linker-errors wrapper xcode4

2
推荐指数
1
解决办法
1300
查看次数