https://github.com/GistNoesis/BrickRegistration Skip to content Sign up * Why GitHub? Features - + Mobile - + Actions - + Codespaces - + Packages - + Security - + Code review - + Issues - + Integrations - + GitHub Sponsors - + Customer stories- * Team * Enterprise * Explore + Explore GitHub - Learn and contribute + Topics - + Collections - + Trending - + Learning Lab - + Open source guides - Connect with others + The ReadME Project - + Events - + Community forum - + GitHub Education - + GitHub Stars program - * Marketplace * Pricing Plans - + Compare plans - + Contact Sales - + Education - [ ] [search-key] * # In this repository All GitHub | Jump to | * No suggested jump to results * # In this repository All GitHub | Jump to | * # In this user All GitHub | Jump to | * # In this repository All GitHub | Jump to | Sign in Sign up {{ message }} GistNoesis / BrickRegistration * Notifications * Star 66 * Fork 3 MIT License 66 stars 3 forks Star Notifications * Code * Issues 0 * Pull requests 1 * Actions * Projects 0 * Wiki * Security * Insights More * Code * Issues * Pull requests * Actions * Projects * Wiki * Security * Insights main Switch branches/tags [ ] Branches Tags Could not load branches Nothing to show {{ refName }} default View all branches Could not load tags Nothing to show {{ refName }} default View all tags 1 branch 0 tags Code Clone HTTPS GitHub CLI [https://github.com/G] Use Git or checkout with SVN using the web URL. [gh repo clone GistNo] Work fast with our official CLI. Learn more. * Open with GitHub Desktop * Download ZIP Launching GitHub Desktop If nothing happens, download GitHub Desktop and try again. Go back Launching GitHub Desktop If nothing happens, download GitHub Desktop and try again. Go back Launching Xcode If nothing happens, download Xcode and try again. Go back Launching Visual Studio Code Your codespace will open once ready. There was a problem preparing your codespace, please try again. Latest commit @unrealwill unrealwill Update README.md ... 98ca876 Jul 5, 2021 Update README.md 98ca876 Git stats * 6 commits Files Permalink Failed to load latest commit information. Type Name Latest commit message Commit time DemoRenderings Initial commit Jul 5, 2021 bin Initial commit Jul 5, 2021 lib/LDraw Initial commit Jul 5, 2021 LICENSE Initial commit Jul 5, 2021 README.md Update README.md Jul 5, 2021 _prototype.urdf Initial commit Jul 5, 2021 generateSTL.py Initial commit Jul 5, 2021 generateURDF.py Initial commit Jul 5, 2021 registration.py Initial commit Jul 5, 2021 renderer.py Initial commit Jul 5, 2021 View code README.md BrickRegistration Screenshot This project is a tool to generate synthetic 3d scenes for toying with bricks registration. The 3d models come from https://www.ldraw.org/library/updates/ complete.zip where they are available with a permissive licence This file is extracted into the repository I convert the model from ldraw format to stl : python3 generateSTL.py which under the hood call that is embedded https://github.com/kristov/ldraw2stl Then I convert the STL to the URDF : python3 generateURDF.py which under the hood use https://pypi.org/project/object2urdf/ (pip install object2urdf ) These two commands take ~30min and 6hours to run. The generateURDF use GPU and crash on some files if there is not enough memory (GTX 1080 Ti is OK) It successfully generates ~14000 urdf files provided that your machine is beefy enough. I have create a compressed 1.4GB legoSTLandURDF.tar.gz archive with them https://easyupload.io/h27vgz (This link will expire in 30 days) (I'll try to add a torrent link soon) You can download it here and extract it in the repository instead of having to run the above commands Once you have generated the urdfs you can run : python3 renderer.py It will produce some renderings in a folder called "Renderings", and useful segmentation information. You can edit the code and use GUI mode, if you just want to play with pybullet Once you have generated a few renderings you can run : python3 registration.py It will create a neural network, train it, and run it and do some clustering to identify the bricks. It is intended as a boiler plate to experiment with object recognition to get you started :) Only a mock network, on a mock dataset have currently been run so some bugs are probably hiding. More information is available inside the source files. Look at them. If you have an iphone you can try similar technology from https:// brickit.app/ This is a week-end project trying to replicate a technology ( https:/ /news.ycombinator.com/item?id=27693560 ) Dependencies : pybullet tensorflow2 scipy object2urdf hdbscan About No description, website, or topics provided. Resources Readme License MIT License Releases No releases published Packages 0 No packages published Contributors 2 * @unrealwill unrealwill * @GistNoesis GistNoesis Gist Noesis Languages * Python 60.0% * Perl 40.0% * (c) 2021 GitHub, Inc. * Terms * Privacy * Security * Status * Docs * Contact GitHub * Pricing * API * Training * Blog * About You can't perform that action at this time. You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.