- 05 Feb, 2019 1 commit
-
-
This replaces the previous floating point transform implementation with a fixed-point alternative with essentially identical compression performance.
-
- 14 Nov, 2018 1 commit
-
-
David Flynn authored
-
- 02 Nov, 2018 1 commit
-
-
David Flynn authored
-
- 31 Oct, 2018 10 commits
-
-
David Flynn authored
This commit provides an implementation of the entropy coding interface using the dirac (schroedinger) arithmetic codec. In order to handle any remaining m-ary symbols, a naïve unary binarisation is employed.
-
David Flynn authored
This commit adds an arithmetic codec interface class that allows a compile time choice of arithmetic codec implementation. Context types are renamed to support compile time selection, and existing support functions that were added to the third-party arithmetic codec are moved to the wrapper.
-
David Flynn authored
This commit provides a method to predict the child occupancy bits of a node based on the node's 26 neighbours. The prediction is used to contextualise coding of each occupancy bit. This tool requires the use of the occupancyAtlas for neighbour lookup. NB: a restriction in the current implementation requires that the atlas size is at most 8³. intra_pred_max_node_size_log2: 6
-
This commit provides an m-ary entropy coder based on a fixed-size dictionary with periodic updates, a cache of recently used symbols (updated using an LRU eviction policy), and a fallback direct binary coding of any unhandled symbols. NB: the proposed version used a context with a halving period (max_count) of 64 symbols. However, this conflicts with another adoption (512 symbols), and a wholesale replacement of the arithmetic codec and context model. To resolve the conflict, the existing halving period (128) is used.
-
This commit integrates a c++ trisoup codec, replacing the previous matlab implementation. The provided code has been reworked to avoid duplicating code, dead code, and operate with the current HLS.
-
David Flynn authored
This commit splits the handling of the geometry brick header and octree geometry coding. The encoder/decoder classes now take care of coding the header, while the geometry coder handles the geometry coding itself.
-
David Flynn authored
This commit moves method definitions out of a header file into a separate compilation unit.
-
David Flynn authored
This commit moves various constants from PCCTMC3Common.h to a new constants.h. Hard coded values of constants have been replaced with their symbolic name.
-
David Flynn authored
This commit moves method definitions out of a header file into a separate compilation unit.
-
David Flynn authored
The geometry coder is quite large, especially with trisoup and has no benefit to being a header only implementation. This commit moves the geometry octree coder out of the header files and into geometry_octree_{en,de}coder.cpp.
-
- 05 Sep, 2018 1 commit
-
-
David Flynn authored
-
- 03 Sep, 2018 1 commit
-
-
David Flynn authored
-
- 29 Aug, 2018 1 commit
-
-
David Flynn authored
-
- 20 Aug, 2018 3 commits
-
-
David Flynn authored
This commit rewrites the codec high-level syntax: - the bitstream is divided into "bricks" (akin to an AVC/HEVC slice/tile). - sequence, geometry and attribute parameter sets describe the coding parameters in use generally and for a specific brick. - marshalling the bitstream payloads to a file format is achieved using a type-length-value encoding scheme. Additionally, the triSoup bitstream scale and translation values have been unified with (replaced by) the octree counterparts. For compatibility, existing command line parameters continue to function as before. NB: this commit does not incorporate flexibility in the decoding order. The decoder requires the bitstream to be presented in a fixed order.
-
-
David Flynn authored
This commit removes the bundled Intel Threading Building Blocks library from the repository.
-
- 08 Jun, 2018 1 commit
-
-
David Flynn authored
-
- 05 Jun, 2018 4 commits
-
-
This commit does not add the triangle soup geometry compressor to TMC3, rather. Rather, it adds a means to call out to TMC1 binaries to perform the compression, integrate the results into the bitstream. Attribute compression is performed natively by the TMC13 codec.
-
This commit ports the Region Adaptive Hierarchical Transform for attribute coding with colour and reflectance variants.
-
David Flynn authored
In order to support multiple different attribute compression schemes, this commit moves the existing attribute compression code into a self-contained class.
-
David Flynn authored
In order to support multiple different attribute compression schemes, this commit moves the existing attribute compression code into a self-contained class.
-
- 23 May, 2018 1 commit
-
-
David Flynn authored
In order to avoid obscure broken builds when switching branches or otherwise adding/removing files, this commit removes the use of wild cards for source files in the tmc3 directory. To add files to or remove from the build, the tmc3/CMakeLists.txt must be modified, thereby permitting the build system to detect changes in the file list.
-
- 10 May, 2018 1 commit
-
-
David Flynn authored
-
- 09 May, 2018 1 commit
-
-
David Flynn authored
-
- 27 Feb, 2018 1 commit
-
-
David Flynn authored
git-svn-id: http://wg11.sc29.org/svn/repos/MPEG-I/Part5-PointCloudCompression/TM/TMC3/trunk@1341 94298a81-5874-47c9-aab8-bfb24faeed7f
-
- 20 Feb, 2018 1 commit
-
-
David Flynn authored
This commit changes the application's reporting of elapsed time to measure user time rather than wall time in order to reduce sources of noise in evaluating runtime. For output is now of the form: ``` Processing time (wall): 123.456 s Processing time (user): 123.456 s ``` git-svn-id: http://wg11.sc29.org/svn/repos/MPEG-I/Part5-PointCloudCompression/TM/TMC3/trunk@1329 94298a81-5874-47c9-aab8-bfb24faeed7f
-
- 17 Feb, 2018 1 commit
-
-
David Flynn authored
This commit replaces the previous command-line argument parsing with program-options-lite, which additionally serves as a simple config-file parser. A table based configuration of options provides in a single place option naming, help text, and default values. Side effects of this change are to: - adds further error checking for unknown arguments (warning only), parse failures, required options. - replace the default constructor of Parameters, PCCAttributeEncodeParamaters, and PCCAttributeEncodeParamaters with defaults in args handler - updates the type of Parameters::mode & ...::colorTransform to be more more descriptive. git-svn-id: http://wg11.sc29.org/svn/repos/MPEG-I/Part5-PointCloudCompression/TM/TMC3/trunk@1318 94298a81-5874-47c9-aab8-bfb24faeed7f
-
- 11 Dec, 2017 1 commit
-
-
Khaled Mammou authored
git-svn-id: http://wg11.sc29.org/svn/repos/MPEG-I/Part5-PointCloudCompression/TM/TMC3/trunk@1221 94298a81-5874-47c9-aab8-bfb24faeed7f
-