@pixano/graphics-3d

Pixano graphics-3d module


Keywords
annotation, annotation-tool, annotations, bounding-box, computer-vision, cuboid, deep-learning, detection, image-annotation, image-labeling, instance-segmentation, keypoints, panoptic-segmentation, point-cloud, point-cloud-labeling, polygon, semantic-segmentation, video-annotation, video-labeling, web-components
License
CECILL-C
Install
npm install @pixano/graphics-3d@0.7.0

Documentation

Pixano

Pixano Elements

License Live Demo Published on npm Node.js CI

Alt text

Pixano Elements - Library of web components dedicated to data annotation tasks. A complete and ready-to-use annotation application is available at https://github.com/pixano/pixano-app.

IMPORTANT: The Pixano Web Components are a work in progress and subject to major changes until 1.0 release.

Playcode demo (smart-segmentation, cuboid, rectangle, smart-rectangle)

Website demos

Features video

Automatic build tests on Ubuntu (latest) and node version 10, 12, 14.

Table of content

Components overview

The Pixano Elements are divided into packages. Each package can be installed independantly from NPM using the following command:

npm install @pixano/graphics-2d

Each package can contain multiple web components which are regrouped by affinity.

Component Status Demo
<pxn-rectangle> Published on npm demo
<pxn-polygon> Published on npm demo
<pxn-segmentation> Published on npm demo
<pxn-keypoints> Published on npm demo
<pxn-smart-rectangle> Published on npm demo
<pxn-cuboid-editor> Published on npm demo

Requirements

Pixano requires WebGL to be activated in your browser. If you see the following error in you console WebGL unsupported in this browser, please activate it.

For development, you will only need Node.js installed in your environement.

  • Node installation on Windows

    Just go on official Node.js website and download the installer. Also, be sure to have git available in your PATH, npm might need it (You can find git here).

  • Node installation on Ubuntu

    You can install nodejs and npm easily with apt install, just run the following commands.

    sudo apt install nodejs
    sudo apt install npm

    Or install it with snap: sudo snap install node

  • Other Operating Systems

    You can find more information about the installation on the official Node.js website and the official NPM website.

If the installation was successful, you should be able to run the following command.

node --version
# v8.11.3

npm --version
# 6.10.0

note about npm version

If you need to install a specific version of npm, you can use the following command line:

npm install -g npm@6.10.0

If you encounter "EACCES: permission denied" error message, please follow this guide.

Build and run the overall demo

An online serverless demo is available on our dedicated website.

If you want to build the latests version, it's easy:

git clone https://github.com/pixano/pixano-elements.git
cd pixano-elements
npm run deps
npm run build
npx serve demo

Documentation

📚 Check out the TypeDoc documentation. Each package's usage and API is also documented:

You can also try the demos on our website.

Contributing

Clone and setup the repo:

git clone https://github.com/pixano/pixano-elements.git
cd pixano-elements
npm run deps
npm run build

Run the demo locally:

npx serve demo

This demo takes your local modifications into account, thanks to a bootstrap step.

After some modifications, test them by rebuilding:

npm run build
npx serve demo

If you modified the dependencies, you better clean the project before rebuilding:

npm run clearall
npm run deps
npm run build
npx serve demo

Getting started

To create a new component, check our tutorial.

Please follow our coding guidelines for your contributions.

Pull request

Starting from scratch :

# 1. Start by cloning the original repository
git clone https://github.com/pixano/pixano-elements.git
# 2. Fork the repo (Fork button at https://github.com/pixano/pixano-elements) to your personal github
# Then configure the git remote for the fork ($MY_ACCOUNT is your personal github)
git remote add upstream https://github.com/$MY_ACCOUNT/pixano-elements.git
git fetch upstream
# 3. Create a new branch for dedicated bug fix or new feature
git checkout -b feature-xyz upstream/master
# 4. Do your changes in feature-xyz branch :)
git commit -a -m "Add xyz feature"
git push -u upstream feature-xyz
# Then make sure your branch is up to date with the original repository
git merge origin/master
# 5. Then in the browser navigate to the original URL of the original pixano-elements repo
# Click on “Create Pull Request”

From an existing clone with many changes (whether you want to publish all or only one of the changes) :

# 1. Instead of making a new clone, use your existing one and add two upsteams:
# One for your fork and one for the original repository:
git remote add upstream-fork https://github.com/$MY_ACCOUNT/pixano-elements.git
git remote add upstream-origin https://github.com/pixano/pixano-elements.git
# 2. Create a new branch for dedicated bug fix or new feature
git checkout -b feature-xyz upstream-fork/master
# 3. Cherry pick from commit from your enriched branch (replace by your targeted commit)
# Or merge all if you want to publish everything
git cherry-pick 52cd7ez # or git merge my_existing_branch
git push -u upstream-fork feature-xyz
# 4. Make sure you're up-to-date with you upstream-origin
git merge upstream-origin/master
# 5. Create pull request like described above

Change log

Releases

License

Pixano is released under the CeCILL-C license, a free software license adapted to both international and French legal matters that is fully compatible with the FSF's GNU/LGPL license.