mauriceqch / pcc_geo_cnn_v2

Improved Deep Point Cloud Geometry Compression
MIT License
65 stars 8 forks source link

pc_error software update #7

Open VMohinder opened 3 years ago

VMohinder commented 3 years ago

pc_error software has been updated. There were some bug-fixes. Current version is 0.13.5.

In this newer version, --resolution, --neighborsProc and --dropdups use an "=" between the parameter and its value. See help below.

In the current pcc_geo_cnn_v2, it's assumed that there is an space instead of an "=".

In case the software gets updated, it would be nice to have it compatible with pc_error 0.13.5.

  #####################################################################
  #                                                                   #
  #  The parsing options process have been updated to uniformize      #
  #  the PCC softwares and use: dependencies/program-options-lite.    #
  #  This library defined a parsing process a little different than   #
  #  the Boost library, previously used.                              #
  #                                                                   #
  #  The command line options must be updated and:                    #
  #    * the short options without parameters must be                 #
  #      updated and now take an argument: ( "-c" => "-c 1")          #
  #    * the long options are required to use the "--option=value"    #
  #      form, rather than the previous "--option value" form.        #
  #                                                                   #
  #####################################################################

Options: 
        --help=0            This help text
  -a,   --fileA=""          Input file 1, original version
  -b,   --fileB=""          Input file 2, processed version
  -n,   --inputNorm=""      File name to import the normals of original point
                            cloud, if different from original file 1n
  -s,   --singlePass=0      Force running a single pass, where the loop is
                            over the original point cloud
  -d,   --hausdorff=0       Send the Haursdorff metric as well
  -c,   --color=0           Check color distortion as well
  -l,   --lidar=0           Check lidar reflectance as well
  -r,   --resolution=0      Specify the intrinsic resolution
        --dropdups=2        0(detect), 1(drop), 2(average) subsequent points
                            with same coordinates
        --neighborsProc=1   0(undefined), 1(average), 2(weighted average),
                            3(min), 4(max) neighbors with same geometric
                            distance
        --averageNormals=1  0(undefined), 1(average normal based on neighbors
                            with same geometric distance)
        --mseSpace=1        Colour space used for PSNR calculation
                            0: none (identity) 1: ITU-R BT.709 8: YCgCo-R
        --nbThreads=1       Number of threads used for parallel processing

Example: 
   ./test/pc_error \
          --fileA=./loot/loot_vox10_1000.ply \
          --fileB=./S23C2AIR01_loot_dec_1000.ply \
          --inputNorm=./loot/loot_vox10_1000_n.ply \
          --color=1 \
          --resolution=1023
VMohinder commented 3 years ago

Apparently this helps for now:

pcerror_cfg_params = [''.join(map(str, [f'--{k}=', str(v)])) for k, v in pcerror_cfg.items()]
pcerror_cfg_params = [' '.join(map(str, pcerror_cfg_params))]

#pcerror_cfg_params = flatten(pcerror_cfg_params)        
mauriceqch commented 3 years ago

Thank you!

I'll leave this issue open for now to serve as information and will take this into account for future updates.