Coder Social home page Coder Social logo

uniquant's Introduction

UniQuant

A header-only library which allows (un)quantifying efficiently unorganized indexed unit vector sets in 3D.

This is the updated C++ reference implementation of the paper:

Fast Lossy Compression of 3D Unit Vector Sets. Sylvain Rousseau and Tamy Boubekeur. SIGGRAPH Asia 2017 Technical Briefs (SA '17). ACM, New York, NY, USA, Article 23, 4 pages. DOI: https://doi.org/10.1145/3145749.3149436

The demonstrator uses the Spherical Fibonacci point set or the Octahedral quantization as quantization method, but can be used with any existing quantization. This is not the exact same version of the source code that is used to measure performance for the corresponding paper. Performance might have been slightly affected during refactoring.

Copyright(C) 2017 - 2019 Sylvain Rousseau and Tamy Boubekeur

All rights reserved.

Release Notes

Version 2.0 (June 2019)

  • Added a new grouping strategy (based on spherical fibonacci, with more precise quantization but slower)
  • Added more quantization method (Octahedral quantization)

Version 1.0

Initial code publication.

Building and Running

This program uses CMake. it has been tested on Linux (Ubuntu 16.04, gcc 7.2) and on Windows (Visual Studio 2017) External libraries are included in the repository, the example is using OpenMP for parallelization. Any compiler that supports C++14 should be able to compile this project without troubles.

Linux

The source code was tested under Ubuntu 16.04 using gcc 7.2. To build the example on Linux, go to the directory containing this README.md file, then:

mkdir build
cd build
cmake ..
make

Then, you can simply run the example:

./example

Windows

On Visual Studio 2017, open the UniQuant folder, right-click on the CMakeLists.txt file and select build>example. You can then run the example.

Project page

The paper and additional resources can be found on the project page

Citation

Please cite the following paper in case you are using this code:

Fast Lossy Compression of 3D Unit Vector Sets. Sylvain Rousseau and Tamy Boubekeur. SIGGRAPH Asia 2017 Technical Briefs (SA '17). ACM, New York, NY, USA, Article 23, 4 pages. DOI: https://doi.org/10.1145/3145749.3149436

Authors:

Licence

This project is licensed under the MIT license - see the LICENSE file for details.

uniquant's People

Contributors

syrousseau avatar superboubek avatar

Stargazers

 avatar Vyacheslav S. avatar JINGJUN TAO avatar Zhepei Wang avatar  avatar  avatar Roberto Capuano avatar Shawn Roach avatar Ivan Goremykin avatar zacklocx avatar Michael Sumner avatar Satoru NAKAJIMA avatar Aleksey Pindrus avatar Marshall Jones avatar Jesly Varghese avatar Albert Tavares de Almeida avatar veyvin avatar Jetro Lauha avatar  avatar Ganesh Belgur avatar Paul Vallet avatar  avatar Sean Bohan avatar Per Hugoson avatar Mykola Konyk avatar ZhiYong Huang avatar PeterLiou avatar Michael Williams avatar Jason Kozak avatar Ruby Lux avatar James Hurlbut avatar  avatar Chris Coster avatar X avatar Hui avatar yann le paih avatar Nghia Truong avatar Martin Weber avatar TÖRÖK Attila avatar Attila T. Áfra avatar ikrima avatar Everton Fernando Patitucci da Silva avatar Danila Ulyanov avatar Eric Engestrom avatar Nick Porcino avatar Dimitri Diakopoulos avatar

Watchers

Nick Porcino avatar ZhiYong Huang avatar  avatar  avatar

Forkers

peterzhousz

uniquant's Issues

quantize.h Missing?

Unless i'm overlooking something, it seems quantize.h (edit : actually externals/quantization/ ) is missing since the 2.0 update?

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.