CloudComPy
CloudComPy copied to clipboard
ICP expects ccHObject?
Hi,
I'm trying to register two point clouds using ICP, following the documentation (Section 4.1).
Here is my code. My point clouds are stored as .las:
UAVLS_cloud = cc.loadPointCloud(UAVLS_path)
TLS_cloud = cc.loadPointCloud(TLS_path)
matching = cc.ICP(data=TLS_cloud, model=UAVLS_cloud, randomSamplingLimit=1e6)
This is the error message:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: ICP(): incompatible function arguments. The following argument types are supported:
1. (data: _cloudComPy.ccHObject, model: _cloudComPy.ccHObject, minRMSDecrease: float = 1e-05, maxIterationCount: int = 20, randomSamplingLimit: int = 50000, removeFarthestPoints: bool = False, method: _cloudComPy.CONVERGENCE_TYPE = <CONVERGENCE_TYPE.MAX_ITER_CONVERGENCE: 1>, adjustScale: bool = False, finalOverlapRatio: float = 1.0, useDataSFAsWeights: bool = False, useModelSFAsWeights: bool = False, transformationFilters: int = <TRANSFORMATION_FILTERS.SKIP_NONE: 0>, maxThreadCount: int = 0) -> _cloudComPy.ICPres
Invoked with: kwargs: data=<_cloudComPy.ccPointCloud object at 0x1554c888b9b0>, model=<_cloudComPy.ccPointCloud object at 0x155554757eb0>, randomSamplingLimit=1000000.0
I found the same error message in an older issue #163. I have tried to add more arguments to see if the old problem still exists, but I still get the same error message. I'm a little bit confused by the ccHObject. ICP expects this class object but, following the docs, we give it a ccPointCloud.