Python package for converting segmented point cloud to trimmed semantic label masks as well as converting unsegmented semantic labels into a general point cloud. The point cloud to semantic conversion is achieved by drawing a circle with fixed diameter along the line given as points. Additionally the image dataset can be trimmed with or without padding to indicated size. The semantic to point cloud conversion is done before or after stitching of images (with or without padding) by selecting at each Z position all points maxima's and saving their 3D coordinates in array.
- Documentation: https://semantic-label-creator.readthedocs.io/en/latest/
- Convert 3D point cloud from (.am) files to semantic label mask
- Cut and stitch images/masks withe predefined settings
- Convert semantic label mask to 3D point cloud
To install Semantic_Label_Creator, run this command in your terminal:
$ pip install slcpy
This is the preferred method to install Semantic_Label_Creator, as it will always install the most recent stable release.
The sources for Semantic_Label_Creator can be downloaded from the Github repo.
You can either clone the public repository:
$ git clone git://github.com/SMLC-NYSBC/Semantic_Label_Creator
$ python setup.py install
or install is with pip:
$ pip install slcpy
To use Semantic_Label_Creator in a project:
from slcpy.main import slcpy _, label_mask = slcpy_semantic(dir_path, mask=Ture, pixel_size=None, circle_size=250, multi_layer=True, trim_mask=False, trim_size=64) point_could = slcpy_graph(dir_path=label_mask, filter_img=5, down_sampling=Ture)
or with terminal to build semantic label:
slcpy_semantic -dir C:/... -o C:/.../output string [-dir] Directory of the folder that contain data. [-default] os.getcwd() + r'\data' string [-o] Output directory to the folder where all of converted filed are stored. [-default] os.getcwd() + r'\data' + r'\output' bool [-m] Indicate if mask is included. [-default] True float [-px] Images pixel size in Angstrom. If None pixel size is calculated from image metadata [-default] None int [-d] Diameter in Angstrom of a circle that would be drawn a semantic mask [-default] 250 bool [-l] Specified if lines should have independent labeling [-default] False bool [-t] Specified if the input image has to be trim to fit labels. [-default] True int [-xy] Define size in pixels of output images. [-default] 64 int [-z] Define size in pixels of output images. [-default] 64 bool [-f] If True only images containing any data are saved. [-default] True int [-s] Overlay size used for trimming images. [-default] 25
with terminal to stitch images:
slcpy_stitch -dir C:/... -o C:/.../output -m True -pf mask -b True string [-dir] Directory of the folder that contain data. [-default] os.getcwd() + r'\data' string [-o] Output directory to the folder where all of converted filed are stored. [-default] os.getcwd() + r'\data' + r'\output' bool [-m] If True output images are treated as mask not images. [-default] True string [-pf] Additional prefix name for each image. [-default] None bool [-b] If True output stitched image as binary mask. [-default] True string [-dt] Output numpy data type. [-default] int8
with terminal to build point cloud from image:
slcpy_graph -dir C:/... -o C:/.../output -f 6 -c 3 -s cvs string [-dir] Directory of the folder that contain data. [-default] os.getcwd() + r'\data' string [-o] Output directory to the folder where all of converted filed are stored. [-default] os.getcwd() + r'\data' + r'\output' int [-f] Filter size matrix for denoising. [-default] 6 bool [-d] Down-sample point cloud by the factor of. [-default] True string [-s] Define format of output point cloud. [-default] all [-option] all, csv, numpy