{ "cells": [ { "cell_type": "markdown", "id": "718d93fc", "metadata": {}, "source": [ "Parameter Tuning for TV-Regularized Abel Inversion\n", "==================================================\n", "\n", "This example demonstrates the use of\n", "[scico.ray.tune](../_autosummary/scico.ray.tune.rst) to tune\n", "parameters for the companion [example script](ct_abel_tv_admm.rst). The\n", "`ray.tune` class API is used in this example.\n", "\n", "This script is hard-coded to run on CPU only to avoid the large number of\n", "warnings that are emitted when GPU resources are requested but not\n", "available, and due to the difficulty of suppressing these warnings in a\n", "way that does not force use of the CPU only. To enable GPU usage, comment\n", "out the `os.environ` statements near the beginning of the script, and\n", "change the value of the \"gpu\" entry in the `resources` dict from 0 to 1.\n", "Note that two environment variables are set to suppress the warnings\n", "because `JAX_PLATFORMS` was intended to replace `JAX_PLATFORM_NAME` but\n", "this change has yet to be correctly implemented\n", "(see [google/jax#6805](https://github.com/google/jax/issues/6805) and\n", "[google/jax#10272](https://github.com/google/jax/pull/10272))." ] }, { "cell_type": "code", "execution_count": 1, "id": "1f56f0f0", "metadata": { "collapsed": false, "execution": { "iopub.execute_input": "2024-06-06T17:46:57.637068Z", "iopub.status.busy": "2024-06-06T17:46:57.636665Z", "iopub.status.idle": "2024-06-06T17:47:10.638318Z", "shell.execute_reply": "2024-06-06T17:47:10.636534Z" } }, "outputs": [], "source": [ "# This scico project Jupyter notebook has been automatically modified\n", "# to install the dependencies required for running it on Google Colab.\n", "# If you encounter any problems in running it, please open an issue at\n", "# https://github.com/lanl/scico-data/issues\n", "\n", "!pip install 'scico[examples] @ git+https://github.com/lanl/scico'\n", "\n", "# isort: off\n", "import os\n", "\n", "os.environ[\"JAX_PLATFORM_NAME\"] = \"cpu\"\n", "os.environ[\"JAX_PLATFORMS\"] = \"cpu\"\n", "\n", "import numpy as np\n", "\n", "import logging\n", "import ray\n", "\n", "ray.init(logging_level=logging.ERROR) # need to call init before jax import: ray-project/ray#44087\n", "\n", "import scico.numpy as snp\n", "from scico import functional, linop, loss, metric, plot\n", "from scico.examples import create_circular_phantom\n", "from scico.linop.xray.abel import AbelTransform\n", "from scico.optimize.admm import ADMM, LinearSubproblemSolver\n", "from scico.ray import tune\n", "plot.config_notebook_plotting()" ] }, { "cell_type": "markdown", "id": "a2ed613b", "metadata": {}, "source": [ "Create a ground truth image." ] }, { "cell_type": "code", "execution_count": 2, "id": "2f0106cf", "metadata": { "collapsed": false, "execution": { "iopub.execute_input": "2024-06-06T17:47:10.645867Z", "iopub.status.busy": "2024-06-06T17:47:10.645097Z", "iopub.status.idle": "2024-06-06T17:47:11.353907Z", "shell.execute_reply": "2024-06-06T17:47:11.352589Z" } }, "outputs": [], "source": [ "N = 256 # image size\n", "x_gt = create_circular_phantom((N, N), [0.4 * N, 0.2 * N, 0.1 * N], [1, 0, 0.5])" ] }, { "cell_type": "markdown", "id": "21be7616", "metadata": {}, "source": [ "Set up the forward operator and create a test measurement." ] }, { "cell_type": "code", "execution_count": 3, "id": "d0a1ac7e", "metadata": { "collapsed": false, "execution": { "iopub.execute_input": "2024-06-06T17:47:11.359772Z", "iopub.status.busy": "2024-06-06T17:47:11.359346Z", "iopub.status.idle": "2024-06-06T17:47:11.490750Z", "shell.execute_reply": "2024-06-06T17:47:11.489540Z" } }, "outputs": [], "source": [ "A = AbelTransform(x_gt.shape)\n", "y = A @ x_gt\n", "np.random.seed(12345)\n", "y = y + np.random.normal(size=y.shape).astype(np.float32)" ] }, { "cell_type": "markdown", "id": "15ddc559", "metadata": {}, "source": [ "Compute inverse Abel transform solution for use as initial solution." ] }, { "cell_type": "code", "execution_count": 4, "id": "06db934b", "metadata": { "collapsed": false, "execution": { "iopub.execute_input": "2024-06-06T17:47:11.496458Z", "iopub.status.busy": "2024-06-06T17:47:11.496012Z", "iopub.status.idle": "2024-06-06T17:47:11.722138Z", "shell.execute_reply": "2024-06-06T17:47:11.721241Z" } }, "outputs": [], "source": [ "x_inv = A.inverse(y)\n", "x0 = snp.clip(x_inv, 0.0, 1.0)" ] }, { "cell_type": "markdown", "id": "b81b7067", "metadata": {}, "source": [ "Define performance evaluation class." ] }, { "cell_type": "code", "execution_count": 5, "id": "40996688", "metadata": { "collapsed": false, "execution": { "iopub.execute_input": "2024-06-06T17:47:11.725684Z", "iopub.status.busy": "2024-06-06T17:47:11.725227Z", "iopub.status.idle": "2024-06-06T17:47:11.734319Z", "shell.execute_reply": "2024-06-06T17:47:11.733191Z" } }, "outputs": [], "source": [ "class Trainable(tune.Trainable):\n", " \"\"\"Parameter evaluation class.\"\"\"\n", "\n", " def setup(self, config, x_gt, x0, y):\n", " \"\"\"This method initializes a new parameter evaluation object. It\n", " is called once when a new parameter evaluation object is created.\n", " The `config` parameter is a dict of specific parameters for\n", " evaluation of a single parameter set (a pair of parameters in\n", " this case). The remaining parameters are objects that are passed\n", " to the evaluation function via the ray object store.\n", " \"\"\"\n", " # Get arrays passed by tune call.\n", " self.x_gt, self.x0, self.y = snp.array(x_gt), snp.array(x0), snp.array(y)\n", " # Set up problem to be solved.\n", " self.A = AbelTransform(self.x_gt.shape)\n", " self.f = loss.SquaredL2Loss(y=self.y, A=self.A)\n", " self.C = linop.FiniteDifference(input_shape=self.x_gt.shape)\n", " self.reset_config(config)\n", "\n", " def reset_config(self, config):\n", " \"\"\"This method is only required when `scico.ray.tune.Tuner` is\n", " initialized with `reuse_actors` set to ``True`` (the default). In\n", " this case, a set of parameter evaluation processes and\n", " corresponding objects are created once (including initialization\n", " via a call to the `setup` method), and this method is called when\n", " switching to evaluation of a different parameter configuration.\n", " If `reuse_actors` is set to ``False``, then a new process and\n", " object are created for each parameter configuration, and this\n", " method is not used.\n", " \"\"\"\n", " # Extract solver parameters from config dict.\n", " λ, ρ = config[\"lambda\"], config[\"rho\"]\n", " # Set up parameter-dependent functional.\n", " g = λ * functional.L1Norm()\n", " # Define solver.\n", " cg_tol = 1e-4\n", " cg_maxiter = 25\n", " self.solver = ADMM(\n", " f=self.f,\n", " g_list=[g],\n", " C_list=[self.C],\n", " rho_list=[ρ],\n", " x0=self.x0,\n", " maxiter=10,\n", " subproblem_solver=LinearSubproblemSolver(\n", " cg_kwargs={\"tol\": cg_tol, \"maxiter\": cg_maxiter}\n", " ),\n", " )\n", " return True\n", "\n", " def step(self):\n", " \"\"\"This method is called for each step in the evaluation of a\n", " single parameter configuration. The maximum number of times it\n", " can be called is controlled by the `num_iterations` parameter\n", " in the initialization of a `scico.ray.tune.Tuner` object.\n", " \"\"\"\n", " # Perform 10 solver steps for every ray.tune step\n", " x_tv = snp.clip(self.solver.solve(), 0.0, 1.0)\n", " return {\"psnr\": float(metric.psnr(self.x_gt, x_tv))}" ] }, { "cell_type": "markdown", "id": "a410ca05", "metadata": {}, "source": [ "Define parameter search space and resources per trial." ] }, { "cell_type": "code", "execution_count": 6, "id": "0d746bcf", "metadata": { "collapsed": false, "execution": { "iopub.execute_input": "2024-06-06T17:47:11.737868Z", "iopub.status.busy": "2024-06-06T17:47:11.737692Z", "iopub.status.idle": "2024-06-06T17:47:11.741835Z", "shell.execute_reply": "2024-06-06T17:47:11.741079Z" } }, "outputs": [], "source": [ "config = {\"lambda\": tune.loguniform(1e0, 1e2), \"rho\": tune.loguniform(1e1, 1e3)}\n", "resources = {\"gpu\": 0, \"cpu\": 1} # gpus per trial, cpus per trial" ] }, { "cell_type": "markdown", "id": "a1496f68", "metadata": {}, "source": [ "Run parameter search." ] }, { "cell_type": "code", "execution_count": 7, "id": "6421e6e9", "metadata": { "collapsed": false, "execution": { "iopub.execute_input": "2024-06-06T17:47:11.744812Z", "iopub.status.busy": "2024-06-06T17:47:11.744460Z", "iopub.status.idle": "2024-06-06T17:48:22.061576Z", "shell.execute_reply": "2024-06-06T17:48:22.059637Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 0 \r", "P: 1 R: 0 T: 0 \r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 0 \r", "P: 1 R: 0 T: 0 \r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 0 \r", "P: 1 R: 0 T: 0 \r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 0 \r", "P: 1 R: 0 T: 0 \r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 0 \r", "P: 1 R: 0 T: 0 \r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 0 \r", "P: 1 R: 0 T: 0 \r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 0 \r", "P: 1 R: 0 T: 0 \r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 0 \r", "P: 1 R: 0 T: 0 \r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 0 \r", "P: 1 R: 0 T: 0 \r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 0 \r", "P: 1 R: 0 T: 0 \r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 0 \r", "P: 1 R: 0 T: 0 \r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 0 \r", "P: 1 R: 0 T: 0 \r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 0 \r", "P: 1 R: 0 T: 0 \r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 0 \r", "P: 1 R: 0 T: 0 \r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 0 \r", "P: 1 R: 0 T: 0 \r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 0 \r", "P: 1 R: 0 T: 0 \r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 0 \r", "P: 1 R: 0 T: 0 \r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 0 \r", "P: 1 R: 0 T: 0 \r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 0 \r", "P: 1 R: 0 T: 0 \r", "P: 1 R: 0 T: 0 \r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 0 \r", "P: 1 R: 0 T: 0 \r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 0 \r", "P: 1 R: 0 T: 0 \r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 0 \r", "P: 1 R: 0 T: 0 \r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 0 \r", "P: 1 R: 0 T: 0 \r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 0 \r", "P: 1 R: 0 T: 0 \r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 0 \r", "P: 1 R: 0 T: 0 \r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 0 \r", "P: 0 R: 1 T: 0 \r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 0 \r", "P: 1 R: 1 T: 0 \r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 0 \r", "P: 1 R: 1 T: 0 \r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 0 \r", "P: 1 R: 1 T: 0 \r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 0 \r", "P: 1 R: 1 T: 0 \r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 0 \r", "P: 1 R: 1 T: 0 psnr: 2.91e+01 at lambda: 4.00e+00, rho: 4.90e+01\r", "P: 1 R: 1 T: 0 psnr: 2.91e+01 at lambda: 4.00e+00, rho: 4.90e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 0 psnr: 3.00e+01 at lambda: 4.00e+00, rho: 4.90e+01\r", "P: 1 R: 1 T: 0 psnr: 3.01e+01 at lambda: 4.00e+00, rho: 4.90e+01\r", "P: 1 R: 1 T: 0 psnr: 3.08e+01 at lambda: 4.00e+00, rho: 4.90e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 0 psnr: 3.08e+01 at lambda: 4.00e+00, rho: 4.90e+01\r", "P: 1 R: 1 T: 0 psnr: 3.16e+01 at lambda: 4.00e+00, rho: 4.90e+01\r", "P: 1 R: 1 T: 0 psnr: 3.18e+01 at lambda: 4.00e+00, rho: 4.90e+01\r", "P: 1 R: 1 T: 0 psnr: 3.18e+01 at lambda: 4.00e+00, rho: 4.90e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 0 psnr: 3.22e+01 at lambda: 4.00e+00, rho: 4.90e+01\r", "P: 1 R: 1 T: 0 psnr: 3.25e+01 at lambda: 4.00e+00, rho: 4.90e+01\r", "P: 1 R: 1 T: 0 psnr: 3.25e+01 at lambda: 4.00e+00, rho: 4.90e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 1 psnr: 3.31e+01 at lambda: 4.00e+00, rho: 4.90e+01\r", "P: 0 R: 1 T: 1 psnr: 3.31e+01 at lambda: 4.00e+00, rho: 4.90e+01\r", "P: 1 R: 1 T: 1 psnr: 3.31e+01 at lambda: 4.00e+00, rho: 4.90e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 1 psnr: 3.31e+01 at lambda: 4.00e+00, rho: 4.90e+01\r", "P: 1 R: 1 T: 1 psnr: 3.49e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 1 psnr: 3.49e+01 at lambda: 3.20e+01, rho: 4.69e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 1 psnr: 3.71e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 1 psnr: 3.71e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 1 psnr: 3.83e+01 at lambda: 3.20e+01, rho: 4.69e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 1 psnr: 3.83e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 1 psnr: 3.88e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 1 psnr: 3.90e+01 at lambda: 3.20e+01, rho: 4.69e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 1 psnr: 3.90e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 1 psnr: 3.94e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 1 psnr: 3.94e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 1 psnr: 3.95e+01 at lambda: 3.20e+01, rho: 4.69e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 1 psnr: 3.95e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 1 psnr: 3.95e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 1 psnr: 3.95e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 1 psnr: 3.95e+01 at lambda: 3.20e+01, rho: 4.69e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 1 psnr: 3.95e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 0 T: 2 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 0 R: 1 T: 2 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 2 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 2 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 0 T: 3 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 0 R: 1 T: 3 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 3 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 3 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 3 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 3 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 3 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 3 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 3 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 3 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 3 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 3 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 3 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 3 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 3 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 3 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 0 T: 4 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 0 R: 1 T: 4 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 4 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 5 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 0 R: 1 T: 5 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 5 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 6 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 0 R: 1 T: 6 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 6 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 6 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 6 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 6 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 6 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 6 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 6 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 6 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 6 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 6 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 0 T: 7 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 0 R: 1 T: 7 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 7 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 8 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 0 R: 1 T: 8 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 8 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 8 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 0 T: 9 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 0 R: 1 T: 9 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 9 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 9 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 0 T: 10 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 0 R: 1 T: 10 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 10 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 11 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 0 R: 1 T: 11 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 11 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 11 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 0 T: 12 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 0 R: 1 T: 12 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 12 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 12 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 0 T: 13 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 0 R: 1 T: 13 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 13 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 14 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 0 R: 1 T: 14 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 14 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 14 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 0 T: 15 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 0 R: 1 T: 15 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 15 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 15 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 0 T: 16 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 0 R: 1 T: 16 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 16 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 17 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 0 R: 1 T: 17 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 17 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 17 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 0 T: 18 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 0 R: 1 T: 18 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 18 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 19 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 0 R: 1 T: 19 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 19 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 20 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 0 R: 1 T: 20 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 20 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 20 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 20 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 20 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 20 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 20 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 20 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 20 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 20 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 20 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 20 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 20 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 20 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 20 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 20 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 20 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 20 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 20 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 20 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 20 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 1 T: 20 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 20 psnr: 3.97e+01 at lambda: 3.20e+01, rho: 4.69e+01\r", "P: 1 R: 0 T: 21 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r", "P: 0 R: 1 T: 21 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r", "P: 1 R: 1 T: 21 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 21 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r", "P: 1 R: 1 T: 21 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r", "P: 1 R: 1 T: 21 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 21 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r", "P: 1 R: 1 T: 21 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r", "P: 1 R: 1 T: 21 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 21 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r", "P: 1 R: 0 T: 22 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r", "P: 0 R: 1 T: 22 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r", "P: 1 R: 1 T: 22 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 22 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r", "P: 1 R: 1 T: 22 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 22 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r", "P: 1 R: 1 T: 22 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r", "P: 1 R: 1 T: 22 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r", "P: 1 R: 1 T: 22 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 22 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r", "P: 1 R: 1 T: 22 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r", "P: 1 R: 1 T: 22 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r", "P: 1 R: 0 T: 23 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r", "P: 0 R: 1 T: 23 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 23 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r", "P: 1 R: 1 T: 23 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r", "P: 1 R: 1 T: 23 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 23 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r", "P: 1 R: 1 T: 23 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r", "P: 1 R: 1 T: 23 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 23 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r", "P: 1 R: 1 T: 23 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r", "P: 1 R: 1 T: 23 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r", "P: 1 R: 1 T: 23 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 23 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r", "P: 1 R: 1 T: 23 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r", "P: 1 R: 1 T: 23 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r", "P: 1 R: 1 T: 23 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 23 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r", "P: 1 R: 1 T: 23 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r", "P: 1 R: 1 T: 23 psnr: 3.97e+01 at lambda: 4.05e+01, rho: 1.34e+02\r", "P: 1 R: 1 T: 23 psnr: 3.97e+01 at lambda: 3.95e+01, rho: 1.37e+02\r", "P: 1 R: 1 T: 23 psnr: 3.97e+01 at lambda: 3.95e+01, rho: 1.37e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 23 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r", "P: 1 R: 0 T: 24 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r", "P: 0 R: 1 T: 24 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r", "P: 1 R: 1 T: 24 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 24 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r", "P: 1 R: 1 T: 24 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r", "P: 1 R: 0 T: 25 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r", "P: 0 R: 1 T: 25 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 25 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r", "P: 1 R: 1 T: 25 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r", "P: 1 R: 1 T: 25 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 25 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r", "P: 1 R: 1 T: 25 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r", "P: 1 R: 1 T: 25 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 25 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r", "P: 1 R: 1 T: 25 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r", "P: 1 R: 1 T: 25 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r", "P: 1 R: 0 T: 26 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r", "P: 1 R: 0 T: 26 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r", "P: 0 R: 1 T: 26 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r", "P: 1 R: 1 T: 26 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 26 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r", "P: 1 R: 1 T: 26 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r", "P: 1 R: 1 T: 26 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 26 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r", "P: 1 R: 1 T: 26 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r", "P: 1 R: 1 T: 26 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r", "P: 1 R: 1 T: 26 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 26 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r", "P: 1 R: 1 T: 26 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r", "P: 1 R: 0 T: 27 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r", "P: 0 R: 1 T: 27 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r", "P: 1 R: 1 T: 27 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 27 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r", "P: 1 R: 1 T: 27 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r", "P: 1 R: 1 T: 27 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r", "P: 1 R: 1 T: 27 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 27 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r", "P: 1 R: 1 T: 27 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r", "P: 1 R: 1 T: 27 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r", "P: 1 R: 1 T: 27 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 27 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r", "P: 1 R: 1 T: 27 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r", "P: 1 R: 1 T: 27 psnr: 3.98e+01 at lambda: 3.95e+01, rho: 1.37e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 27 psnr: 3.98e+01 at lambda: 1.92e+01, rho: 1.95e+02\r", "P: 1 R: 1 T: 27 psnr: 3.98e+01 at lambda: 1.92e+01, rho: 1.95e+02\r", "P: 1 R: 1 T: 27 psnr: 3.98e+01 at lambda: 1.92e+01, rho: 1.95e+02\r", "P: 1 R: 1 T: 27 psnr: 3.99e+01 at lambda: 1.92e+01, rho: 1.95e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 27 psnr: 3.99e+01 at lambda: 1.92e+01, rho: 1.95e+02\r", "P: 1 R: 1 T: 27 psnr: 3.99e+01 at lambda: 1.92e+01, rho: 1.95e+02\r", "P: 1 R: 1 T: 27 psnr: 3.99e+01 at lambda: 1.92e+01, rho: 1.95e+02\r", "P: 1 R: 1 T: 27 psnr: 3.99e+01 at lambda: 1.92e+01, rho: 1.95e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 28 psnr: 4.00e+01 at lambda: 1.92e+01, rho: 1.95e+02\r", "P: 0 R: 1 T: 28 psnr: 4.00e+01 at lambda: 1.92e+01, rho: 1.95e+02\r", "P: 1 R: 1 T: 28 psnr: 4.00e+01 at lambda: 1.92e+01, rho: 1.95e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 28 psnr: 4.00e+01 at lambda: 1.92e+01, rho: 1.95e+02\r", "P: 1 R: 1 T: 28 psnr: 4.00e+01 at lambda: 1.92e+01, rho: 1.95e+02\r", "P: 1 R: 1 T: 28 psnr: 4.00e+01 at lambda: 1.92e+01, rho: 1.95e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 28 psnr: 4.00e+01 at lambda: 1.92e+01, rho: 1.95e+02\r", "P: 1 R: 1 T: 28 psnr: 4.00e+01 at lambda: 1.92e+01, rho: 1.95e+02\r", "P: 1 R: 1 T: 28 psnr: 4.00e+01 at lambda: 1.92e+01, rho: 1.95e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 28 psnr: 4.00e+01 at lambda: 1.92e+01, rho: 1.95e+02\r", "P: 1 R: 0 T: 29 psnr: 4.00e+01 at lambda: 1.92e+01, rho: 1.95e+02\r", "P: 0 R: 1 T: 29 psnr: 4.00e+01 at lambda: 1.92e+01, rho: 1.95e+02\r", "P: 1 R: 1 T: 29 psnr: 4.00e+01 at lambda: 1.92e+01, rho: 1.95e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 29 psnr: 4.00e+01 at lambda: 1.92e+01, rho: 1.95e+02\r", "P: 1 R: 1 T: 29 psnr: 4.00e+01 at lambda: 1.92e+01, rho: 1.95e+02\r", "P: 1 R: 1 T: 29 psnr: 4.00e+01 at lambda: 1.92e+01, rho: 1.95e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 29 psnr: 4.00e+01 at lambda: 1.92e+01, rho: 1.95e+02\r", "P: 1 R: 1 T: 29 psnr: 4.00e+01 at lambda: 1.92e+01, rho: 1.95e+02\r", "P: 1 R: 1 T: 29 psnr: 4.00e+01 at lambda: 1.92e+01, rho: 1.95e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 29 psnr: 4.00e+01 at lambda: 1.92e+01, rho: 1.95e+02\r", "P: 1 R: 1 T: 29 psnr: 4.00e+01 at lambda: 1.92e+01, rho: 1.95e+02\r", "P: 1 R: 1 T: 29 psnr: 4.00e+01 at lambda: 1.92e+01, rho: 1.95e+02\r", "P: 1 R: 1 T: 29 psnr: 4.00e+01 at lambda: 1.92e+01, rho: 1.95e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 29 psnr: 4.00e+01 at lambda: 1.92e+01, rho: 1.95e+02\r", "P: 1 R: 1 T: 29 psnr: 4.00e+01 at lambda: 1.92e+01, rho: 1.95e+02\r", "P: 1 R: 1 T: 29 psnr: 4.00e+01 at lambda: 1.92e+01, rho: 1.95e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 29 psnr: 4.00e+01 at lambda: 1.92e+01, rho: 1.95e+02\r", "P: 1 R: 1 T: 29 psnr: 4.00e+01 at lambda: 1.92e+01, rho: 1.95e+02\r", "P: 1 R: 1 T: 29 psnr: 4.00e+01 at lambda: 1.92e+01, rho: 1.95e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 29 psnr: 4.00e+01 at lambda: 1.92e+01, rho: 1.95e+02\r", "P: 1 R: 0 T: 30 psnr: 4.00e+01 at lambda: 1.94e+01, rho: 1.95e+02\r", "P: 0 R: 1 T: 30 psnr: 4.00e+01 at lambda: 1.94e+01, rho: 1.95e+02\r", "P: 1 R: 1 T: 30 psnr: 4.00e+01 at lambda: 1.94e+01, rho: 1.95e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 30 psnr: 4.00e+01 at lambda: 1.94e+01, rho: 1.95e+02\r", "P: 1 R: 0 T: 31 psnr: 4.00e+01 at lambda: 1.94e+01, rho: 1.95e+02\r", "P: 0 R: 1 T: 31 psnr: 4.00e+01 at lambda: 1.94e+01, rho: 1.95e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 31 psnr: 4.00e+01 at lambda: 1.94e+01, rho: 1.95e+02\r", "P: 1 R: 1 T: 31 psnr: 4.00e+01 at lambda: 1.94e+01, rho: 1.95e+02\r", "P: 1 R: 1 T: 31 psnr: 4.00e+01 at lambda: 1.94e+01, rho: 1.95e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 31 psnr: 4.00e+01 at lambda: 1.94e+01, rho: 1.95e+02\r", "P: 1 R: 1 T: 31 psnr: 4.00e+01 at lambda: 1.94e+01, rho: 1.95e+02\r", "P: 1 R: 1 T: 31 psnr: 4.00e+01 at lambda: 1.94e+01, rho: 1.95e+02\r", "P: 1 R: 1 T: 31 psnr: 4.00e+01 at lambda: 1.94e+01, rho: 1.95e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 31 psnr: 4.00e+01 at lambda: 1.94e+01, rho: 1.95e+02\r", "P: 1 R: 1 T: 31 psnr: 4.00e+01 at lambda: 1.94e+01, rho: 1.95e+02\r", "P: 1 R: 1 T: 31 psnr: 4.00e+01 at lambda: 1.94e+01, rho: 1.95e+02\r", "P: 1 R: 1 T: 31 psnr: 4.00e+01 at lambda: 1.94e+01, rho: 1.95e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 31 psnr: 4.00e+01 at lambda: 1.94e+01, rho: 1.95e+02\r", "P: 1 R: 1 T: 31 psnr: 4.00e+01 at lambda: 1.94e+01, rho: 1.95e+02\r", "P: 1 R: 1 T: 31 psnr: 4.00e+01 at lambda: 1.94e+01, rho: 1.95e+02\r", "P: 1 R: 1 T: 31 psnr: 4.00e+01 at lambda: 1.94e+01, rho: 1.95e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 31 psnr: 4.00e+01 at lambda: 1.94e+01, rho: 1.95e+02\r", "P: 1 R: 1 T: 31 psnr: 4.00e+01 at lambda: 1.94e+01, rho: 1.95e+02\r", "P: 1 R: 1 T: 31 psnr: 4.00e+01 at lambda: 1.94e+01, rho: 1.95e+02\r", "P: 1 R: 0 T: 32 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 0 R: 1 T: 32 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 32 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 32 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 0 T: 33 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 0 R: 1 T: 33 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 33 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 33 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 33 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 33 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 33 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 33 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 33 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 33 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 33 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 33 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 33 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 33 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 33 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 33 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 33 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 33 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 33 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 33 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 0 T: 34 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 0 R: 1 T: 34 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 34 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 34 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 0 T: 35 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 0 R: 1 T: 35 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 35 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 35 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 0 T: 36 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 0 R: 1 T: 36 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 36 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 36 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 0 T: 37 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 0 R: 1 T: 37 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 37 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 37 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 0 T: 38 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 0 R: 1 T: 38 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 38 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 38 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 0 T: 39 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 0 R: 1 T: 39 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 39 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 39 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 39 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 0 T: 40 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 0 R: 1 T: 40 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 40 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 40 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 0 T: 41 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 0 R: 1 T: 41 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 41 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 41 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 41 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 41 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 41 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 41 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 41 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 41 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 41 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 41 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 41 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 41 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 41 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 41 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 41 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 41 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 41 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 41 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 42 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 0 R: 1 T: 42 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 42 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 42 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 42 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 0 T: 43 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 0 R: 1 T: 43 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 43 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 43 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 43 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 43 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 43 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 43 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 43 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 43 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 0 T: 44 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 0 R: 1 T: 44 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 44 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 44 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 0 T: 45 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 0 R: 1 T: 45 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 45 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 45 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 45 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 45 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 45 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 45 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 45 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 45 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 45 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 0 T: 46 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 0 R: 1 T: 46 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 46 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 46 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 0 T: 47 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 0 R: 1 T: 47 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 47 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 47 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 47 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 47 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 47 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 47 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 47 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 47 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 0 T: 48 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 0 R: 1 T: 48 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 48 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 0 T: 49 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 0 R: 1 T: 49 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 49 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 49 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 49 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 0 T: 50 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 0 R: 1 T: 50 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 50 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 50 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 0 T: 51 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 0 R: 1 T: 51 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 51 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 51 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 0 T: 52 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 0 R: 1 T: 52 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 52 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 52 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 52 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 0 T: 53 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 0 R: 1 T: 53 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 53 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 53 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 53 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 53 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 0 T: 54 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 0 R: 1 T: 54 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 54 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 0 T: 55 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 0 R: 1 T: 55 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 55 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 55 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 0 T: 56 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 0 R: 1 T: 56 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 56 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 56 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 56 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 56 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 56 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 56 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 56 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 56 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 56 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 0 T: 57 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 0 R: 1 T: 57 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 57 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 57 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 57 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 57 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 57 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 57 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 57 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 57 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 57 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 57 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 57 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 57 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 57 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 57 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 57 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 57 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 57 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 57 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 58 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 0 R: 1 T: 58 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 58 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 58 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 0 T: 59 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 0 R: 1 T: 59 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 59 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 59 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 0 T: 60 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 0 R: 1 T: 60 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 60 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 60 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 0 T: 61 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 0 R: 1 T: 61 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 61 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 61 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 61 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 61 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 61 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 61 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 61 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 61 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 0 T: 62 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 0 R: 1 T: 62 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 62 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 62 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 62 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 62 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 0 T: 63 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 0 R: 1 T: 63 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 63 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 0 T: 64 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 0 R: 1 T: 64 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 64 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 64 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 64 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 64 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 64 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 64 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 64 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 64 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 64 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 64 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 64 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 64 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 64 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 64 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 64 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 64 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 64 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 64 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 64 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 64 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 0 T: 65 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 0 R: 1 T: 65 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 65 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 65 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 65 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 65 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 65 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 65 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 65 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 65 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 65 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 65 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 65 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 65 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 65 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 65 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 65 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 65 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 65 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 65 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 65 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 65 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 65 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 65 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 66 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 0 R: 1 T: 66 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 66 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 66 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 66 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 66 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 66 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 66 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 66 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 0 T: 67 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 0 R: 1 T: 67 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 67 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 67 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 67 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 67 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 67 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 67 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 67 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 67 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 67 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 67 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 67 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 67 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 67 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 67 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 67 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 67 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 67 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 67 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 0 T: 68 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 0 T: 68 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 0 R: 1 T: 68 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 68 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 68 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 0 T: 69 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 0 R: 1 T: 69 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 69 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 69 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 69 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 69 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 69 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 69 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 69 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 69 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 69 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 69 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 69 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 69 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 69 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 69 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 69 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 69 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 69 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 69 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r", "P: 1 R: 1 T: 69 psnr: 4.00e+01 at lambda: 2.02e+01, rho: 1.90e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 70 psnr: 4.00e+01 at lambda: 2.04e+01, rho: 1.89e+02\r", "P: 0 R: 1 T: 70 psnr: 4.00e+01 at lambda: 2.04e+01, rho: 1.89e+02\r", "P: 1 R: 1 T: 70 psnr: 4.00e+01 at lambda: 2.04e+01, rho: 1.89e+02\r", "P: 1 R: 1 T: 70 psnr: 4.00e+01 at lambda: 2.04e+01, rho: 1.89e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 70 psnr: 4.00e+01 at lambda: 2.04e+01, rho: 1.89e+02\r", "P: 1 R: 1 T: 70 psnr: 4.00e+01 at lambda: 2.04e+01, rho: 1.89e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 70 psnr: 4.00e+01 at lambda: 2.04e+01, rho: 1.89e+02\r", "P: 1 R: 1 T: 70 psnr: 4.00e+01 at lambda: 2.04e+01, rho: 1.89e+02\r", "P: 1 R: 1 T: 70 psnr: 4.00e+01 at lambda: 2.04e+01, rho: 1.89e+02\r", "P: 1 R: 1 T: 70 psnr: 4.00e+01 at lambda: 2.04e+01, rho: 1.89e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 71 psnr: 4.00e+01 at lambda: 2.04e+01, rho: 1.89e+02\r", "P: 0 R: 1 T: 71 psnr: 4.00e+01 at lambda: 2.04e+01, rho: 1.89e+02\r", "P: 1 R: 1 T: 71 psnr: 4.00e+01 at lambda: 2.04e+01, rho: 1.89e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 71 psnr: 4.00e+01 at lambda: 2.04e+01, rho: 1.89e+02\r", "P: 1 R: 1 T: 71 psnr: 4.00e+01 at lambda: 2.04e+01, rho: 1.89e+02\r", "P: 1 R: 1 T: 71 psnr: 4.00e+01 at lambda: 2.04e+01, rho: 1.89e+02\r", "P: 1 R: 1 T: 71 psnr: 4.00e+01 at lambda: 2.04e+01, rho: 1.89e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 71 psnr: 4.00e+01 at lambda: 2.04e+01, rho: 1.89e+02\r", "P: 1 R: 1 T: 71 psnr: 4.00e+01 at lambda: 2.04e+01, rho: 1.89e+02\r", "P: 1 R: 0 T: 72 psnr: 4.00e+01 at lambda: 2.04e+01, rho: 1.89e+02\r", "P: 0 R: 1 T: 72 psnr: 4.00e+01 at lambda: 2.04e+01, rho: 1.89e+02\r", "P: 1 R: 1 T: 72 psnr: 4.00e+01 at lambda: 2.04e+01, rho: 1.89e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 72 psnr: 4.00e+01 at lambda: 2.04e+01, rho: 1.89e+02\r", "P: 1 R: 1 T: 72 psnr: 4.00e+01 at lambda: 2.04e+01, rho: 1.89e+02\r", "P: 1 R: 1 T: 72 psnr: 4.00e+01 at lambda: 2.04e+01, rho: 1.89e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 72 psnr: 4.00e+01 at lambda: 2.04e+01, rho: 1.89e+02\r", "P: 1 R: 1 T: 72 psnr: 4.00e+01 at lambda: 2.04e+01, rho: 1.89e+02\r", "P: 1 R: 1 T: 72 psnr: 4.00e+01 at lambda: 2.04e+01, rho: 1.89e+02\r", "P: 1 R: 1 T: 72 psnr: 4.00e+01 at lambda: 2.04e+01, rho: 1.89e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 72 psnr: 4.00e+01 at lambda: 2.04e+01, rho: 1.89e+02\r", "P: 1 R: 1 T: 72 psnr: 4.00e+01 at lambda: 2.04e+01, rho: 1.89e+02\r", "P: 1 R: 1 T: 72 psnr: 4.00e+01 at lambda: 2.04e+01, rho: 1.89e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 72 psnr: 4.00e+01 at lambda: 2.04e+01, rho: 1.89e+02\r", "P: 1 R: 1 T: 72 psnr: 4.00e+01 at lambda: 2.04e+01, rho: 1.89e+02\r", "P: 1 R: 1 T: 72 psnr: 4.00e+01 at lambda: 2.04e+01, rho: 1.89e+02\r", "P: 1 R: 1 T: 72 psnr: 4.00e+01 at lambda: 2.04e+01, rho: 1.89e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 72 psnr: 4.00e+01 at lambda: 2.04e+01, rho: 1.89e+02\r", "P: 1 R: 1 T: 72 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 0 T: 73 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 0 T: 73 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 0 R: 1 T: 73 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 73 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 73 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 0 T: 74 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 0 R: 1 T: 74 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 74 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 74 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 0 T: 75 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 0 R: 1 T: 75 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 75 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 75 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 75 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 75 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 75 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 75 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 75 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 75 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 76 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 0 R: 1 T: 76 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 76 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 76 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 76 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 76 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 76 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 76 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 76 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 76 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 76 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 76 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 76 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 76 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 76 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 76 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 76 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 76 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 0 T: 77 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 0 R: 1 T: 77 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 77 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 77 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 77 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 77 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 77 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 77 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 77 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 78 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 0 R: 1 T: 78 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 78 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 78 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 78 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 78 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 78 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 78 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 78 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 78 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 0 T: 79 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 0 R: 1 T: 79 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 79 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 79 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 0 T: 80 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 0 R: 1 T: 80 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 80 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 80 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 80 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 80 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 80 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 80 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 80 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 80 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 80 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 0 T: 81 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 0 R: 1 T: 81 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 81 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 81 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 0 T: 82 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 0 R: 1 T: 82 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 82 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 82 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 82 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 82 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 82 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 82 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 82 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 82 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 82 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 0 T: 83 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 0 R: 1 T: 83 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 83 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 83 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 0 T: 84 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 0 R: 1 T: 84 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 84 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 84 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 0 T: 85 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 0 R: 1 T: 85 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 85 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 85 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 0 T: 86 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 0 R: 1 T: 86 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 86 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 86 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 0 T: 87 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 0 R: 1 T: 87 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 87 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 87 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 87 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 87 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 0 T: 88 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 0 R: 1 T: 88 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 88 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 88 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 0 T: 89 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 0 R: 1 T: 89 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 89 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 89 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 89 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 89 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 89 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 89 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 89 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 89 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 89 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 89 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 89 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 89 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 89 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 89 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 89 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 89 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 89 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 89 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 89 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 89 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 0 T: 90 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 0 R: 1 T: 90 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 90 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 90 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 90 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 90 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 90 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 90 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 90 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 90 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 90 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 0 T: 91 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 0 R: 1 T: 91 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 91 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 91 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 91 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 0 T: 92 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 0 R: 1 T: 92 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 92 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 0 T: 93 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 0 R: 1 T: 93 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 93 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 93 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 0 T: 94 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 0 R: 1 T: 94 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 94 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 94 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 0 T: 95 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 0 R: 1 T: 95 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 95 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 95 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 95 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 0 T: 96 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 0 R: 1 T: 96 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 96 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 96 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 0 T: 97 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 0 R: 1 T: 97 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 97 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 97 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 97 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 0 T: 98 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 0 R: 1 T: 98 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 1 T: 98 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 1 R: 1 T: 98 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 1 R: 0 T: 99 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 0 R: 1 T: 99 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 0 R: 1 T: 99 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 0 R: 1 T: 99 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "P: 0 R: 1 T: 99 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\r", "P: 0 R: 0 T: 100 psnr: 4.00e+01 at lambda: 2.07e+01, rho: 1.25e+02\n" ] } ], "source": [ "tuner = tune.Tuner(\n", " tune.with_parameters(Trainable, x_gt=x_gt, x0=x0, y=y),\n", " param_space=config,\n", " resources=resources,\n", " metric=\"psnr\",\n", " mode=\"max\",\n", " num_samples=100, # perform 100 parameter evaluations\n", " num_iterations=10, # perform at most 10 steps for each parameter evaluation\n", ")\n", "results = tuner.fit()\n", "ray.shutdown()" ] }, { "cell_type": "markdown", "id": "60a1704e", "metadata": {}, "source": [ "Display best parameters and corresponding performance." ] }, { "cell_type": "code", "execution_count": 8, "id": "d60c4c44", "metadata": { "collapsed": false, "execution": { "iopub.execute_input": "2024-06-06T17:48:22.070937Z", "iopub.status.busy": "2024-06-06T17:48:22.070535Z", "iopub.status.idle": "2024-06-06T17:48:22.078999Z", "shell.execute_reply": "2024-06-06T17:48:22.077824Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Best PSNR: 40.04 dB\n", "Best config: lambda: 2.07e+01, rho: 1.25e+02\n" ] } ], "source": [ "best_result = results.get_best_result()\n", "best_config = best_result.config\n", "print(f\"Best PSNR: {best_result.metrics['psnr']:.2f} dB\")\n", "print(\"Best config: \" + \", \".join([f\"{k}: {v:.2e}\" for k, v in best_config.items()]))" ] }, { "cell_type": "markdown", "id": "367c4f16", "metadata": {}, "source": [ "Plot parameter values visited during parameter search. Marker sizes are\n", "proportional to number of iterations run at each parameter pair. The best\n", "point in the parameter space is indicated in red." ] }, { "cell_type": "code", "execution_count": 9, "id": "ca51b304", "metadata": { "collapsed": false, "execution": { "iopub.execute_input": "2024-06-06T17:48:22.082700Z", "iopub.status.busy": "2024-06-06T17:48:22.082415Z", "iopub.status.idle": "2024-06-06T17:48:22.974975Z", "shell.execute_reply": "2024-06-06T17:48:22.973415Z" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAsQAAALSCAYAAADa2scFAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy81sbWrAAAACXBIWXMAAA9hAAAPYQGoP6dpAAB2vklEQVR4nO3dd3iUVf7//9cwaQRIqEGKlFWkSMfIEoEkuuqKErGy6xIF9Nq1fRCwr73suoIiyBfWxtpQN2CBEV3LSkJYQ4mrYMFecRVQSqJIm8n5/XF+kzCkTZJpmfv5uK5c9zX3TM6cGSbDa86c8z4uY4wRAAAA4FAtot0BAAAAIJoIxAAAAHA0AjEAAAAcjUAMAAAARyMQAwAAwNEIxAAAAHA0AjEAAAAcjUAMAAAARyMQAwAAwNEIxEAUPPbYY3K5XJU/CQkJ6t69u6ZMmaL//e9/0e5eWH333Xe69dZbtWHDhmh3Jab5XyNvvfVWtLsSUZMnT1avXr0CzvXq1UuTJ0+OSn+ied8He/rppzV37twar3O5XLr11lsj2h8g3iREuwOAkz366KPq16+f9uzZo+LiYt11111atWqV3nvvPbVq1Sra3QuL7777Trfddpt69eqloUOHRrs7aAZeeOEFpaWlRbsbUfX000/r/fff1/Tp06tdt2bNGnXv3j3ynQLiCIEYiKKBAwfqmGOOkSTl5ubK5/Ppjjvu0LJly/SHP/yhSW3v2bNHLVu2DEU3m4U9e/YoJSVFLpcr2l2plTFGe/fuddS/SygMGzYs2l2Iab/+9a+j3QWg2WPKBBBD/P+xff3115Kk2267TSNHjlT79u2Vlpam4cOHa9GiRTLGBPxer169dNppp+n555/XsGHDlJKSottuu02StGDBAo0dO1YZGRlq1aqVBg0apFmzZunAgQMBbeTk5GjgwIFas2aNsrKy1LJlS/Xq1UuPPvqoJOmll17S8OHDlZqaqkGDBumVV16p1v9PP/1U5513njIyMpScnKz+/ftrwYIFldcXFRUpMzNTkjRlypTKKSMHf9371ltvKS8vT+3bt1dKSoqGDRumJUuWBNyPfzrBa6+9pqlTp6pTp05KTU3Vvn37anxeKyoqdOedd6pv375q2bKl2rZtq8GDB2vevHkN6r8k7d27V1deeaWGDh2q9PR0tW/fXqNGjdLy5cur3a/L5dLll1+uBx54QP3791dycrIef/xxSdJHH32k3//+9+rcubOSk5PVo0cPnX/++dUew08//aRLLrlEHTt2VIcOHXTmmWfqu+++q/FxHuyLL77Q7373O3Xt2lXJycnq3LmzTjjhhICpKgUFBTrppJPUpUsXtWzZUv3799d1112n3bt3B7Q1efJktW7dWh999JFOPvlktWrVSl26dNHf/vY3SdLatWs1evRotWrVSkcddVTlY/Tz/3u9/vrrmjJlitq3b69WrVpp/Pjx+uKLL+p9LIdOWygqKpLL5dIzzzyjG264QV27dlVaWpp+85vf6OOPPw74XWOM/vrXv6pnz55KSUnRMccco9dff105OTnKycmp975r8s0332jSpEkBr5N7771XFRUVAbfbt2+fbr/9dvXv318pKSnq0KGDcnNzVVJSUnmbYP4+c3Jy9NJLL+nrr78OmGrlV9OUiffff1+nn3662rVrp5SUFA0dOrTav0tDnsd33nlHp512WuVj7tq1q0499VR9++23jXoOgVjDCDEQQz777DNJUqdOnSRJX331lf70pz+pR48ekmzw+L//+z/973//08033xzwu2+//bY+/PBD3Xjjjerdu3fllIvPP/9c5513nnr37q2kpCRt3LhRf/nLX/TRRx/pH//4R0AbW7Zs0ZQpU3TNNdeoe/fumj9/vqZOnarNmzfr2Wef1Z///Gelp6fr9ttv14QJE/TFF1+oa9eukqRNmzYpKytLPXr00L333qvDDjtMr776qqZNm6Yff/xRt9xyi4YPH65HH31UU6ZM0Y033qhTTz1Vkiq/7i0sLNRvf/tbjRw5Ug888IDS09P1z3/+UxMnTtQvv/xSbS7n1KlTdeqpp+rJJ5/U7t27lZiYWOPzOmvWLN1666268cYbNXbsWB04cEAfffSRdu3aVXmbYPov2ZCzY8cOXXXVVerWrZv279+vf//73zrzzDP16KOP6vzzzw+472XLlmn16tW6+eabddhhhykjI0MbN27U6NGj1bFjR91+++3q06ePvv/+e3k8Hu3fv1/JycmVv3/RRRfp1FNP1dNPP63Nmzfr6quv1qRJk7Ry5co6XknSuHHj5PP5NGvWLPXo0UM//vijSkpKAh7zp59+qnHjxmn69Olq1aqVPvroI919991av359tfYPHDigM888UxdffLGuvvpqPf3007r++utVXl6u5557Ttdee23la2by5MkaOHCgRowYEdDGhRdeqBNPPLHysdx4443KycnRu+++q7Zt29b5eGry5z//Wccdd5weeeQRlZeX69prr9X48eP14Ycfyu12S5JuuOEG3XXXXfrjH/+oM888U5s3b9ZFF12kAwcO6Kijjmrwff7www/KysrS/v37dccdd6hXr15asWKFrrrqKn3++edauHChJMnr9eqUU07R6tWrNX36dB1//PHyer1au3atvvnmG2VlZUkK7u9z4cKF+uMf/6jPP/9cL7zwQr19/Pjjj5WVlaWMjAzdf//96tChgxYvXqzJkydr69atuuaaaxr0PO7evVsnnniievfurQULFqhz587asmWLCgsL9dNPPzX4OQRikgEQcY8++qiRZNauXWsOHDhgfvrpJ7NixQrTqVMn06ZNG7Nly5Zqv+Pz+cyBAwfM7bffbjp06GAqKioqr+vZs6dxu93m448/rvN+/W088cQTxu12mx07dlRel52dbSSZt956q/Lc9u3bjdvtNi1btjT/+9//Ks9v2LDBSDL3339/5bmTTz7ZdO/e3ZSVlQXc5+WXX25SUlIq76u0tNRIMo8++mi1/vXr188MGzbMHDhwIOD8aaedZrp06WJ8Pl/A83f++efX+XgP/v2hQ4fWeZtg+38or9drDhw4YC688EIzbNiwgOskmfT09Gq/e/zxx5u2bduabdu21dof/2O89NJLA87PmjXLSDLff/99rb/7448/Gklm7ty5td7mUBUVFebAgQNm1apVRpLZuHFj5XUXXHCBkWSee+65ynMHDhwwnTp1MpLM22+/XXne/5qZOXNmtcdyxhlnBNznm2++aSSZO++8M+C+evbsGXC7nj17mgsuuKDycmFhoZFkxo0bF3C7JUuWGElmzZo1xhhjduzYYZKTk83EiRMDbrdmzRojyWRnZ9f7vBx639ddd52RZNatWxdwu0suucS4XK7Kv8EnnnjCSDIPP/xwvffhV9ff56mnnlrtefGTZG655ZbKy7/73e9McnKy+eabbwJud8opp5jU1FSza9cuY0zwz+Nbb71lJJlly5YF/ViA5oYpE0AU/frXv1ZiYqLatGmj0047TYcddpj+9a9/qXPnzpKklStX6je/+Y3S09PldruVmJiom2++Wdu3b9e2bdsC2ho8eHCNI17vvPOO8vLy1KFDh8o2zj//fPl8Pn3yyScBt+3SpUvAqF779u2VkZGhoUOHVo4ES1L//v0lVU3t2Lt3r9544w2dccYZSk1NldfrrfwZN26c9u7dq7Vr19b5XHz22Wf66KOPKudOH9rG999/X+1r3LPOOqvONv2OPfZYbdy4UZdeeqleffVVlZeXB1zf0P4vXbpUxx13nFq3bq2EhAQlJiZq0aJF+vDDD6vd9/HHH6927dpVXv7ll1+0atUqnXvuuZXfBNQlLy8v4PLgwYMlVT33NWnfvr2OOOIIzZ49W3PmzNE777xT7et8yU6rOO+883TYYYdVvjays7MlqdpjcblcGjduXOXlhIQEHXnkkerSpUvAHF//a6am/h06Lz4rK0s9e/ZUYWFhrY+lLvU9N2vXrtW+fft07rnnBtzu17/+dbVKFsFauXKlBgwYoGOPPTbg/OTJk2WMqRxZ/9e//qWUlBRNnTq1zvYa8vfZkD6ecMIJOvzww6v18ZdfftGaNWsCztf3PB555JFq166drr32Wj3wwAPatGlTo/oFxDICMRBFTzzxhEpLS/XOO+/ou+++07vvvqvjjjtOkrR+/XqddNJJkqSHH35Yb775pkpLS3XDDTdIsovIDtalS5dq7X/zzTcaM2aM/ve//2nevHlavXq1SktLK+fFHtpG+/btq7WRlJRU7XxSUpIkGyQlafv27fJ6vZo/f74SExMDfvwh6scff6zzudi6dask6aqrrqrWxqWXXlpjGzU95ppcf/31uueee7R27Vqdcsop6tChg0444YTKkmYN6f/zzz+vc889V926ddPixYu1Zs0alZaWaurUqZXPR1193Llzp3w+X9BVATp06BBw2T+d4tB/u4O5XC698cYbOvnkkzVr1iwNHz5cnTp10rRp0yq/4v755581ZswYrVu3TnfeeaeKiopUWlqq559/vsb2U1NTlZKSEnCupteG/3xNz8Vhhx1W47nt27fX+ljqUt9z42/X/wHzYDWdC8b27dtrfN35PzD67/OHH35Q165d1aJF7f/NNvTvM9R99KvveUxPT9eqVas0dOhQ/fnPf9bRRx+trl276pZbbqm2FgForphDDERR//79K6tMHOqf//ynEhMTtWLFioAgsmzZshpvX1N1hWXLlmn37t16/vnn1bNnz8rzoa4B3K5dO7ndbuXn5+uyyy6r8Ta9e/eus42OHTtKsuH1zDPPrPE2ffv2DbgcbEWJhIQEzZw5UzNnztSuXbv073//W3/+85918skna/PmzQ3q/+LFi9W7d28VFBQE3H9tC/oO7WP79u3ldrvDvhipZ8+eWrRokSTpk08+0ZIlS3Trrbdq//79euCBB7Ry5Up99913KioqqhwVlhQwxzjUtmzZUuO5I488Miz35w96/g9bh95vY0aJO3TooO+//77aef9CR//ruFOnTvrPf/6jioqKWkNxuP4+g+1jQwwaNEj//Oc/ZYzRu+++q8cee0y33367WrZsqeuuu65J/QViASPEQIzyb9jhXxwk2RGbJ598skFtSApYpGWM0cMPPxy6jsqOHubm5uqdd97R4MGDdcwxx1T78YeT2kY4+/btqz59+mjjxo01/v4xxxyjNm3aNLmvbdu21dlnn63LLrtMO3bs0FdffdWg/rtcLiUlJQUE3S1bttRYZaImLVu2VHZ2tpYuXVrvqHmoHHXUUbrxxhs1aNAgvf3225Jqfm1I0oMPPhi2fjz11FMBl0tKSvT11183utpDfUaOHKnk5GQVFBQEnF+7dm2dU07qcsIJJ2jTpk2Vz6PfE088IZfLpdzcXEnSKaecor179+qxxx6rta2G/H0mJycHPWJ8wgknVH7gObSPqampTSrT5nK5NGTIEN13331q27ZttecBaK4YIQZi1Kmnnqo5c+bovPPO0x//+Edt375d99xzT7UAU5cTTzxRSUlJ+v3vf69rrrlGe/fu1d///nft3Lkz5P2dN2+eRo8erTFjxuiSSy5Rr1699NNPP+mzzz7Tiy++WDm38ogjjlDLli311FNPqX///mrdurW6du2qrl276sEHH9Qpp5yik08+WZMnT1a3bt20Y8cOffjhh3r77be1dOnSRvVt/PjxlTWfO3XqpK+//lpz585Vz5491adPnwb131/e7tJLL9XZZ5+tzZs364477lCXLl306aefBtWfOXPmaPTo0Ro5cqSuu+46HXnkkdq6das8Ho8efPDBJgf/d999V5dffrnOOecc9enTR0lJSVq5cqXefffdytG8rKwstWvXThdffLFuueUWJSYm6qmnntLGjRubdN91eeutt3TRRRfpnHPO0ebNm3XDDTeoW7dulVNiQq19+/aaOXOm7rrrLrVr105nnHGGvv32W912223q0qVLndMZajNjxgw98cQTOvXUU3X77berZ8+eeumll7Rw4UJdcskllfP4f//73+vRRx/VxRdfrI8//li5ubmqqKjQunXr1L9/f/3ud79r0N/noEGD9Pzzz+vvf/+7RowYoRYtWtT67dItt9yiFStWKDc3VzfffLPat2+vp556Si+99JJmzZql9PT0Bj3mFStWaOHChZowYYJ+9atfyRij559/Xrt27dKJJ57Y4OcQiElRXdIHOJR/1X1paWmdt/vHP/5h+vbta5KTk82vfvUrc9ddd5lFixYZSebLL7+svF3Pnj3NqaeeWmMbL774ohkyZIhJSUkx3bp1M1dffbX517/+ZSSZwsLCyttlZ2ebo48+utrv19a2JHPZZZcFnPvyyy/N1KlTTbdu3UxiYqLp1KmTycrKCqgiYIwxzzzzjOnXr59JTEystkJ+48aN5txzzzUZGRkmMTHRHHbYYeb44483DzzwQOVtgn3+/O69916TlZVlOnbsaJKSkkyPHj3MhRdeaL766qtG9f9vf/ub6dWrl0lOTjb9+/c3Dz/8sLnlllvMoW+pNT1Hfps2bTLnnHOO6dChQ2WfJk+ebPbu3VvnY/RXBjj43+5QW7duNZMnTzb9+vUzrVq1Mq1btzaDBw829913n/F6vZW3KykpMaNGjTKpqammU6dO5qKLLjJvv/12tSogF1xwgWnVqlW1+wn2NeN/LK+99prJz883bdu2NS1btjTjxo0zn376acDvNqTKxNKlSwNu9+WXX1bre0VFhbnzzjtN9+7dTVJSkhk8eLBZsWKFGTJkSLWqFzU59L6NMebrr7825513nunQoYNJTEw0ffv2NbNnz66sguK3Z88ec/PNN5s+ffqYpKQk06FDB3P88cebkpKSytsE+/e5Y8cOc/bZZ5u2bdsal8sV8Fo79G/IGGPee+89M378eJOenm6SkpLMkCFDqlV2CfZ5/Oijj8zvf/97c8QRR5iWLVua9PR0c+yxx5rHHnus3ucPaC5cxhxS4R8AgBB67LHHNGXKFJWWltY6qhlJX375pfr166dbbrlFf/7zn6PdHQAxgCkTAIC4tXHjRj3zzDPKyspSWlqaPv74Y82aNUtpaWm68MILo909ADGCQAwAiFutWrXSW2+9pUWLFmnXrl1KT09XTk6O/vKXvzS69BqA+MOUCQAAADgaZdcAAADgaARiNBu33367BgwYUOMWtNGUk5OjgQMHRrsbtXrsscfkcrn01VdfRbsrcaGkpES33nprjRtY5OTkhK2mbkN99dVXcrlcddbBlexmDbfeemvIN2uJVS6XS5dffnm0uxGU/fv36+KLL1aXLl3kdrs1dOjQWm87efLkahuN/PWvf611I59Iqq0fRUVFcrlcKioqinifDvbJJ58oKSmJmsoORyBGs/Ddd99p1qxZuv322xtVO9TJTj31VK1ZsybobY5Rt5KSEt122201BuKFCxdq4cKFke9UE3z33Xe67bbbHBOIm5O///3vevDBB3XDDTfoP//5T52b8tx000164YUXAs7FeiAePny41qxZo+HDh0e+Uwc56qij9Ic//EEzZsyIaj8QXSyqQ7Mwb948tW3bttYtfaPhl19+UWpqatjvZ8+ePUpJSQl6m+JDderUSZ06dQpxr8IrUs9tQ/j/HeoyYMCACPUGsczn88nr9TZoE52avP/++2rZsmVQI9pHHHFEk+4rWKF6bJKUlpbWpF3zQunyyy/XMccco5KSEmVlZUW7O4gChtoQ8/bv369FixbpvPPOCxgd9n8lPHv2bN19993q1auXWrZsqZycHH3yySc6cOCArrvuOnXt2lXp6ek644wztG3btoC2CwoKdNJJJ6lLly5q2bKl+vfvr+uuu067d+8OuN3kyZPVunVrvffeezrppJPUpk0bnXDCCbX2+YUXXlBqaqouuugieb1eSXaXrry8PLVv314pKSkaNmyYlixZEvB7/ukNr732mqZOnapOnTopNTVV+/btq/F+KioqdOedd6pv375q2bKl2rZtq8GDB2vevHnV2vRPmfB/TVnTz6FfuRYUFGjUqFFq1aqVWrdurZNPPlnvvPNOrY/70Pt8/fXXNWXKFLVv316tWrXS+PHj9cUXXwTc1j/lpLi4WFlZWUpNTdXUqVMlSd98840mTZqkjIwMJScnq3///rr33nsDps34XwezZs3SX/7yF/Xo0UMpKSk65phj9MYbb1Tr23/+8x+dcMIJatOmjVJTU5WVlaWXXnopqH+H66+/XldffbUkqXfv3pXPm/8r35qmTOzYsUOXXnqpunXrpqSkJP3qV7/SDTfcUO3f1P9V/pNPPqn+/fsrNTVVQ4YM0YoVKwJu99lnn2nKlCnq06ePUlNT1a1bN40fP17vvfdevf8uhyoqKlJmZqYkacqUKZWP59Zbb628jcfj0ahRo5Samqo2bdroxBNP1Jo1a4Jq2+Vy6ZlnntENN9ygrl27Ki0tTb/5zW/08ccfB9y2V69emjx5crU2Dn0+/W0+/fTTuvbaa9WlSxe1bt1a48eP19atW/XTTz/pj3/8ozp27KiOHTtqypQp+vnnn2vs34MPPqijjjpKycnJGjBggP75z39Wu82WLVv0pz/9Sd27d1dSUpJ69+6t2267rfJvWgp8/d15553q3bu3kpOTVVhYWOtzs3fvXl1//fXq3bu3kpKS1K1bN1122WUB3zq4XC498sgj2rNnT+W/S13TXw6dMuFyubR79249/vjjlb9/8HPZ1Me2d+9eXXnllRo6dKjS09PVvn17jRo1qtoW5nX1o7YpE8G85m699Va5XC598MEH+v3vf6/09HR17txZU6dOVVlZWcBtly5dqpEjRyo9PV2pqan61a9+Vfke4zdixAj1799fDzzwQK3PMeJcdPcFAepXXFxsJJmXX3454Lx/N6WePXua8ePHmxUrVpjFixebzp07m6OOOsrk5+ebqVOnmn/961/mgQceMK1btzbjx48PaOOOO+4w9913n3nppZdMUVGReeCBB0zv3r1Nbm5uwO0uuOACk5iYaHr16mXuuusu88Ybb5hXX33VGFN9t645c+YYt9tt7rjjjspzK1euNElJSWbMmDGmoKDAvPLKK2by5MnVdtXy7+jVrVs388c//tH861//Ms8++2zA7mIHu+uuu4zb7Ta33HKLeeONN8wrr7xi5s6da2699dZqbfp3tisrKzNr1qwJ+HniiSdMYmKiGTduXOXv/eUvfzEul8tMnTrVrFixwjz//PNm1KhRplWrVuaDDz6o89/Mf5+HH3545b/BQw89ZDIyMszhhx9udu7cWXnb7Oxs0759e3P44Yeb+fPnm8LCQrNq1Sqzbds2061bN9OpUyfzwAMPmFdeecVcfvnlRpK55JJLqr0ODj/8cDN69Gjz3HPPmaVLl5rMzEyTmJgYsCtYUVGRSUxMNCNGjDAFBQVm2bJl5qSTTjIul8v885//rPff4auvvjL/93//ZySZ559/vvL5Kysrq3ws2dnZle3s2bPHDB482LRq1crcc8895rXXXjM33XSTSUhICHiujbG7jfXq1csce+yxZsmSJebll182OTk5JiEhwXz++eeVt1u1apW58sorzbPPPmtWrVplXnjhBTNhwgTTsmVL89FHH1V7Xg7dnexgZWVllY/1xhtvrHw8mzdvNsYY89RTTxlJ5qSTTjLLli0zBQUFZsSIESYpKcmsXr26zteAfxe0Xr16mT/84Q/mpZdeMs8884zp0aOH6dOnT8Bruqbd4Gp6Pv1t9uzZ00yePNm88sorlX/bubm55sQTTzRXXXWVee2118zdd99t3G63+b//+79qz/Phhx9uBgwYYJ555hnj8XjMb3/722o7tn3//ffm8MMPNz179jQPPvig+fe//23uuOMOk5ycbCZPnlztee7WrZvJzc01zz77rHnttdcCdpI8WEVFhTn55JNNQkKCuemmm8xrr71m7rnnHtOqVSszbNiwyp0K16xZY8aNG2datmxZ+e+ybdu2Wp/vQ3f4W7NmTeVugP7f9//dhuKx7dq1y0yePNk8+eSTZuXKleaVV14xV111lWnRooV5/PHHg+pHTbsuBvua8+8M2bdvX3PzzTeb119/3cyZM8ckJyebKVOmVN6upKTEuFwu87vf/c68/PLLZuXKlebRRx81+fn51Z7DSy65xHTs2NFUVFTU+jwjfhGIEfPuvvtuI8ls2bIl4Lz/zXrIkCEBW6bOnTvXSDJ5eXkBt58+fbqRVBleDlVRUWEOHDhgVq1aZSSZjRs3Vl53wQUXGEnmH//4R7Xf8wdin89nLr/8cpOUlGQWL14ccJt+/fqZYcOGmQMHDgScP+2000yXLl0q++8PJ+eff34Qz4z9/aFDh9Z5m0MD8aG2bt1qfvWrX5mjjz66Mqh+8803JiEhoVqY+Omnn8xhhx1mzj333KDu89Ctcd98800jKWAr5OzsbCPJvPHGGwG3ve6664wks27duoDzl1xyiXG5XObjjz82xlS9Drp27Wr27NlTebvy8nLTvn1785vf/Kby3K9//WuTkZFhfvrpp8pzXq/XDBw40HTv3r3yP8K6/h1mz55d6/N5aIB74IEHjCSzZMmSgNv5X9OvvfZa5TlJpnPnzqa8vLzy3JYtW0yLFi3MXXfdVe2+Du7//v37TZ8+fcyMGTMqzwcTiI0xprS0tMbb+Xw+07VrVzNo0KCAv6+ffvrJZGRkmKysrDrb9YedQ4P/kiVLjCSzZs2aynMNDcSHfrD1/21PmzYt4PyECRNM+/btA85JMi1btgx4P/F6vaZfv37myCOPrDz3pz/9ybRu3dp8/fXXAb9/zz33GEmVoc7/PB9xxBFm//79dTwj1iuvvGIkmVmzZgWcLygoMJLMQw89VHmuti2za1LTltetWrWq8XkNx2Pzer3mwIED5sILLzTDhg0Lqh+HBuKGvOb8gfjQ5/HSSy81KSkplX/L/se0a9euOvtvjDEPP/ywkWQ+/PDDem+L+MOUCcS87777Ti6XSx07dqzx+nHjxgVMpejfv78ku5jsYP7z33zzTeW5L774Quedd54OO+wwud1uJSYmKjs7W5L04YcfVruvs846q8Y+7N27VxMmTNBTTz2l1157TX/4wx8qr/vss8/00UcfVZ7zer2VP+PGjdP3339f7Svk2u7nUMcee6w2btyoSy+9VK+++qrKy8uD+j2/3bt369RTT9XevXv1r3/9S23btpUkvfrqq/J6vTr//PMD+puSkqLs7OygV4Uf/DxIUlZWlnr27Fnt6+R27drp+OOPDzi3cuVKDRgwQMcee2zA+cmTJ8sYo5UrVwacP/PMMwPm+LZp00bjx49XcXGxfD6fdu/erXXr1unss89W69atK2/ndruVn5+vb7/9ttH/DrVZuXKlWrVqpbPPPrvaY5BUbUpHbm6u2rRpU3m5c+fOysjI0Ndff115zuv16q9//asGDBigpKQkJSQkKCkpSZ9++mmNr9nG+vjjj/Xdd98pPz8/4O+rdevWOuuss7R27Vr98ssv9baTl5cXcHnw4MGSFPCYGuq0004LuFzX3/yOHTuqTZs44YQTAjblcLvdmjhxoj777DN9++23kqQVK1YoNzdXXbt2DfgbOOWUUyRJq1atCmgzLy9PiYmJ9fbd/7o9dIrIOeeco1atWtU4zSfUQvXYli5dquOOO06tW7dWQkKCEhMTtWjRoka/Dhvzmqvp9bV3797K6XH+KUHnnnuulixZov/973+13n9GRoYk1XkbxC8CMWLenj17lJiYKLfbXeP17du3D7iclJRU5/m9e/dKkn7++WeNGTNG69at05133qmioiKVlpbq+eefr7zfg6WmpiotLa3GPmzbtk2vvvqqRo0aVW1BxtatWyVJV111lRITEwN+Lr30UknSjz/+GPA7wVaEuP7663XPPfdo7dq1OuWUU9ShQwedcMIJeuutt+r9Xa/Xq7PPPluffPKJXn75ZR1++OHV+pyZmVmtzwUFBdX6W5vDDjusxnPbt28POFfT492+fXuN57t27Vp5fTD3tX//fv3888/auXOnjDENarOplTm2b9+uww47rNqCyIyMDCUkJFS7vw4dOlRrIzk5OeC1OHPmTN10002aMGGCXnzxRa1bt06lpaUaMmRItddsU/su1fwcdO3aVRUVFdq5c2e97Rz6mPyLsZrS18b+zfvV9lqRqh731q1b9eKLL1Z7/R999NGSGv83u337diUkJFRb6OpyuWr82wiHUDy2559/Xueee666deumxYsXa82aNSotLdXUqVOrPd/Basxrrr7X19ixY7Vs2bLKD/jdu3fXwIED9cwzz1S7D/8H6lD+HaH5oMoEYl7Hjh21f/9+7d69W61atQpZuytXrtR3332noqKiylFhSTWW05JUZ5WHHj16aM6cOTrjjDN05plnaunSpZVvrv6R7euvv77WKhl9+/YN+r4OlpCQoJkzZ2rmzJnatWuX/v3vf+vPf/6zTj75ZG3evLnOSg1//OMf9cYbb+jll1/WkCFDAq7z9/nZZ59Vz549g+pLTbZs2VLjuSOPPDLgXE2Pt0OHDvr++++rnf/uu+8C+ljffSUlJVWOYLVo0aJBbTa2sodfhw4dtG7dOhljAtratm2bvF5vrd961GXx4sU6//zz9de//jXg/I8//lg5wh8K/qBR2/PVokULtWvXLiT3lZKSUuPC0R9//LFRz1F9anutSFWPu2PHjho8eLD+8pe/1NiG/0OUX7CvlQ4dOsjr9eqHH34ICMXGGG3ZsqVyRDOcQvHYFi9erN69e6ugoCDg+toWAAcjXK+5008/Xaeffrr27duntWvX6q677tJ5552nXr16adSoUZW327Fjh6Tq7wNwBkaIEfP69esnSfr8889D2q7/TfzQ8kEPPvhgo9o76aST9Oqrr6q4uFinnXZaZaWKvn37qk+fPtq4caOOOeaYGn8O/pq8sdq2bauzzz5bl112mXbs2FHnRhw33nijHn30UT3yyCP6zW9+U+36k08+WQkJCfr8889r7XMwnnrqqYDLJSUl+vrrr4PavOKEE07Qpk2bqhXLf+KJJ+RyuZSbmxtw/vnnnw8Ymfrpp5/04osvasyYMXK73WrVqpVGjhyp559/PmAEqKKiQosXL1b37t111FFH1duvhoxwnnDCCfr555+r1WB94oknKq9vKJfLVe01+9JLLzX6a97aHk/fvn3VrVs3Pf300zLGVJ7fvXu3nnvuucoqAKHQq1cvvfvuuwHnPvnkk2pTWELljTfeqPwWRLKlxAoKCnTEEUeoe/fukuy0jPfff19HHHFEja//Q0NjsPz/5osXLw44/9xzz2n37t2Nek3U5tBvF/xC8dhcLpeSkpICwvCWLVuqVZmoqx+HCvdrLjk5WdnZ2br77rslqVrFnC+++EItWrSoNkABZ2CEGDHPH57Wrl1bOf8wFLKystSuXTtdfPHFuuWWW5SYmKinnnpKGzdubHSbo0eP1htvvKHf/va3Oumkk/Tyyy8rPT1dDz74oE455RSdfPLJmjx5srp166YdO3boww8/1Ntvv62lS5c26v7Gjx+vgQMH6phjjlGnTp309ddfa+7cuerZs6f69OlT4+8sXbpUf/nLX3T22WfrqKOO0tq1ayuvS05O1rBhw9SrVy/dfvvtuuGGG/TFF1/ot7/9rdq1a6etW7dq/fr1atWqlW677bZ6+/fWW2/poosu0jnnnKPNmzfrhhtuULdu3SqnitRlxowZeuKJJ3Tqqafq9ttvV8+ePfXSSy9p4cKFuuSSS6qFV7fbrRNPPFEzZ85URUWF7r77bpWXlwf086677tKJJ56o3NxcXXXVVUpKStLChQv1/vvv65lnnglqlG/QoEGSbG3sCy64QImJierbt2+NH2rOP/98LViwQBdccIG++uorDRo0SP/5z3/017/+VePGjavxw0h9TjvtND322GPq16+fBg8erP/+97+aPXt2ZZBrqCOOOEItW7bUU089pf79+6t169bq2rWrunbtqlmzZukPf/iDTjvtNP3pT3/Svn37NHv2bO3atUt/+9vfGnV/NcnPz9ekSZN06aWX6qyzztLXX3+tWbNmha1+dseOHXX88cfrpptuUqtWrbRw4UJ99NFHAaXXbr/9dr3++uvKysrStGnT1LdvX+3du1dfffWVXn75ZT3wwAONes5PPPFEnXzyybr22mtVXl6u4447Tu+++65uueUWDRs2TPn5+SF7nIMGDVJRUZFefPFFdenSRW3atFHfvn1D8thOO+00Pf/887r00kt19tlna/PmzbrjjjvUpUsXffrpp0H141AtWrQI+Wvu5ptv1rfffqsTTjhB3bt3165duzRv3ryA9SJ+a9eu1dChQ0P2zQeamWiu6AOCNWbMmGqr1f0roGfPnh1w3r9y+eASSsZUVQ4oLS2tPFdSUmJGjRplUlNTTadOncxFF11k3n777Wqr7uta7X1o2TVjjHn//ffNYYcdZoYPH25++OEHY4wxGzduNOeee67JyMgwiYmJ5rDDDjPHH3+8eeCBB+rsY13uvfdek5WVZTp27GiSkpJMjx49zIUXXmi++uqram36qyL4V2fX9HPoKvVly5aZ3Nxck5aWZpKTk03Pnj3N2Wefbf7973/X2S//fb722msmPz/ftG3btrL00qefflrv8+f39ddfm/POO8906NDBJCYmmr59+5rZs2cHrED3vw7uvvtuc9ttt5nu3bubpKQkM2zYsMrSeAdbvXq1Of74402rVq1My5Ytza9//Wvz4osv1tj/2v4drr/+etO1a1fTokWLgFXyh1ZFMMaY7du3m4svvth06dLFJCQkmJ49e5rrr7++sryWnyRz2WWXVbuvQysw7Ny501x44YUmIyPDpKammtGjR5vVq1dXu+9gq0wYY8wzzzxj+vXrZxITE40kc8stt1Ret2zZMjNy5EiTkpJiWrVqZU444QTz5ptv1ttmbX+HNfWroqLCzJo1y/zqV78yKSkp5phjjjErV66stcpEMH/bxlS91v1/g8ZUPc8LFy40RxxxhElMTDT9+vUzTz31VLXH8MMPP5hp06aZ3r17m8TERNO+fXszYsQIc8MNN5iff/454PEc+j5Ulz179phrr73W9OzZ0yQmJpouXbqYSy65JKAcoTFNrzKxYcMGc9xxx5nU1FQjKeC5DMVj+9vf/mZ69eplkpOTTf/+/c3DDz9c+ZwH04+ayq4ZE9xrrqZ/W2Oqv9+tWLHCnHLKKaZbt24mKSnJZGRkmHHjxlUrG/jTTz+Z1NRUc++999b2FCPOuYw56HsJIEY999xzmjhxor7++mt169Yt2t1BPR577DFNmTJFpaWlQU+vaKyvvvpKvXv31uzZs3XVVVeF9b4AxKdFixbpiiuu0ObNmxkhdijmEKNZOPPMM5WZmam77ror2l0BAMQRr9eru+++W9dffz1h2MEIxGgWXC6XHn744crSOwAAhMLmzZs1adIkXXnlldHuCqIoLqZMbN68Wfn5+dq2bZsSEhJ000036Zxzzol2twAAANAMxEUg/v7777V161YNHTpU27Zt0/Dhw/Xxxx+HtGYtAAAA4lNclF3r0qVL5c42GRkZat++vXbs2EEgBgAAQL1i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j4sWSWPG2E/A7dpFu5cAAERXbq40d27zX4fECDFwCGNsGC4psZe93sBjSYm9npFiAIDThWo3xWhjDrGYQ4xARUX2E28wt8vODndvAACAxBxiIKIWL7bTI+qSkCA9+WRk+gMAAMIrbgLxGWecoXbt2unss8+OdlfQzG3bVjU9ojZer70dAABo/uImEE+bNk1PPPFEtLuBOJCREdwIcUZGZPoDAADCK24CcW5urtq0aRPtbiAOTJoU3Ahxfn5k+gMAAMKryYHY6/Xqgw8+UEFBgW666SadccYZDW6juLhY48ePV9euXeVyubRs2bJqt1m4cKF69+6tlJQUjRgxQqtXr25q14EaZWfb0mpud83Xu932+rFjI9svAAAQHg2qQ/zFF1/ovffe0/vvv1/588knn8jr9SopKUn9+/fXoEGDGtyJ3bt3a8iQIZoyZYrOOuusatcXFBRo+vTpWrhwoY477jg9+OCDOuWUU7Rp0yb16NGjwfe3b98+7du3r/JyeXl5g9tAaBkjlZZKBQXSunXSBx9I+/ZJycnS0UdLI0dKEydKmZmSyxXevrhctnRMTXWIvV4pK8teH+5+AACAyAi67NqkSZP0zDPPyOVyKTU1Vbt379app56q/Px8DRo0SH369JG7tiG1hnTI5dILL7ygCRMmVJ4bOXKkhg8frr///e+V5/r3768JEyborrvuqjxXVFSk//f//p+effbZOu/j1ltv1W233VbtPGXXoqO42NYv3LixKnQeyn9+yBDp/vsjMzprjO3bk0/aBXQZGXaaxNix8RWGjZFWrbLVNfyPc9IkO1IeT48TANC8xUTZtWeffVbz58/Xzz//rO+++06XX365XnvtNZWWlqpnz54hCcM12b9/v/773//qpJNOCjh/0kknqcS/c0IDXX/99SorK6v82bx5cyi6igbyeqUZM2zweu+9qnO13VaS3n/f7oIzY0b983ybyuWyfXvkEbtX+yOPxF9I3LnTPqbcXOnxx6UXX7TH3Fx7fufOaPcQAIDwCzoQX3311Tr//POVkpKi1q1ba968eXrzzTdVWFioAQMG6JVXXglLB3/88Uf5fD517tw54Hznzp21ZcuWyssnn3yyzjnnHL388svq3r27SktLa20zOTlZaWlpAT+ILK9XOuccad48e7miIrjf8/nsiOa8edK554Y/FMczduQDAMAKOhDf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XwIX84HY79A5wcaYgHN5eXnKYz/FZuWyyy6LdhfCIpYfV7T6Fon7Dcd9hKrNprQTy68nVBev/16x/Lh4X4tOm/H2vhYXUyaaqry8XOnp6SorK4vZT8AA0BC8rwGIN+F8X4uJsmt1SUpK0ogRI/T6668HnH/99deVlZUVkvtITk7WLbfcUuM0CgBojnhfAxBvwvm+FhMjxD///LM+++wzSdKwYcM0Z84c5ebmqn379urRo4cKCgqUn5+vBx54QKNGjdJDDz2khx9+WB988IF69uwZ5d4DAACgOYuJQFxUVKTc3Nxq5y+44AI99thjkuzGHLNmzdL333+vgQMH6r777tPYsWMj3FMAAADEm5gIxAAAAEC0xPwcYgAAACCcCMQAAABwNAIxAAAAHI1AXI8zzjhD7dq109lnnx3trgBAk23evFk5OTkaMGCABg8erKVLl0a7SwDQJD/99JMyMzM1dOhQDRo0SA8//HCD22BRXT0KCwv1888/6/HHH9ezzz4b7e4AQJN8//332rp1q4YOHapt27Zp+PDh+vjjj9WqVatodw0AGsXn82nfvn1KTU3VL7/8ooEDB6q0tFQdOnQIug1GiOuRm5urNm3aRLsbABASXbp00dChQyVJGRkZat++vXbs2BHdTgFAE7jdbqWmpkqS9u7dK5/Pp4aO98Z1IC4uLtb48ePVtWtXuVwuLVu2rNptFi5cqN69eyslJUUjRozQ6tWrI99RAAhSKN/X3nrrLVVUVOjwww8Pc68BoHaheF/btWuXhgwZou7du+uaa65Rx44dG9SHuA7Eu3fv1pAhQ/T//t//q/H6goICTZ8+XTfccIPeeecdjRkzRqeccoq++eabCPcUAIITqve17du36/zzz9dDDz0UiW4DQK1C8b7Wtm1bbdy4UV9++aWefvppbd26tWGdMA4hybzwwgsB54499lhz8cUXB5zr16+fue666wLOFRYWmrPOOivcXQSABmns+9revXvNmDFjzBNPPBGJbgJA0JqS1/wuvvhis2TJkgbdb1yPENdl//79+u9//6uTTjop4PxJJ52kkpKSKPUKABovmPc1Y4wmT56s448/Xvn5+dHoJgAELZj3ta1bt6q8vFySVF5eruLiYvXt27dB95MQmu42Pz/++KN8Pp86d+4ccL5z587asmVL5eWTTz5Zb7/9tnbv3q3u3bvrhRdeUGZmZqS7CwD1CuZ97c0331RBQYEGDx5cOU/vySef1KBBgyLdXQCoVzDva99++60uvPBCGWNkjNHll1+uwYMHN+h+HBuI/VwuV8BlY0zAuVdffTXSXQKAJqnrfW306NGqqKiIRrcAoNHqel8bMWKENmzY0KT2HTtlomPHjnK73QGjwZK0bdu2ap9CAKA54H0NQLyJ1PuaYwNxUlKSRowYoddffz3g/Ouvv66srKwo9QoAGo/3NQDxJlLva3E9ZeLnn3/WZ599Vnn5yy+/1IYNG9S+fXv16NFDM2fOVH5+vo455hiNGjVKDz30kL755htdfPHFUew1ANSO9zUA8SYm3tcaVJOimSksLDSSqv1ccMEFlbdZsGCB6dmzp0lKSjLDhw83q1atil6HAaAevK8BiDex8L7mMqaBe9sBAAAAccSxc4gBAAAAiUAMAAAAhyMQAwAAwNEIxAAAAHA0AjEAAAAcjUAMAAAARyMQAwAAwNEIxAAAAHA0AjEAAAAcjUAMAAAARyMQAwAAwNEIxAAQZ/7zn//o2GOPVUpKijp27Kj77rsv2l0CgJhGIAaAOPLyyy/rjDPO0KWXXqp3331Xf/rTnzRz5kx9/vnn0e4aAMQslzHGRLsTAICm27t3r/r06aO7775b5513niTJ5/OpXbt2mjt3rqZOnRrlHgJAbGKEGADixMqVK7Vnzx5NnDix8pzb7VZCQoKSk5Oj2DMAiG0EYgCIE4WFhRoyZIjcbnfluS+//FI7d+7U8OHDo9gzAIhtBGIAiBPvvPOO9u/fH3Bu/vz5Gj58uPr37x+lXgFA7EuIdgcAAKGxYcMGVVRU6PHHH9eoUaO0ZMkS/f3vf9ebb74Z7a4BQEwjEANAHPjmm2+0fft2vfTSS7r22mv1ySefaPDgwXrllVeYLgEA9aDKBADEAY/HoylTpmj79u3R7goANDvMIQaAOPDOO+9o0KBB0e4GADRLBGIAiAPvvPOOBg8eHO1uAECzxJQJAAAAOBojxAAAAHA0AjEAAAAcjUAMAAAARyMQAwAAwNEIxAAAAHA0AjEAAAAcjUAMAAAARyMQAwAAwNEIxAAAAHA0AjEAAAAc7f8DnqKBYqG5w0UAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig = plot.figure(figsize=(8, 8))\n", "trials = results.get_dataframe()\n", "for t in trials.iloc:\n", " n = t[\"training_iteration\"]\n", " plot.plot(\n", " t[\"config/lambda\"],\n", " t[\"config/rho\"],\n", " ptyp=\"loglog\",\n", " lw=0,\n", " ms=(0.5 + 1.5 * n),\n", " marker=\"o\",\n", " mfc=\"blue\",\n", " mec=\"blue\",\n", " fig=fig,\n", " )\n", "plot.plot(\n", " best_config[\"lambda\"],\n", " best_config[\"rho\"],\n", " ptyp=\"loglog\",\n", " title=\"Parameter search sampling locations\\n(marker size proportional to number of iterations)\",\n", " xlbl=r\"$\\rho$\",\n", " ylbl=r\"$\\lambda$\",\n", " lw=0,\n", " ms=5.0,\n", " marker=\"o\",\n", " mfc=\"red\",\n", " mec=\"red\",\n", " fig=fig,\n", ")\n", "ax = fig.axes[0]\n", "ax.set_xlim([config[\"rho\"].lower, config[\"rho\"].upper])\n", "ax.set_ylim([config[\"lambda\"].lower, config[\"lambda\"].upper])\n", "fig.show()" ] }, { "cell_type": "markdown", "id": "ada1283c", "metadata": {}, "source": [ "Plot parameter values visited during parameter search and corresponding\n", "reconstruction PSNRs.The best point in the parameter space is indicated\n", "in red." ] }, { "cell_type": "code", "execution_count": 10, "id": "299b9e6b", "metadata": { "collapsed": false, "execution": { "iopub.execute_input": "2024-06-06T17:48:22.978280Z", "iopub.status.busy": "2024-06-06T17:48:22.977884Z", "iopub.status.idle": "2024-06-06T17:48:23.422925Z", "shell.execute_reply": "2024-06-06T17:48:23.421818Z" } }, "outputs": [ { "data": { "image/png": "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MwczZsxA586dce7cOcyePRu1atWCXq83lnNzc0NwcDDWrFmD7t27w8vLCz4+PmZvbqdOnYoVK1agU6dOePHFF9G0aVMoioKoqChs3rwZL7/8Mtq1a4eePXvC3t4ejz/+OF577TVkZWVh0aJFuH37tsn+XF1d8cknn2DChAno0aMHJk6cCD8/P1y8eBHHjh0rskaoOL766its374d/fv3R40aNZCVlWWsaejRowcAoH///vj0008xcuRIPP3000hISMDHH3+c7wa7rNjb2+OTTz5BWloa2rRpYxx9q2/fvnjooYfMvq+417+4evbsid69e2PatGlISUlBeHi4cfStFi1aYPTo0QByh0F+4403MGfOHGRmZuLxxx+Hh4cHTp8+jfj4eMyaNQsNGzZEnTp18Prrr0MIAS8vL/z111/YsmVLvuM2adIEAPDZZ59h7NixsLOzQ4MGDUz6guQZM2YMFi5ciLFjxyIyMhJNmjTBnj178P7776Nfv37GnyERkc1TsZM9EVlY3uhb949udL9NmzaJp556SoSGhgoPDw+h1WpFQECAGDp0qNi/f79J2XtH37pXdna2qFWrltnRtz766KMCj/3oo48KrVYrLl68aDa+7Oxs8corr4hq1aoJR0dH0bJlS7F69ep8oy8JIcTWrVtFixYthIODgwBgMtpTQdLS0sRbb70lGjRoIOzt7YWHh4do0qSJePHFF42jkwkhxF9//SWaNWsmHB0dRbVq1cSrr74qNmzYIACIHTt2mOzz77//Fp07dxYuLi7C2dlZhIaGinnz5hm3m7uGM2bMEEX9mt6/f78YMmSICA4OFg4ODsLb21t07tzZZEQsIYT4/vvvRYMGDYSDg4OoXbu2mDt3rli8eHG+UaKCg4NF//798x3n/p+jEAX/LPPO5fjx46JLly7CyclJeHl5iWeffVakpaWZvP/+0beEKP71L0hBP//MzEwxbdo0ERwcLOzs7ERAQIB49tlnxe3bt/O9f+nSpaJNmzbC0dFRuLq6ihYtWogffvjBuP306dOiZ8+ews3NTXh6eopHH31UREVFFTjC2/Tp00VgYKCQZdnkM3H/6FtCCJGQkCAmTZokAgIChFarFcHBwWL69OkiKyvLpFxBPwMhCr6OREQVjSSEBdoUEBFRpTBu3Dj8+eefSEtLUzsUIiKqQNinhIiIiIiIVMWkhIiI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4++opuYnqq7+hmpqfqR4fGv7TwISTHl5ebOjtra2Q88rKyuTJOXm5jY7v3btWg0ePFhjxozRNddco71797Z5nRdeeEFz5sxpdu7888/X888/3+HX0KeLkuLiYm3ZskUbNmwIOgoAdIib9x+Sk6FjCxNXMmG5Q34sY0wQ0YCkYm1c1dW36vDhC1Vfv1Sx2OOqr/+tDh++WNXV35S1saAjItk4AR2SCgoKlJOT03QsWrSo3bjWWi1cuFBnn322xo8f33T+ggsu0O9+9zutWbNGt99+uzZs2KDZs2e3WeiUlpYqLy+v2bm8vDyVlpa2m6MRw7cAIImYyCiFRixXfN9dshVPqGFJYEem37lyB31NJjIm6IhAUqiru0ex2ENHfoo3eywWW6Ha2gGKRm/2PxjQBdu3b1d2dnbTz5FIpN3nXHfddXrttdf03HPPNTs/b968pv8eP368TjvtNI0YMUKPP/64Pv3pT7d6vY9+IWat7dSXZBQlAJBkTHiEQsNul/W+L8UPSk6OjJsVdCwgaVh7WHV197XVQvX1v1Mk8lUZk91GO+AoAe7onp2d3awoac/111+vlStXav369crPz2+z7dChQzVixAi9/fbbrbYZMmTIMb0ie/fuPab3pC19evgWACQz42TKpOVTkACdFI+/LKm91ezqFIt1fDw8kAystbruuuv02GOPac2aNRo5cmS7z9m/f7+2b9+uoUOHttpm+vTpWr16dbNzTz31lM4888wOZ6OnBAAA9CnW1nSwZccmCwOSZIyV8XkzQ9PJnpni4mI98MADWrFihbKyspp6N3JycpSenq7Kykrdeuut+sxnPqOhQ4fq/fff1y233KJBgwbpkksuabrOggULNHz48Ka5KzfccINmzJih2267TRdffLFWrFihp59++pihYW2hpwQAAPQprtuxuVeOwxwtpJYlS5aorKxMM2fO1NChQ5uOZcuWSZJc19Xrr7+uiy++WGPGjNFVV12lMWPG6IUXXlBW1oe98iUlJdq9e3fTz2eeeaYeeugh3XfffZo4caKWLl2qZcuW6YwzzuhwNnpKAABAn+I4J8h1zzgyjCveQgtXjjNOrjvO72hAr7K27Z6V9PR0Pfnkk+1eZ+3atcecu/TSS3XppZd2NRo9JUCysvFK2dh+WesFHQUAkk40+gMZ018tLq+tfopGb/M/FJJbEuzonsjo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tXXr1qbH6+vrdfPNN2vChAnKzMzUsGHDtGDBAu3atavN6y5dulTGmGOOmpqajv/2deqVJKi//e1vOuWUUzR8+HBlZWXpk5/8pJ588smgYwEAAAAJY926dSouLtaLL76o1atXKxaLac6cOaqqqpIkHT58WK+88oq+853v6JVXXtFjjz2mt956SxdddFG7187Oztbu3bubHdFotMPZEqIoWb9+vT71qU9p2LBhMsboD3/4wzFt7rnnHo0cOVLRaFRTp07Vs88+2/TYrl27NHz4h12w+fn52rlzpx/RAQAAgKSwatUqXX311TrllFM0adIk3XfffSopKdHGjRslSTk5OVq9erUuv/xyjR07VtOmTdPPf/5zbdy4USUlJW1e2xijIUOGNDs6IyGKkqqqKk2aNEl33313i48vW7ZMN954o7797W9r06ZNOuecc3TBBRc0/eZYa495jjGtd2fV1taqvLy82QEAAAB0lTWSdXw+jnzc/ejn2tra2g5lLisrkyTl5ua22cYYo/79+7d5rcrKSo0YMUL5+fm68MILtWnTpg5laJQQRckFF1ygH/zgB/r0pz/d4uM//elP9YUvfEFf/OIXNW7cON15550qKCjQkiVLJEnDhw9v1jOyY8cODR06tNX7LVq0SDk5OU1HQUFBz74gAAAAwCcFBQXNPtsuWrSo3edYa7Vw4UKdffbZGj9+fIttampq9M1vflNXXHGFsrOzW73WySefrKVLl2rlypV68MEHFY1GddZZZ+ntt9/u8GswtqVuhgAZY7R8+XLNnTtXklRXV6eMjAw9/PDDuuSSS5ra3XDDDdq8ebPWrVunWCymcePGae3atcrOztaUKVP04osvauDAgS3eo7a2tlkFWV5eroKCApWVlbX5Gw4AAIBglJeXKycnJ+E+rzXm2vn+ScrObm2jzt66d1zDT3hH27dvb/Z7EolEFIlE2nxucXGxHn/8cT333HPKz88/5vH6+npddtllKikpafqM3VGe52nKlCmaMWOG7rrrrg49J+H3Kdm3b5/i8bjy8vKanc/Ly1NpaakkKRQK6fbbb9esWbPkeZ5uuummVgsSqWN/UAAAAEAyyM7O7lTRcP3112vlypVav359qwXJ5Zdfrm3btmnNmjWdLgIdx1FRUVGnekoSvihp9NE5ItbaZucuuuiiDq0MAAAAAPRF1lpdf/31Wr58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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "𝜌 = [t[\"config/rho\"] for t in trials.iloc]\n", "𝜆 = [t[\"config/lambda\"] for t in trials.iloc]\n", "psnr = [t[\"psnr\"] for t in trials.iloc]\n", "minpsnr = min(max(psnr), 20.0)\n", "𝜌, 𝜆, psnr = zip(*filter(lambda x: x[2] >= minpsnr, zip(𝜌, 𝜆, psnr)))\n", "fig, ax = plot.subplots(figsize=(10, 8))\n", "sc = ax.scatter(𝜌, 𝜆, c=psnr, cmap=plot.cm.plasma_r)\n", "fig.colorbar(sc)\n", "plot.plot(\n", " best_config[\"lambda\"],\n", " best_config[\"rho\"],\n", " ptyp=\"loglog\",\n", " lw=0,\n", " ms=12.0,\n", " marker=\"2\",\n", " mfc=\"red\",\n", " mec=\"red\",\n", " fig=fig,\n", " ax=ax,\n", ")\n", "ax.set_xscale(\"log\")\n", "ax.set_yscale(\"log\")\n", "ax.set_xlabel(r\"$\\rho$\")\n", "ax.set_ylabel(r\"$\\lambda$\")\n", "ax.set_title(\"PSNR at each sample location\\n(values below 20 dB omitted)\")\n", "fig.show()" ] } ], "metadata": { "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.10.13" } }, "nbformat": 4, "nbformat_minor": 5 }