generate_rd_plots

Author: Ismael Seidel Affiliation: Embedded Computing Lab (ECL), Federal University of Santa Catarina (UFSC)

Description:

This module generates rate-distortion plots, reports, and analysis tables for light field encoding experiments, visualizing codec performance across metrics.

generate_rd_plots_for_lf_and_metric(metric, lightfield, rd_plot_config, configuration_reader)[source]

Generate rate-distortion plot for a specific light field and quality metric.

Creates matplotlib-based R-D curves for all configured codecs at specified target bitrates, including anchor codec detection and plot customization.

Parameters:
  • metric (str) – Quality metric name to plot

  • lightfield (LightField) – Light field object for plotting

  • rd_plot_config (List[Dict[str, Any]]) – Plot configuration with output path and options

  • configuration_reader (ConfigurationReader) – Configuration reader with codec and quality settings

Returns:

None

Return type:

None

generate_rd_plots_for_lf(lightfield, rd_plot_config, configuration_reader)[source]

Generate all rate-distortion plots for a specific light field.

Creates R-D plots for all metrics configured in rd_plot_config.

Parameters:
  • lightfield (LightField) – Light field object

  • rd_plot_config (List[Dict[str, Any]]) – Plot configuration with metrics and output options

  • configuration_reader (ConfigurationReader) – Configuration reader

Returns:

None

Return type:

None

create_json(lightfield, rd_plot_config, configuration_reader)[source]

Generate JSON report with rate-distortion data for all codecs and metrics.

Creates detailed JSON files containing R-D values, metadata, and codec information organized by target bitrate and quality metric.

Parameters:
  • lightfield (LightField) – Light field object

  • rd_plot_config (List[Dict[str, Any]]) – Plot configuration

  • configuration_reader (ConfigurationReader) – Configuration reader

Returns:

None

Return type:

None

create_latex_tables(lightfield, rd_plot_config, configuration_reader)[source]

Generate LaTeX tables with rate-distortion results for documentation.

Creates formatted LaTeX tables with R-D data for all codecs and metrics, suitable for inclusion in research papers and technical documents.

Parameters:
  • lightfield (LightField) – Light field object

  • rd_plot_config (List[Dict[str, Any]]) – Plot configuration

  • configuration_reader (ConfigurationReader) – Configuration reader

Returns:

None

Return type:

None

main(configuration=None)[source]

Generate rate-distortion plots and reports for all light fields.

Orchestrates complete R-D visualization pipeline: 1. Generates R-D plots for all configured metrics 2. Creates JSON reports with detailed R-D data 3. Generates LaTeX tables for documentation 4. Computes Bjøntegaard-Delta (BD) rate analysis if configured

Usage: python generate_rd_plots.py <configuration.json>

Parameters:

configuration (ConfigurationReader) – Configuration reader (read from argv if None)

Returns:

None

Return type:

None