- 23 Jul, 2018 2 commits
-
-
David Flynn authored
-
David Flynn authored
-
- 29 Jun, 2018 1 commit
-
-
David Flynn authored
The original integration of IDCM implemented only the parent based eligibility check of m42239 and erroneously omitted the six-neighbour check. This commit adds the six-neighbour check, making use of the neighbour calculation from m42239 neighbour contextualised coding of occupancy.
-
- 12 Jun, 2018 1 commit
-
-
David Flynn authored
This commit fixes a null pointer dereference in cases where no reconstructed point cloud output is specified.
-
- 08 Jun, 2018 2 commits
-
-
David Flynn authored
-
David Flynn authored
This commit makes gen-cfg understand a pcerrorflag value on a per test category basis in the same way as enc|decflags.
-
- 05 Jun, 2018 19 commits
-
-
David Flynn authored
-
David Flynn authored
This commit updates the master configuration files to support: - new test conditions for cat3 tests - existing conditions for cat1 tests (for use by tmc13) - updates enc/decflags to use recommended forms - integrates pcerror flags (per condition / sequence) - adds sequence databases describing source files, and source parameters that may be used by other scripts. The ctc-category-map.csv file has been removed -- a new version can be provided if necessary.
-
David Flynn authored
If there is an issue running one of the tmc1 blocks, terminate the encoding immediately and report the error.
-
David Flynn authored
This commit aims to reduce te amount of copy+paste code used to support the three different geometry coding modes by unifying them into a single flow.
-
David Flynn authored
This commit adds a DecoderParameters struct to reduce the overhead of adding extra parameters.
-
David Flynn authored
This commit introduces signalling for geometryCodecType in the bitstream headers in order to allow the decoder to be more easily slaved to the bitstream -- ie, to avoid needing to configure a special decoding mode.
-
David Flynn authored
This commit aims to reduce the overload on the --mode option and to restore it to the previous encode/decode functionality. To this end, a new option (--geometryCodec=...) is added that selects the geometry codec. Version v1.0 use of --mode=... is supported.
-
David Flynn authored
This commit adds a helper to add / remove colour and reflectance attributes in a single shot.
-
David Flynn authored
This commit introduces PCCTMC3Encoder3Parameters::getAttrParams(...), a helper to reduce the clutter in searching for attributes to code.
-
David Flynn authored
Little is gained from the return type checks, it mostly serves to clutter the code.
-
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.
-
David Flynn authored
Rather than coding all syntax elements for both transform types irrespective of the in-use type, this commit codes only those that are necessary for a given transform type.
-
This commit introduces the rahtLeafDecimationDepth parameter to allow chroma sub-sampling by decimating the coefficients in the bottom n levels of the tree. The default value of 3 provides chroma sub-sampling by a factor of 2 in each dimension.
-
This commit ports the Region Adaptive Hierarchical Transform for attribute coding with colour and reflectance variants.
-
This commit reorganises the attribute coders to allow integration of the RAHT variant.
-
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.
-
David Flynn authored
-
David Flynn authored
-
- 23 May, 2018 5 commits
-
-
David Flynn authored
Since the generated config files include a reference to the source file, this commit also regenerates the config.
-
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.
-
David Flynn authored
scripts/Makefile.tmc13-step provides example usage on how to run the codec to encode an input ply file.
-
David Flynn authored
-
David Flynn authored
To update the generated config files, run the following: $ cd cfg $ ../scripts/gen-cfg.sh
-
- 17 May, 2018 1 commit
-
-
When coding attribute prediction deltas, this commit implements a scheme to code the first and subsequent attribute components using each: - one 65-ary contexts to code a delta prefix - one binary context to code remainder values This replaces the previous scheme using: - one n-ary (max 2048) context to code a delta prefix (first comp.) - one binary context to code remainder values (first comp.) - 512 n-ary (max 2048) contexts to code a delta prefix (subsequent comp.) - 512 binary contexts to code remainder values (subsequent comp.) Extracted-from: http://wg11.sc29.org/svn/repos/MPEG-I/Part5-PointCloudCompression/CE/CE0/CE0.1/trunk@1357 Reintegrated-by:
<dflynn@blackberry.com>
-
- 16 May, 2018 4 commits
-
-
This commit uses a constant (per attribute) number of neighbours in point attribute prediction, replacing a method where the encoder searches for an optimal number and signals this on a per point basis. Extracted-from: http://wg11.sc29.org/svn/repos/MPEG-I/Part5-PointCloudCompression/CE/CE0/CE0.1/trunk@1357 Reintegrated-by:
<dflynn@blackberry.com>
-
This commit reduces the number of nearest neighbours used in attribute prediction to 4 from 8 in order to reduce memory usage. Extracted-from: http://wg11.sc29.org/svn/repos/MPEG-I/Part5-PointCloudCompression/CE/CE0/CE0.1/trunk@1357 Reintegrated-by:
<dflynn@blackberry.com>
-
This commit removes the ability to control the quantization dead-zone parameters since they have always been identical to the step size. Rather than hard-coding the dead-zone size parameter to be the same as the step size, this commit: - Sets the dead-zone to be ±(2 * stepsize / 3) rather than ±stepsize - Does not narrow the interval following the dead-zone. Extracted-from: http://wg11.sc29.org/svn/repos/MPEG-I/Part5-PointCloudCompression/CE/CE0/CE0.1/trunk@1357 Reintegrated-by:
<dflynn@blackberry.com>
-
This commit fixes a syntax issue where attribute quantisation step sizes greater than 2^{16}-1 could not be correctly represented. Extracted-from: http://wg11.sc29.org/svn/repos/MPEG-I/Part5-PointCloudCompression/CE/CE0/CE0.1/trunk@1357 Reintegrated-by:
<dflynn@blackberry.com>
-
- 11 May, 2018 2 commits
-
-
This commit eliminates the blending of point attribute values during the attribute transfer process used in geometry quantisation by forcing the blending weight to be 0|1 (m42141). m42538 also recommends to disable the bounded search of the closest attribute from the contributing set by setting searchRange=0. This is reflected by a change to the software defaults and configuration.
-
This commit fixes an issue with source sequences that contain 16-bit reflectance data, which may be clipped to 8-bit ranges during attribute transfer (recolouring) following geometry quantisation.
-
- 10 May, 2018 3 commits
-
-
David Flynn authored
-
David Flynn authored
This commit provides an implementation of m42239, permitting early coding termination of sub-trees that contain few points: - the so-called IDCM feature uses an eligibility criteria prior to permitting an encoder mode decision. - the feature may be controlled via the command line / config file using the --inferredDirectCodingMode=1|0 option
-
David Flynn authored
This commit provides an implementation of m42238 to code occupancy: - a node's child occupancy is contextualised based on the adjacent neighbours of the parent node. - when an isolated node is occupied by only a single child, the sub-node address [0,7] is directly coded instead of the 8-bit occupancy word. - collection of neighbour occupancy is performed using a scatter/ gather operation upon the insertion of each child node into the fifo queue. - the feature may be controlled via the command line / config file using the --neighbourContextualisation=1|0 option
-