Hierarchical Minimum Rate Predictors (H-MRP)

Published: 16 December 2021| Version 1 | DOI: 10.17632/ktt4pgc6m4.1


Working implementation of the Hierarchical Minimum Rate Predictors (H-MRP), to be published in Signal Processing: Image Communication.


Steps to reproduce

Requirements A CMakeLists.txt file is provided to build the source code. The only requirements are a working CMake and C/C++ environment. How to use? - Create a sub folder to run CMake, example for linux: mkdir build cd build cmake ../ - The binary presents a help text when run: "IT - Leiria: Hierarchical Minimum Rate Predictors encmrp/decmrp version 1.1.0 (November 2021) usage: encmrp [options] infile outfile options: -J 2 * num Views dimensions (in pixels) [H W]* -K 2 * num Dimensions of the array of views [H W]* -L 2 * num Prediction order (Intra, Inter) [-1 1] -c str Hierarchical encoding configuration file* -R num Number of Random Access regions in {0, 2, 4, 5, 9} [0] -S num Number of reference SAIs [4] -T num Maximum reference SAI distance [8] -v Use disparity compensation -B 2 * num Set the block size and the maximum disparity for the disparity compensation [8 8] -s Use the current level causal SAI as reference -b num Bit depth [8] -E num Endianness: little-endian = 0, big-endian = 1. Default: little-endian -D num Distance between views [1] -M num Number of predictors [-1] -P num Precision of prediction coefficients (fractional bits) [6] -V num Number of probability models [16] -A num Accuracy of probability models [3] -I num Maximum number of iterations [100] -m Use MMSE predictors -h Use Huffman coding -f Fixed block-size for adaptive prediction -u Deactivate the histogram packing procedures -d Create extra debug output (coefficients, partitions, etc.) -r str Light field file format [SAI]*. Supported formats: MIA; --> Not yet implemented PVS; SAI. infile: Input file (must be in a raw YUV format) outfile: Output file Note: * stands for a mandatory option." - The MRP family encoders compress each image component separately. - Each component should be provided as a raw file, as LF re-arranged either as a pseudo-video sequence of SAIs or as an array of SAIs. - The configurations for the codec can be found on their associated publications. - An example of a hierarchical layers configuration file is provided in `hi-mrp-example.cfg`. - The following show some example on how to run H-MRP: # Encode each component separately, Y ./encmrp.exe -E 0 -K 13 13 -J 434 625 -c h-mrp-sai-13-raster-scalable-hl-4.cfg -S 2 -L 12 13 -D 1 -b 11 Bikes_LE_GRAY_Y.yuv Bikes_LE_GRAY_Y.mrp # Encode each component separately, U ./encmrp.exe -E 0 -K 13 13 -J 434 625 -c h-mrp-sai-13-raster-scalable-hl-4.cfg -S 2 -L 12 13 -D 1 -b 11 Bikes_LE_GRAY_U.yuv Bikes_LE_GRAY_U.mrp # Encode each component separately, V ./encmrp.exe -E 0 -K 13 13 -J 434 625 -c h-mrp-sai-13-raster-scalable-hl-4.cfg -S 2 -L 12 13 -D 1 -b 11 Bikes_LE_GRAY_V.yuv Bikes_LE_GRAY_V.mrp


Instituto de Telecomunicacoes, Universidade de Coimbra, Instituto Politecnico de Leiria


Image Compression, Data Compression, Signal Coding