-1

TypeError: init(): incompatible constructor arguments. The following argument types are supported: 1. open3d.cpu.pybind.pipelines.registration.RANSACConvergenceCriteria(arg0: open3d.cpu.pybind.pipelines.registration.RANSACConvergenceCriteria) 2. open3d.cpu.pybind.pipelines.registration.RANSACConvergenceCriteria(max_iteration: int = 1000, max_validation: int = 1000)

Invoked with: 100000, 0.999

I am getting this error while running the file. I am doing the global registration of open 3d documentation. I am not able to solve this error. I have also updated the version of python and open 3d then also it is not working. can anyone help?

1 Answers1

1

Depending on the version of open3d, the type of the second parameter of open3d.cpu.pybind.pipelines.registration.RANSACConvergenceCriteria changes:

  • Until open3d 0.11.1, it expects an int max_validation:
__init__(self: open3d.cpu.pybind.pipelines.registration.RANSACConvergenceCriteria, max_iteration: int = 1000, max_validation: int = 1000) -> None
  • From open3d 0.12.0, it expects a float confidence:
__init__(self: open3d.cpu.pybind.pipelines.registration.RANSACConvergenceCriteria, max_iteration: int = 100000, confidence: float = 0.999) -> None

Make sure you have indeed updated the version of your open3d.

Georgi
  • 86
  • 5