Code Monkey home page Code Monkey logo

masonry-cc's Introduction

Intro

As part of the Historic Digital Survey (HDS) research work, we have developed the Masonry Segmentation CloudCompare Plugin, which is a plugin for CloudCompare that enables the segmentation of dense point clouds (principally from laser scanning) of masonry structures into their individual stones.

The current version of the plugin focuses on rubble masonry (and this also leads to the segmentation of mortar regions) for "straight" walls (i.e. without significant curvature). A future version shall also enable the segmentation of ashlar masonry and of walls with designed curvature (e.g. cyclindrical towers). The plugin contains two tools: one is for the automated segmentation of the point cloud into the wall's constitutive stones. The other one is to conduct this process manually either from scratch or (most commonly) to correct the errors of the automated tool (it's hard to create a perfect tool!).

Download

Currently, the plugin is actually not made available as just a plugin .dll that can be added to already installed versions of CloudCompare. Instead, we have packaged the plugin (actually there are two plugins; one for each tool) and CloudCompare together in a standalone Windows 10 64bit application (may work in Windows 8 as well). You only need to download the latest version available in the Releases section, unzip it and launch the CloudCompare executable it contains. The folder also contains a detailed manual explaining how to use the plugin. As per the requirements of the GPLv2 license, the source code of our plugin is freely available, upon request.

A precompiled version of CloudCompare with the plugins (x64 for Windows) is available in the Release section of this repository.

Test Dataset

Some test datasets are available at https://doi.org/10.7488/ds/2892 (University of Edinburgh's DataShare site).

Feedback and Acknowledgement

For any feedback about the plugin, please contact Frédéric Bosché at [email protected].

Furthermore, if you have used this plugin for work that is subsequently published, please acknowledge the plugin by citing one of the following publications (or ideally both):

  • Valero, E., Bosché, F., Forster, A., M'Beirick, I., Wilson, L., Turmel, A. & Hyslop, E. (2019), "Development of a novel open tool for the segmentation of 3D point clouds of masonry walls", 14th International Congress on the Deterioration and Conservation of Stone, STTONE 2020, Germany. PDF

  • Valero, E., Bosché, F. & Forster, A., (2018), "Automatic Segmentation of 3D Point Clouds of Rubble Masonry Walls, and its Application to Building Surveying, Repair and Maintenance", Automation in Construction, Vol. 96, pp. 29-39, doi:10.1016/j.autcon.2018.08.018. PDF | web

  • Valero, E, Bosché, F. (2020). Masonry segmentation plugin for CloudCompare, [software]. Cyberbuild Lab. The University of Edinburgh. doi:10.7488/ds/2892. web

Contributors and our own Acknowledgements

This plugin is an output of the Historic Digital Survey (HDS) research project that has been running for a number of years as a close collaboration between:

  • Dr Enrique Valero and Dr Frédéric Bosché from the University of Edinburgh;
  • Dr Alan Forster from Heriot-Watt University; and
  • Dr Lyn Wilson, Dr Aurélie Turmel and Dr Ewan Hyslop from Historic Environment Scotland (HES)

We would particularly like to acknowledge the funding provided by HES.

We would also like to acknowledge the contributions of summer interns Ms Camille Renier and Mr Ismael M'Beirick as well as the ERASMUS programme that supported their internships.

masonry-cc's People

Contributors

dgirardeau avatar fbosche avatar kenomo avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

masonry-cc's Issues

Division by Zero error

Auto segmentation plugin testing
After adding color to my random test file to get past issue the missing RGB issue, there is an unhandled exception for division by zero

image

occurs after this log statement
image

I suspect one of these 2 divisions
image

Sorry for not being more detailed, I am not compiling his plugin yet, just testing the version included with CC so I don't have the debug symbols available.

Does color get used?

Using the test data linked to in the readme I tried the plugin with default settings for automatic segmentation on two copies of the same test data, but the second copy I set all the points to the same color (edit/colors/set Unique).

I got identical results for both versions with and without colors, for all 3 datasets provided

Some feedbacks

As the Masonry Segmentation plugin seems quite promising, I decided to try it.

Here some feedback on it:

  • the plugin works on point clouds oriented along the front view but it is not indicated in the user guide.
    On another hand, the point clouds usually used for masonry study (face of a building) are indeed oriented vertically but not necessarily parallel to the front view. So, you have to rotate tour data to align them with the front view and after the use of the plugin, rotate back.
    It is not a big deal, I set up an excel file that estimates the right rotation angle. But if a tool similar to the ”level tool” but orienting the front view instead could be very useful for this operation (and for the cloud inspection in general).

  • My data are georeferenced and scaled. And I noticed that the results of the use of the plugin are quite bulky/pixelized. To correct this problem and have cleaner and more accurate results, I noticed that I had to increase the scale of my data using the “multiply/scale” edition and scale back to the original one after the use of the plugin.
    It is not a big deal but the scale back operation of the polylines produced by the plugin cannot be done with cloud compare and I have to use another software to do it. During this operation I lose the georeferencing of my data.

Eventually, your plugin is quite effective. Thank you.

AA

No logging when installed in program files

Due to UAP when running this plugin from the standard install location no logging can take place unless running as an administrator.

Should probably output to both a custom log file and the ccLog, it will make getting feedback easier.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.