<div align="center">
<img src="https://raw.githubusercontent.com/leomariga/pyRANSAC-3D/master/doc/logo.png"><br>
</div>
-----------------
[![PyPI Latest Release](https://img.shields.io/pypi/v/pyransac3d.svg?style=for-the-badge)](https://pypi.org/project/pyransac3d/)
[![License](https://img.shields.io/pypi/l/pyransac3d.svg?style=for-the-badge)](https://github.com/leomariga/pyransac3d/blob/master/LICENSE)
## What is pyRANSAC-3D?
**_pyRANSAC-3D_** is an open source implementation of Random sample consensus (RANSAC) method. It fits primitive shapes such as planes, cuboids and cylinder in a point cloud to many aplications: 3D slam, 3D reconstruction, object tracking and many others.
<div align="center">
<img src="https://raw.githubusercontent.com/leomariga/pyRANSAC-3D/master/doc/plano.gif"><br>
</div>
#### Features:
- [Plane](https://leomariga.github.io/pyRANSAC-3D/api-documentation/plane/)
- [Cylinder](https://leomariga.github.io/pyRANSAC-3D/api-documentation/cylinder/)
- [Cuboid](https://leomariga.github.io/pyRANSAC-3D/api-documentation/cuboid/)
- [Sphere](https://leomariga.github.io/pyRANSAC-3D/api-documentation/sphere/)
- [Line](https://leomariga.github.io/pyRANSAC-3D/api-documentation/line/)
- [Circle](https://leomariga.github.io/pyRANSAC-3D/api-documentation/circle/)
- [Point](https://leomariga.github.io/pyRANSAC-3D/api-documentation/point/)
## Installation
Requirements: Numpy
Install with [Pypi](https://pypi.org/project/pyransac3d/):
```sh
pip3 install pyransac3d
```
## Take a look:
### Example 1 - Planar RANSAC
``` python
import pyransac3d as pyrsc
points = load_points(.) # Load your point cloud as a numpy array (N, 3)
plane1 = pyrsc.Plane()
best_eq, best_inliers = plane1.fit(points, 0.01)
```
Results in the plane equation Ax+By+Cz+D:
`[0.720, -0.253, 0.646, 1.100]`
### Example 2 - Spherical RANSAC
Loading a noisy sphere's point cloud with r = 5 centered in 0 we can use the following code:
``` python
import pyransac3d as pyrsc
points = load_points(.) # Load your point cloud as a numpy array (N, 3)
sph = pyrsc.Sphere()
center, radius, inliers = sph.fit(points, thresh=0.4)
```
Results:
``` python
center: [0.010462385575072288, -0.2855090643954039, 0.02867848979091283]
radius: 5.085218633039647
```
![3D Sphere](https://raw.githubusercontent.com/leomariga/pyRANSAC-3D/master/doc/sphere.gif "3D Sphere")
## Documentation & other links
- The [documentation is this Ṕage](https://leomariga.github.io/pyRANSAC-3D/).
- Source code in the [Github repository](https://github.com/leomariga/pyRANSAC-3D).
- [Pypi pakage installer](https://pypi.org/project/pyransac3d/)
- You can find the animations you see in the documentation on branch [Animations](https://github.com/leomariga/pyRANSAC-3D/tree/Animations). It needs [Open3D](https://github.com/intel-isl/Open3D) library to run. The Animation branch is not regularly maintained, it only exists to create some cool visualizations ;D
## License
[Apache 2.0](https://github.com/leomariga/pyRANSAC-3D/blob/master/LICENSE)
## Contributing is awesome!
See [CONTRIBUTING](https://github.com/leomariga/pyRANSAC-3D/blob/master/CONTRIBUTING.md)
## Contact
Developed with :heart: by the internet
Mainteiner: [Leonardo Mariga](https://github.com/leomariga)
Did you like it? Remember to click on :star2: button.
Raw data
{
"_id": null,
"home_page": "https://github.com/leomariga/pyRANSAC-3D",
"name": "pyransac3d",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.6",
"maintainer_email": "",
"keywords": "point-cloud,segmentation,ransac,cuboid,3d-reconstruction,cylinder,planes,open3d,plane-detection,ransac-algorithm",
"author": "Leonardo Mariga",
"author_email": "leomariga@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/4d/14/5a832a068aea13656c3b4155544d79c5e7d68b7bb8b539bac5a57abefae0/pyransac3d-0.6.0.tar.gz",
"platform": "",
"description": "\n<div align=\"center\">\n <img src=\"https://raw.githubusercontent.com/leomariga/pyRANSAC-3D/master/doc/logo.png\"><br>\n</div>\n\n-----------------\n[![PyPI Latest Release](https://img.shields.io/pypi/v/pyransac3d.svg?style=for-the-badge)](https://pypi.org/project/pyransac3d/)\n[![License](https://img.shields.io/pypi/l/pyransac3d.svg?style=for-the-badge)](https://github.com/leomariga/pyransac3d/blob/master/LICENSE)\n\n## What is pyRANSAC-3D?\n**_pyRANSAC-3D_** is an open source implementation of Random sample consensus (RANSAC) method. It fits primitive shapes such as planes, cuboids and cylinder in a point cloud to many aplications: 3D slam, 3D reconstruction, object tracking and many others. \n\n<div align=\"center\">\n <img src=\"https://raw.githubusercontent.com/leomariga/pyRANSAC-3D/master/doc/plano.gif\"><br>\n</div>\n\n#### Features:\n - [Plane](https://leomariga.github.io/pyRANSAC-3D/api-documentation/plane/)\n - [Cylinder](https://leomariga.github.io/pyRANSAC-3D/api-documentation/cylinder/)\n - [Cuboid](https://leomariga.github.io/pyRANSAC-3D/api-documentation/cuboid/)\n - [Sphere](https://leomariga.github.io/pyRANSAC-3D/api-documentation/sphere/)\n - [Line](https://leomariga.github.io/pyRANSAC-3D/api-documentation/line/)\n - [Circle](https://leomariga.github.io/pyRANSAC-3D/api-documentation/circle/)\n - [Point](https://leomariga.github.io/pyRANSAC-3D/api-documentation/point/)\n\n\n## Installation\nRequirements: Numpy\n\nInstall with [Pypi](https://pypi.org/project/pyransac3d/):\n\n```sh\npip3 install pyransac3d\n```\n\n## Take a look: \n\n### Example 1 - Planar RANSAC\n\n``` python\nimport pyransac3d as pyrsc\n\npoints = load_points(.) # Load your point cloud as a numpy array (N, 3)\n\nplane1 = pyrsc.Plane()\nbest_eq, best_inliers = plane1.fit(points, 0.01)\n\n```\n\nResults in the plane equation Ax+By+Cz+D:\n`[0.720, -0.253, 0.646, 1.100]`\n\n### Example 2 - Spherical RANSAC\n\nLoading a noisy sphere's point cloud with r = 5 centered in 0 we can use the following code:\n\n``` python\nimport pyransac3d as pyrsc\n\npoints = load_points(.) # Load your point cloud as a numpy array (N, 3)\n\nsph = pyrsc.Sphere()\ncenter, radius, inliers = sph.fit(points, thresh=0.4)\n\n```\n\nResults:\n``` python\ncenter: [0.010462385575072288, -0.2855090643954039, 0.02867848979091283]\nradius: 5.085218633039647\n```\n\n![3D Sphere](https://raw.githubusercontent.com/leomariga/pyRANSAC-3D/master/doc/sphere.gif \"3D Sphere\")\n\n\n## Documentation & other links\n - The [documentation is this \u1e54age](https://leomariga.github.io/pyRANSAC-3D/).\n - Source code in the [Github repository](https://github.com/leomariga/pyRANSAC-3D).\n - [Pypi pakage installer](https://pypi.org/project/pyransac3d/)\n - You can find the animations you see in the documentation on branch [Animations](https://github.com/leomariga/pyRANSAC-3D/tree/Animations). It needs [Open3D](https://github.com/intel-isl/Open3D) library to run. The Animation branch is not regularly maintained, it only exists to create some cool visualizations ;D \n\n\n## License\n[Apache 2.0](https://github.com/leomariga/pyRANSAC-3D/blob/master/LICENSE)\n\n## Contributing is awesome!\n\nSee [CONTRIBUTING](https://github.com/leomariga/pyRANSAC-3D/blob/master/CONTRIBUTING.md)\n\n\n\n\n## Contact\n\nDeveloped with :heart: by the internet\n\n\nMainteiner: [Leonardo Mariga](https://github.com/leomariga) \n\nDid you like it? Remember to click on :star2: button.\n\n\n",
"bugtrack_url": null,
"license": "",
"summary": "A python tool for fitting primitives 3D shapes in point clouds using RANSAC algorithm",
"version": "0.6.0",
"split_keywords": [
"point-cloud",
"segmentation",
"ransac",
"cuboid",
"3d-reconstruction",
"cylinder",
"planes",
"open3d",
"plane-detection",
"ransac-algorithm"
],
"urls": [
{
"comment_text": "",
"digests": {
"md5": "d62a88831a0a2ac120e60361b68b7f9d",
"sha256": "d081abf704b97b5c087418202acac385872da60d7af08556e91faf290784443f"
},
"downloads": -1,
"filename": "pyransac3d-0.6.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "d62a88831a0a2ac120e60361b68b7f9d",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6",
"size": 18209,
"upload_time": "2021-07-24T17:27:45",
"upload_time_iso_8601": "2021-07-24T17:27:45.782141Z",
"url": "https://files.pythonhosted.org/packages/68/6b/a4cc6a28ac80d3bccef0bf869634ee21731e1a85e5ce508c41e1ba0c8437/pyransac3d-0.6.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "321b066e8fd06d82f2f3f28eda0a87da",
"sha256": "2ac153b2e94cf0326b2ebf88246f4be5f2a4fd57434e9d3a7d8ed15784843328"
},
"downloads": -1,
"filename": "pyransac3d-0.6.0.tar.gz",
"has_sig": false,
"md5_digest": "321b066e8fd06d82f2f3f28eda0a87da",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6",
"size": 11686,
"upload_time": "2021-07-24T17:27:47",
"upload_time_iso_8601": "2021-07-24T17:27:47.827859Z",
"url": "https://files.pythonhosted.org/packages/4d/14/5a832a068aea13656c3b4155544d79c5e7d68b7bb8b539bac5a57abefae0/pyransac3d-0.6.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2021-07-24 17:27:47",
"github": true,
"gitlab": false,
"bitbucket": false,
"github_user": "leomariga",
"github_project": "pyRANSAC-3D",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [
{
"name": "numpy",
"specs": []
}
],
"lcname": "pyransac3d"
}