mirror of
https://git.libcamera.org/libcamera/libcamera.git
synced 2025-07-13 07:19:45 +03:00
ipa: rpi: Add HDR support
Add support for the following HDR modes in the Raspberry Pi IPA: - Night mode - Single exposure mode - Multi-exposure (merged and unmerged) The algorithm is updated to expect the HDR short channel to meter explicitly for highlights. This means that it will not in general under-expose the short channel more than is actually necessary. When images don't have much saturation, it's good to detect this so that some of the boost we want to apply to the dark areas can be implemented as regular gain. This means we can then adjust the tone curve less, leading to less flat looking images. The impact on the HDR algorithm is then that this determines how we build tonemaps dynamically. The highlights are more-or-less correct now, so we have to build a power-type curve that gives us the appropriately configured targets in the lower part of the histogram. We allow the tuning file to supply the maximum spatial gain value, rather than the whole curve (though it can supply this if it wants). Some parameter defaults are tweaked to be generally better across the range of our cameras. Signed-off-by: David Plowman <david.plowman@raspberrypi.com> Signed-off-by: Naushir Patuck <naush@raspberrypi.com> Reviewed-by: David Plowman <david.plowman@raspberrypi.com> Reviewed-by: Naushir Patuck <naush@raspberrypi.com> Acked-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com> Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
This commit is contained in:
parent
84ed4456fc
commit
706578ecc8
24 changed files with 3040 additions and 2583 deletions
|
@ -25,7 +25,6 @@
|
||||||
#include "controller/contrast_algorithm.h"
|
#include "controller/contrast_algorithm.h"
|
||||||
#include "controller/denoise_algorithm.h"
|
#include "controller/denoise_algorithm.h"
|
||||||
#include "controller/hdr_algorithm.h"
|
#include "controller/hdr_algorithm.h"
|
||||||
#include "controller/hdr_status.h"
|
|
||||||
#include "controller/lux_status.h"
|
#include "controller/lux_status.h"
|
||||||
#include "controller/sharpen_algorithm.h"
|
#include "controller/sharpen_algorithm.h"
|
||||||
#include "controller/statistics.h"
|
#include "controller/statistics.h"
|
||||||
|
@ -104,9 +103,8 @@ LOG_DEFINE_CATEGORY(IPARPI)
|
||||||
namespace ipa::RPi {
|
namespace ipa::RPi {
|
||||||
|
|
||||||
IpaBase::IpaBase()
|
IpaBase::IpaBase()
|
||||||
: controller_(), frameLengths_(FrameLengthsQueueSize, 0s), statsMetadataOutput_(false),
|
: controller_(), frameLengths_(FrameLengthsQueueSize, 0s), stitchSwapBuffers_(false), frameCount_(0),
|
||||||
frameCount_(0), mistrustCount_(0), lastRunTimestamp_(0), firstStart_(true),
|
mistrustCount_(0), lastRunTimestamp_(0), firstStart_(true), flickerState_({ 0, 0s })
|
||||||
flickerState_({ 0, 0s })
|
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -299,6 +297,8 @@ void IpaBase::start(const ControlList &controls, StartResult *result)
|
||||||
result->controls = std::move(ctrls);
|
result->controls = std::move(ctrls);
|
||||||
setCameraTimeoutValue();
|
setCameraTimeoutValue();
|
||||||
}
|
}
|
||||||
|
/* Make a note of this as it tells us the HDR status of the first few frames. */
|
||||||
|
hdrStatus_ = agcStatus.hdr;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Initialise frame counts, and decide how many frames must be hidden or
|
* Initialise frame counts, and decide how many frames must be hidden or
|
||||||
|
@ -402,11 +402,17 @@ void IpaBase::prepareIsp(const PrepareParams ¶ms)
|
||||||
* sensor exposure/gain changes. So fetch it from the metadata list
|
* sensor exposure/gain changes. So fetch it from the metadata list
|
||||||
* indexed by the IPA cookie returned, and put it in the current frame
|
* indexed by the IPA cookie returned, and put it in the current frame
|
||||||
* metadata.
|
* metadata.
|
||||||
|
*
|
||||||
|
* Note if the HDR mode has changed, as things like tonemaps may need updating.
|
||||||
*/
|
*/
|
||||||
AgcStatus agcStatus;
|
AgcStatus agcStatus;
|
||||||
|
bool hdrChange = false;
|
||||||
RPiController::Metadata &delayedMetadata = rpiMetadata_[params.delayContext];
|
RPiController::Metadata &delayedMetadata = rpiMetadata_[params.delayContext];
|
||||||
if (!delayedMetadata.get<AgcStatus>("agc.status", agcStatus))
|
if (!delayedMetadata.get<AgcStatus>("agc.status", agcStatus)) {
|
||||||
rpiMetadata.set("agc.delayed_status", agcStatus);
|
rpiMetadata.set("agc.delayed_status", agcStatus);
|
||||||
|
hdrChange = agcStatus.hdr.mode != hdrStatus_.mode;
|
||||||
|
hdrStatus_ = agcStatus.hdr;
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* This may overwrite the DeviceStatus using values from the sensor
|
* This may overwrite the DeviceStatus using values from the sensor
|
||||||
|
@ -417,7 +423,7 @@ void IpaBase::prepareIsp(const PrepareParams ¶ms)
|
||||||
/* Allow a 10% margin on the comparison below. */
|
/* Allow a 10% margin on the comparison below. */
|
||||||
Duration delta = (frameTimestamp - lastRunTimestamp_) * 1.0ns;
|
Duration delta = (frameTimestamp - lastRunTimestamp_) * 1.0ns;
|
||||||
if (lastRunTimestamp_ && frameCount_ > dropFrameCount_ &&
|
if (lastRunTimestamp_ && frameCount_ > dropFrameCount_ &&
|
||||||
delta < controllerMinFrameDuration * 0.9) {
|
delta < controllerMinFrameDuration * 0.9 && !hdrChange) {
|
||||||
/*
|
/*
|
||||||
* Ensure we merge the previous frame's metadata with the current
|
* Ensure we merge the previous frame's metadata with the current
|
||||||
* frame. This will not overwrite exposure/gain values for the
|
* frame. This will not overwrite exposure/gain values for the
|
||||||
|
@ -454,7 +460,7 @@ void IpaBase::prepareIsp(const PrepareParams ¶ms)
|
||||||
reportMetadata(ipaContext);
|
reportMetadata(ipaContext);
|
||||||
|
|
||||||
/* Ready to push the input buffer into the ISP. */
|
/* Ready to push the input buffer into the ISP. */
|
||||||
prepareIspComplete.emit(params.buffers, false);
|
prepareIspComplete.emit(params.buffers, stitchSwapBuffers_);
|
||||||
}
|
}
|
||||||
|
|
||||||
void IpaBase::processStats(const ProcessParams ¶ms)
|
void IpaBase::processStats(const ProcessParams ¶ms)
|
||||||
|
@ -701,14 +707,18 @@ static const std::map<int32_t, RPiController::AfAlgorithm::AfPause> AfPauseTable
|
||||||
|
|
||||||
static const std::map<int32_t, std::string> HdrModeTable = {
|
static const std::map<int32_t, std::string> HdrModeTable = {
|
||||||
{ controls::HdrModeOff, "Off" },
|
{ controls::HdrModeOff, "Off" },
|
||||||
|
{ controls::HdrModeMultiExposureUnmerged, "MultiExposureUnmerged" },
|
||||||
{ controls::HdrModeMultiExposure, "MultiExposure" },
|
{ controls::HdrModeMultiExposure, "MultiExposure" },
|
||||||
{ controls::HdrModeSingleExposure, "SingleExposure" },
|
{ controls::HdrModeSingleExposure, "SingleExposure" },
|
||||||
|
{ controls::HdrModeNight, "Night" },
|
||||||
};
|
};
|
||||||
|
|
||||||
void IpaBase::applyControls(const ControlList &controls)
|
void IpaBase::applyControls(const ControlList &controls)
|
||||||
{
|
{
|
||||||
using RPiController::AgcAlgorithm;
|
using RPiController::AgcAlgorithm;
|
||||||
using RPiController::AfAlgorithm;
|
using RPiController::AfAlgorithm;
|
||||||
|
using RPiController::ContrastAlgorithm;
|
||||||
|
using RPiController::DenoiseAlgorithm;
|
||||||
using RPiController::HdrAlgorithm;
|
using RPiController::HdrAlgorithm;
|
||||||
|
|
||||||
/* Clear the return metadata buffer. */
|
/* Clear the return metadata buffer. */
|
||||||
|
@ -1200,9 +1210,32 @@ void IpaBase::applyControls(const ControlList &controls)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (hdr->setMode(mode->second) == 0)
|
if (hdr->setMode(mode->second) == 0) {
|
||||||
agc->setActiveChannels(hdr->getChannels());
|
agc->setActiveChannels(hdr->getChannels());
|
||||||
else
|
|
||||||
|
/* We also disable adpative contrast enhancement if HDR is running. */
|
||||||
|
ContrastAlgorithm *contrast =
|
||||||
|
dynamic_cast<ContrastAlgorithm *>(controller_.getAlgorithm("contrast"));
|
||||||
|
if (contrast) {
|
||||||
|
if (mode->second == "Off")
|
||||||
|
contrast->restoreCe();
|
||||||
|
else
|
||||||
|
contrast->enableCe(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
DenoiseAlgorithm *denoise =
|
||||||
|
dynamic_cast<DenoiseAlgorithm *>(controller_.getAlgorithm("denoise"));
|
||||||
|
if (denoise) {
|
||||||
|
/* \todo - make the HDR mode say what denoise it wants? */
|
||||||
|
if (mode->second == "Night")
|
||||||
|
denoise->setConfig("night");
|
||||||
|
else if (mode->second == "SingleExposure")
|
||||||
|
denoise->setConfig("hdr");
|
||||||
|
/* MultiExposure doesn't need extra extra denoise. */
|
||||||
|
else
|
||||||
|
denoise->setConfig("normal");
|
||||||
|
}
|
||||||
|
} else
|
||||||
LOG(IPARPI, Warning)
|
LOG(IPARPI, Warning)
|
||||||
<< "HDR mode " << mode->second << " not supported";
|
<< "HDR mode " << mode->second << " not supported";
|
||||||
|
|
||||||
|
@ -1360,12 +1393,31 @@ void IpaBase::reportMetadata(unsigned int ipaContext)
|
||||||
libcameraMetadata_.set(controls::AfPauseState, p);
|
libcameraMetadata_.set(controls::AfPauseState, p);
|
||||||
}
|
}
|
||||||
|
|
||||||
const HdrStatus *hdrStatus = rpiMetadata.getLocked<HdrStatus>("hdr.status");
|
/*
|
||||||
if (hdrStatus) {
|
* THe HDR algorithm sets the HDR channel into the agc.status at the time that those
|
||||||
if (hdrStatus->channel == "short")
|
* AGC parameters were calculated several frames ago, so it comes back to us now in
|
||||||
|
* the delayed_status. If this frame is too soon after a mode switch for the
|
||||||
|
* delayed_status to be available, we use the HDR status that came out of the
|
||||||
|
* switchMode call.
|
||||||
|
*/
|
||||||
|
const AgcStatus *agcStatus = rpiMetadata.getLocked<AgcStatus>("agc.delayed_status");
|
||||||
|
const HdrStatus &hdrStatus = agcStatus ? agcStatus->hdr : hdrStatus_;
|
||||||
|
if (!hdrStatus.mode.empty() && hdrStatus.mode != "Off") {
|
||||||
|
int32_t hdrMode = controls::HdrModeOff;
|
||||||
|
for (auto const &[mode, name] : HdrModeTable) {
|
||||||
|
if (hdrStatus.mode == name) {
|
||||||
|
hdrMode = mode;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
libcameraMetadata_.set(controls::HdrMode, hdrMode);
|
||||||
|
|
||||||
|
if (hdrStatus.channel == "short")
|
||||||
libcameraMetadata_.set(controls::HdrChannel, controls::HdrChannelShort);
|
libcameraMetadata_.set(controls::HdrChannel, controls::HdrChannelShort);
|
||||||
else if (hdrStatus->channel == "long")
|
else if (hdrStatus.channel == "long")
|
||||||
libcameraMetadata_.set(controls::HdrChannel, controls::HdrChannelLong);
|
libcameraMetadata_.set(controls::HdrChannel, controls::HdrChannelLong);
|
||||||
|
else if (hdrStatus.channel == "medium")
|
||||||
|
libcameraMetadata_.set(controls::HdrChannel, controls::HdrChannelMedium);
|
||||||
else
|
else
|
||||||
libcameraMetadata_.set(controls::HdrChannel, controls::HdrChannelNone);
|
libcameraMetadata_.set(controls::HdrChannel, controls::HdrChannelNone);
|
||||||
}
|
}
|
||||||
|
|
|
@ -22,6 +22,7 @@
|
||||||
#include "controller/agc_status.h"
|
#include "controller/agc_status.h"
|
||||||
#include "controller/camera_mode.h"
|
#include "controller/camera_mode.h"
|
||||||
#include "controller/controller.h"
|
#include "controller/controller.h"
|
||||||
|
#include "controller/hdr_status.h"
|
||||||
#include "controller/metadata.h"
|
#include "controller/metadata.h"
|
||||||
|
|
||||||
namespace libcamera {
|
namespace libcamera {
|
||||||
|
@ -64,6 +65,12 @@ protected:
|
||||||
ControlList libcameraMetadata_;
|
ControlList libcameraMetadata_;
|
||||||
bool statsMetadataOutput_;
|
bool statsMetadataOutput_;
|
||||||
|
|
||||||
|
/* Remember the HDR status after a mode switch. */
|
||||||
|
HdrStatus hdrStatus_;
|
||||||
|
|
||||||
|
/* Whether the stitch block (if available) needs to swap buffers. */
|
||||||
|
bool stitchSwapBuffers_;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
/* Number of metadata objects available in the context list. */
|
/* Number of metadata objects available in the context list. */
|
||||||
static constexpr unsigned int numMetadataContexts = 16;
|
static constexpr unsigned int numMetadataContexts = 16;
|
||||||
|
|
|
@ -7,6 +7,8 @@
|
||||||
|
|
||||||
#include "hdr.h"
|
#include "hdr.h"
|
||||||
|
|
||||||
|
#include <cmath>
|
||||||
|
|
||||||
#include <libcamera/base/log.h>
|
#include <libcamera/base/log.h>
|
||||||
|
|
||||||
#include "../agc_status.h"
|
#include "../agc_status.h"
|
||||||
|
@ -39,25 +41,52 @@ void HdrConfig::read(const libcamera::YamlObject ¶ms, const std::string &mod
|
||||||
channelMap[v.get<unsigned int>().value()] = k;
|
channelMap[v.get<unsigned int>().value()] = k;
|
||||||
|
|
||||||
/* Lens shading related parameters. */
|
/* Lens shading related parameters. */
|
||||||
if (params.contains("spatial_gain")) {
|
if (params.contains("spatial_gain_curve")) {
|
||||||
spatialGain.read(params["spatial_gain"]);
|
spatialGainCurve.read(params["spatial_gain_curve"]);
|
||||||
diffusion = params["diffusion"].get<unsigned int>(3);
|
} else if (params.contains("spatial_gain")) {
|
||||||
/* Clip to an arbitrary limit just to stop typos from killing the system! */
|
double spatialGain = params["spatial_gain"].get<double>(2.0);
|
||||||
const unsigned int MAX_DIFFUSION = 15;
|
spatialGainCurve.append(0.0, spatialGain);
|
||||||
if (diffusion > MAX_DIFFUSION) {
|
spatialGainCurve.append(0.01, spatialGain);
|
||||||
diffusion = MAX_DIFFUSION;
|
spatialGainCurve.append(0.06, 1.0); /* maybe make this programmable? */
|
||||||
LOG(RPiHdr, Warning) << "Diffusion value clipped to " << MAX_DIFFUSION;
|
spatialGainCurve.append(1.0, 1.0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
diffusion = params["diffusion"].get<unsigned int>(3);
|
||||||
|
/* Clip to an arbitrary limit just to stop typos from killing the system! */
|
||||||
|
const unsigned int MAX_DIFFUSION = 15;
|
||||||
|
if (diffusion > MAX_DIFFUSION) {
|
||||||
|
diffusion = MAX_DIFFUSION;
|
||||||
|
LOG(RPiHdr, Warning) << "Diffusion value clipped to " << MAX_DIFFUSION;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Read any tonemap parameters. */
|
/* Read any tonemap parameters. */
|
||||||
tonemapEnable = params["tonemap_enable"].get<int>(0);
|
tonemapEnable = params["tonemap_enable"].get<int>(0);
|
||||||
detailConstant = params["detail_constant"].get<uint16_t>(50);
|
detailConstant = params["detail_constant"].get<uint16_t>(0);
|
||||||
detailSlope = params["detail_slope"].get<double>(8.0);
|
detailSlope = params["detail_slope"].get<double>(0.0);
|
||||||
iirStrength = params["iir_strength"].get<double>(8.0);
|
iirStrength = params["iir_strength"].get<double>(8.0);
|
||||||
strength = params["strength"].get<double>(1.5);
|
strength = params["strength"].get<double>(1.5);
|
||||||
if (tonemapEnable)
|
if (tonemapEnable)
|
||||||
tonemap.read(params["tonemap"]);
|
tonemap.read(params["tonemap"]);
|
||||||
|
speed = params["speed"].get<double>(1.0);
|
||||||
|
if (params.contains("hi_quantile_targets")) {
|
||||||
|
hiQuantileTargets = params["hi_quantile_targets"].getList<double>().value();
|
||||||
|
if (hiQuantileTargets.empty() || hiQuantileTargets.size() % 2)
|
||||||
|
LOG(RPiHdr, Fatal) << "hi_quantile_targets much be even and non-empty";
|
||||||
|
} else
|
||||||
|
hiQuantileTargets = { 0.95, 0.65, 0.5, 0.28, 0.3, 0.25 };
|
||||||
|
hiQuantileMaxGain = params["hi_quantile_max_gain"].get<double>(1.6);
|
||||||
|
if (params.contains("quantile_targets")) {
|
||||||
|
quantileTargets = params["quantile_targets"].getList<double>().value();
|
||||||
|
if (quantileTargets.empty() || quantileTargets.size() % 2)
|
||||||
|
LOG(RPiHdr, Fatal) << "quantile_targets much be even and non-empty";
|
||||||
|
} else
|
||||||
|
quantileTargets = { 0.2, 0.03, 1.0, 0.15 };
|
||||||
|
powerMin = params["power_min"].get<double>(0.65);
|
||||||
|
powerMax = params["power_max"].get<double>(1.0);
|
||||||
|
if (params.contains("contrast_adjustments")) {
|
||||||
|
contrastAdjustments = params["contrast_adjustments"].getList<double>().value();
|
||||||
|
} else
|
||||||
|
contrastAdjustments = { 0.5, 0.75 };
|
||||||
|
|
||||||
/* Read any stitch parameters. */
|
/* Read any stitch parameters. */
|
||||||
stitchEnable = params["stitch_enable"].get<int>(0);
|
stitchEnable = params["stitch_enable"].get<int>(0);
|
||||||
|
@ -159,7 +188,7 @@ void Hdr::prepare(Metadata *imageMetadata)
|
||||||
}
|
}
|
||||||
|
|
||||||
HdrConfig &config = it->second;
|
HdrConfig &config = it->second;
|
||||||
if (config.spatialGain.empty())
|
if (config.spatialGainCurve.empty())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
AlscStatus alscStatus{}; /* some compilers seem to require the braces */
|
AlscStatus alscStatus{}; /* some compilers seem to require the braces */
|
||||||
|
@ -205,10 +234,61 @@ bool Hdr::updateTonemap([[maybe_unused]] StatisticsPtr &stats, HdrConfig &config
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* If we wanted to build or adjust tonemaps dynamically, this would be the place
|
* Create a tonemap dynamically. We have three ingredients.
|
||||||
* to do it. But for now we seem to be getting by without.
|
*
|
||||||
|
* 1. We have a list of "hi quantiles" and "targets". We use these to judge if
|
||||||
|
* the image does seem to be reasonably saturated. If it isn't, we calculate
|
||||||
|
* a gain that we will feed as a linear factor into the tonemap generation.
|
||||||
|
* This prevents unsaturated images from beoming quite so "flat".
|
||||||
|
*
|
||||||
|
* 2. We have a list of quantile/target pairs for the bottom of the histogram.
|
||||||
|
* We use these to calculate how much gain we must apply to the bottom of the
|
||||||
|
* tonemap. We apply this gain as a power curve so as not to blow out the top
|
||||||
|
* end.
|
||||||
|
*
|
||||||
|
* 3. Finally, when we generate the tonemap, we have some contrast adjustments
|
||||||
|
* for the bottom because we know that power curves can start quite steeply and
|
||||||
|
* cause a washed-out look.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
/* Compute the linear gain from the headroom for saturation at the top. */
|
||||||
|
double gain = 10; /* arbitrary, but hiQuantileMaxGain will clamp it later */
|
||||||
|
for (unsigned int i = 0; i < config.hiQuantileTargets.size(); i += 2) {
|
||||||
|
double quantile = config.hiQuantileTargets[i];
|
||||||
|
double target = config.hiQuantileTargets[i + 1];
|
||||||
|
double value = stats->yHist.interQuantileMean(quantile, 1.0) / 1024.0;
|
||||||
|
double newGain = target / (value + 0.01);
|
||||||
|
gain = std::min(gain, newGain);
|
||||||
|
}
|
||||||
|
gain = std::clamp(gain, 1.0, config.hiQuantileMaxGain);
|
||||||
|
|
||||||
|
/* Compute the power curve from the amount of gain needed at the bottom. */
|
||||||
|
double min_power = 2; /* arbitrary, but config.powerMax will clamp it later */
|
||||||
|
for (unsigned int i = 0; i < config.quantileTargets.size(); i += 2) {
|
||||||
|
double quantile = config.quantileTargets[i];
|
||||||
|
double target = config.quantileTargets[i + 1];
|
||||||
|
double value = stats->yHist.interQuantileMean(0, quantile) / 1024.0;
|
||||||
|
value = std::min(value * gain, 1.0);
|
||||||
|
double power = log(target + 1e-6) / log(value + 1e-6);
|
||||||
|
min_power = std::min(min_power, power);
|
||||||
|
}
|
||||||
|
double power = std::clamp(min_power, config.powerMin, config.powerMax);
|
||||||
|
|
||||||
|
/* Generate the tonemap, including the contrast adjustment factors. */
|
||||||
|
Pwl tonemap;
|
||||||
|
tonemap.append(0, 0);
|
||||||
|
for (unsigned int i = 0; i <= 6; i++) {
|
||||||
|
double x = 1 << (i + 9); /* x loops from 512 to 32768 inclusive */
|
||||||
|
double y = pow(std::min(x * gain, 65535.0) / 65536.0, power) * 65536;
|
||||||
|
if (i < config.contrastAdjustments.size())
|
||||||
|
y *= config.contrastAdjustments[i];
|
||||||
|
if (!tonemap_.empty())
|
||||||
|
y = y * config.speed + tonemap_.eval(x) * (1 - config.speed);
|
||||||
|
tonemap.append(x, y);
|
||||||
|
}
|
||||||
|
tonemap.append(65535, 65535);
|
||||||
|
tonemap_ = tonemap;
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -255,7 +335,7 @@ static void averageGains(std::vector<double> &src, std::vector<double> &dst, con
|
||||||
|
|
||||||
void Hdr::updateGains(StatisticsPtr &stats, HdrConfig &config)
|
void Hdr::updateGains(StatisticsPtr &stats, HdrConfig &config)
|
||||||
{
|
{
|
||||||
if (config.spatialGain.empty())
|
if (config.spatialGainCurve.empty())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
/* When alternating exposures, only compute these gains for the short frame. */
|
/* When alternating exposures, only compute these gains for the short frame. */
|
||||||
|
@ -270,7 +350,7 @@ void Hdr::updateGains(StatisticsPtr &stats, HdrConfig &config)
|
||||||
double g = region.val.gSum / counted;
|
double g = region.val.gSum / counted;
|
||||||
double b = region.val.bSum / counted;
|
double b = region.val.bSum / counted;
|
||||||
double brightness = std::max({ r, g, b }) / 65535;
|
double brightness = std::max({ r, g, b }) / 65535;
|
||||||
gains_[0][i] = config.spatialGain.eval(brightness);
|
gains_[0][i] = config.spatialGainCurve.eval(brightness);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Ping-pong between the two gains_ buffers. */
|
/* Ping-pong between the two gains_ buffers. */
|
||||||
|
|
|
@ -26,7 +26,7 @@ struct HdrConfig {
|
||||||
std::map<unsigned int, std::string> channelMap;
|
std::map<unsigned int, std::string> channelMap;
|
||||||
|
|
||||||
/* Lens shading related parameters. */
|
/* Lens shading related parameters. */
|
||||||
Pwl spatialGain; /* Brightness to gain curve for different image regions. */
|
Pwl spatialGainCurve; /* Brightness to gain curve for different image regions. */
|
||||||
unsigned int diffusion; /* How much to diffuse the gain spatially. */
|
unsigned int diffusion; /* How much to diffuse the gain spatially. */
|
||||||
|
|
||||||
/* Tonemap related parameters. */
|
/* Tonemap related parameters. */
|
||||||
|
@ -36,6 +36,14 @@ struct HdrConfig {
|
||||||
double iirStrength;
|
double iirStrength;
|
||||||
double strength;
|
double strength;
|
||||||
Pwl tonemap;
|
Pwl tonemap;
|
||||||
|
/* These relate to adaptive tonemap calculation. */
|
||||||
|
double speed;
|
||||||
|
std::vector<double> hiQuantileTargets; /* quantiles to check for unsaturated images */
|
||||||
|
double hiQuantileMaxGain; /* the max gain we'll apply when unsaturated */
|
||||||
|
std::vector<double> quantileTargets; /* target values for histogram quantiles */
|
||||||
|
double powerMin; /* minimum tonemap power */
|
||||||
|
double powerMax; /* maximum tonemap power */
|
||||||
|
std::vector<double> contrastAdjustments; /* any contrast adjustment factors */
|
||||||
|
|
||||||
/* Stitch related parameters. */
|
/* Stitch related parameters. */
|
||||||
bool stitchEnable;
|
bool stitchEnable;
|
||||||
|
|
|
@ -131,282 +131,308 @@
|
||||||
{
|
{
|
||||||
"rpi.agc":
|
"rpi.agc":
|
||||||
{
|
{
|
||||||
"channels":
|
"channels": [
|
||||||
[
|
{
|
||||||
{
|
"metering_modes":
|
||||||
"metering_modes":
|
{
|
||||||
{
|
"centre-weighted":
|
||||||
"centre-weighted":
|
{
|
||||||
{
|
"weights":
|
||||||
"weights": [ 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
[
|
||||||
},
|
3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
"spot":
|
]
|
||||||
{
|
},
|
||||||
"weights": [ 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
|
"spot":
|
||||||
},
|
{
|
||||||
"matrix":
|
"weights":
|
||||||
{
|
[
|
||||||
"weights": [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
|
2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
}
|
]
|
||||||
},
|
},
|
||||||
"exposure_modes":
|
"matrix":
|
||||||
{
|
{
|
||||||
"normal":
|
"weights":
|
||||||
{
|
[
|
||||||
"shutter": [ 100, 10000, 30000, 60000, 66666 ],
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
]
|
||||||
},
|
}
|
||||||
"short":
|
},
|
||||||
{
|
"exposure_modes":
|
||||||
"shutter": [ 100, 5000, 10000, 20000, 33333 ],
|
{
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
"normal":
|
||||||
},
|
{
|
||||||
"long":
|
"shutter": [ 100, 10000, 30000, 60000, 66666 ],
|
||||||
{
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
||||||
"shutter": [ 100, 10000, 30000, 60000, 120000 ],
|
},
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
"short":
|
||||||
}
|
{
|
||||||
},
|
"shutter": [ 100, 5000, 10000, 20000, 33333 ],
|
||||||
"constraint_modes":
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
||||||
{
|
},
|
||||||
"normal": [
|
"long":
|
||||||
{
|
{
|
||||||
"bound": "LOWER",
|
"shutter": [ 100, 10000, 30000, 60000, 120000 ],
|
||||||
"q_lo": 0.98,
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
||||||
"q_hi": 1.0,
|
}
|
||||||
"y_target":
|
},
|
||||||
[
|
"constraint_modes":
|
||||||
0, 0.5,
|
{
|
||||||
1000, 0.5
|
"normal": [
|
||||||
]
|
{
|
||||||
}
|
"bound": "LOWER",
|
||||||
],
|
"q_lo": 0.98,
|
||||||
"highlight": [
|
"q_hi": 1.0,
|
||||||
{
|
"y_target":
|
||||||
"bound": "LOWER",
|
[
|
||||||
"q_lo": 0.98,
|
0, 0.5,
|
||||||
"q_hi": 1.0,
|
1000, 0.5
|
||||||
"y_target":
|
]
|
||||||
[
|
}
|
||||||
0, 0.5,
|
],
|
||||||
1000, 0.5
|
"highlight": [
|
||||||
]
|
{
|
||||||
},
|
"bound": "LOWER",
|
||||||
{
|
"q_lo": 0.98,
|
||||||
"bound": "UPPER",
|
"q_hi": 1.0,
|
||||||
"q_lo": 0.98,
|
"y_target":
|
||||||
"q_hi": 1.0,
|
[
|
||||||
"y_target":
|
0, 0.5,
|
||||||
[
|
1000, 0.5
|
||||||
0, 0.8,
|
]
|
||||||
1000, 0.8
|
},
|
||||||
]
|
{
|
||||||
}
|
"bound": "UPPER",
|
||||||
],
|
"q_lo": 0.98,
|
||||||
"shadows": [
|
"q_hi": 1.0,
|
||||||
{
|
"y_target":
|
||||||
"bound": "LOWER",
|
[
|
||||||
"q_lo": 0.0,
|
0, 0.8,
|
||||||
"q_hi": 0.5,
|
1000, 0.8
|
||||||
"y_target":
|
]
|
||||||
[
|
}
|
||||||
0, 0.17,
|
],
|
||||||
1000, 0.17
|
"shadows": [
|
||||||
]
|
{
|
||||||
}
|
"bound": "LOWER",
|
||||||
]
|
"q_lo": 0.0,
|
||||||
},
|
"q_hi": 0.5,
|
||||||
"y_target":
|
"y_target":
|
||||||
[
|
[
|
||||||
0, 0.16,
|
0, 0.17,
|
||||||
1000, 0.165,
|
1000, 0.17
|
||||||
10000, 0.17
|
]
|
||||||
]
|
}
|
||||||
},
|
]
|
||||||
{
|
},
|
||||||
"base_ev": 0.125,
|
"y_target":
|
||||||
"metering_modes":
|
[
|
||||||
{
|
0, 0.16,
|
||||||
"centre-weighted":
|
1000, 0.165,
|
||||||
{
|
10000, 0.17
|
||||||
"weights": [ 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
]
|
||||||
},
|
},
|
||||||
"spot":
|
{
|
||||||
{
|
"base_ev": 0.125,
|
||||||
"weights": [ 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
|
"metering_modes":
|
||||||
},
|
{
|
||||||
"matrix":
|
"centre-weighted":
|
||||||
{
|
{
|
||||||
"weights": [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
|
"weights":
|
||||||
}
|
[
|
||||||
},
|
3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
"exposure_modes":
|
]
|
||||||
{
|
},
|
||||||
"normal":
|
"spot":
|
||||||
{
|
{
|
||||||
"shutter": [ 100, 10000, 30000, 60000, 66666 ],
|
"weights":
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
[
|
||||||
},
|
2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
"short":
|
]
|
||||||
{
|
},
|
||||||
"shutter": [ 100, 5000, 10000, 20000, 33333 ],
|
"matrix":
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
{
|
||||||
},
|
"weights":
|
||||||
"long":
|
[
|
||||||
{
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||||
"shutter": [ 100, 10000, 30000, 60000, 120000 ],
|
]
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
}
|
||||||
}
|
},
|
||||||
},
|
"exposure_modes":
|
||||||
"constraint_modes":
|
{
|
||||||
{
|
"normal":
|
||||||
"normal": [
|
{
|
||||||
{
|
"shutter": [ 100, 10000, 30000, 60000, 66666 ],
|
||||||
"bound": "LOWER",
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
||||||
"q_lo": 0.98,
|
},
|
||||||
"q_hi": 1.0,
|
"short":
|
||||||
"y_target":
|
{
|
||||||
[
|
"shutter": [ 100, 5000, 10000, 20000, 33333 ],
|
||||||
0, 0.5,
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
||||||
1000, 0.5
|
},
|
||||||
]
|
"long":
|
||||||
}
|
{
|
||||||
],
|
"shutter": [ 100, 10000, 30000, 60000, 120000 ],
|
||||||
"highlight": [
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
||||||
{
|
}
|
||||||
"bound": "LOWER",
|
},
|
||||||
"q_lo": 0.98,
|
"constraint_modes":
|
||||||
"q_hi": 1.0,
|
{
|
||||||
"y_target":
|
"normal": [
|
||||||
[
|
{
|
||||||
0, 0.5,
|
"bound": "LOWER",
|
||||||
1000, 0.5
|
"q_lo": 0.98,
|
||||||
]
|
"q_hi": 1.0,
|
||||||
},
|
"y_target":
|
||||||
{
|
[
|
||||||
"bound": "UPPER",
|
0, 0.5,
|
||||||
"q_lo": 0.98,
|
1000, 0.5
|
||||||
"q_hi": 1.0,
|
]
|
||||||
"y_target":
|
}
|
||||||
[
|
],
|
||||||
0, 0.8,
|
"highlight": [
|
||||||
1000, 0.8
|
{
|
||||||
]
|
"bound": "LOWER",
|
||||||
}
|
"q_lo": 0.98,
|
||||||
],
|
"q_hi": 1.0,
|
||||||
"shadows": [
|
"y_target":
|
||||||
{
|
[
|
||||||
"bound": "LOWER",
|
0, 0.5,
|
||||||
"q_lo": 0.0,
|
1000, 0.5
|
||||||
"q_hi": 0.5,
|
]
|
||||||
"y_target":
|
},
|
||||||
[
|
{
|
||||||
0, 0.17,
|
"bound": "UPPER",
|
||||||
1000, 0.17
|
"q_lo": 0.98,
|
||||||
]
|
"q_hi": 1.0,
|
||||||
}
|
"y_target":
|
||||||
]
|
[
|
||||||
},
|
0, 0.8,
|
||||||
"y_target":
|
1000, 0.8
|
||||||
[
|
]
|
||||||
0, 0.16,
|
}
|
||||||
1000, 0.165,
|
],
|
||||||
10000, 0.17
|
"shadows": [
|
||||||
]
|
{
|
||||||
},
|
"bound": "LOWER",
|
||||||
{
|
"q_lo": 0.0,
|
||||||
"base_ev": 1.5,
|
"q_hi": 0.5,
|
||||||
"metering_modes":
|
"y_target":
|
||||||
{
|
[
|
||||||
"centre-weighted":
|
0, 0.17,
|
||||||
{
|
1000, 0.17
|
||||||
"weights": [ 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
]
|
||||||
},
|
}
|
||||||
"spot":
|
]
|
||||||
{
|
},
|
||||||
"weights": [ 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
|
"y_target":
|
||||||
},
|
[
|
||||||
"matrix":
|
0, 0.16,
|
||||||
{
|
1000, 0.165,
|
||||||
"weights": [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
|
10000, 0.17
|
||||||
}
|
]
|
||||||
},
|
},
|
||||||
"exposure_modes":
|
{
|
||||||
{
|
"base_ev": 1.5,
|
||||||
"normal":
|
"metering_modes":
|
||||||
{
|
{
|
||||||
"shutter": [ 100, 10000, 30000, 60000, 66666 ],
|
"centre-weighted":
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
{
|
||||||
},
|
"weights":
|
||||||
"short":
|
[
|
||||||
{
|
3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
"shutter": [ 100, 5000, 10000, 20000, 33333 ],
|
]
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
},
|
||||||
},
|
"spot":
|
||||||
"long":
|
{
|
||||||
{
|
"weights":
|
||||||
"shutter": [ 100, 10000, 30000, 60000, 120000 ],
|
[
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
}
|
]
|
||||||
},
|
},
|
||||||
"constraint_modes":
|
"matrix":
|
||||||
{
|
{
|
||||||
"normal": [
|
"weights":
|
||||||
{
|
[
|
||||||
"bound": "LOWER",
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||||
"q_lo": 0.98,
|
]
|
||||||
"q_hi": 1.0,
|
}
|
||||||
"y_target":
|
},
|
||||||
[
|
"exposure_modes":
|
||||||
0, 0.5,
|
{
|
||||||
1000, 0.5
|
"normal":
|
||||||
]
|
{
|
||||||
}
|
"shutter": [ 100, 10000, 30000, 60000, 66666 ],
|
||||||
],
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
||||||
"highlight": [
|
},
|
||||||
{
|
"short":
|
||||||
"bound": "LOWER",
|
{
|
||||||
"q_lo": 0.98,
|
"shutter": [ 100, 5000, 10000, 20000, 33333 ],
|
||||||
"q_hi": 1.0,
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
||||||
"y_target":
|
},
|
||||||
[
|
"long":
|
||||||
0, 0.5,
|
{
|
||||||
1000, 0.5
|
"shutter": [ 100, 10000, 30000, 60000, 120000 ],
|
||||||
]
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
||||||
},
|
}
|
||||||
{
|
},
|
||||||
"bound": "UPPER",
|
"constraint_modes":
|
||||||
"q_lo": 0.98,
|
{
|
||||||
"q_hi": 1.0,
|
"normal": [
|
||||||
"y_target":
|
{
|
||||||
[
|
"bound": "LOWER",
|
||||||
0, 0.8,
|
"q_lo": 0.98,
|
||||||
1000, 0.8
|
"q_hi": 1.0,
|
||||||
]
|
"y_target":
|
||||||
}
|
[
|
||||||
],
|
0, 0.5,
|
||||||
"shadows": [
|
1000, 0.5
|
||||||
{
|
]
|
||||||
"bound": "LOWER",
|
}
|
||||||
"q_lo": 0.0,
|
],
|
||||||
"q_hi": 0.5,
|
"highlight": [
|
||||||
"y_target":
|
{
|
||||||
[
|
"bound": "LOWER",
|
||||||
0, 0.17,
|
"q_lo": 0.98,
|
||||||
1000, 0.17
|
"q_hi": 1.0,
|
||||||
]
|
"y_target":
|
||||||
}
|
[
|
||||||
]
|
0, 0.5,
|
||||||
},
|
1000, 0.5
|
||||||
"y_target":
|
]
|
||||||
[
|
},
|
||||||
0, 0.16,
|
{
|
||||||
1000, 0.165,
|
"bound": "UPPER",
|
||||||
10000, 0.17
|
"q_lo": 0.98,
|
||||||
]
|
"q_hi": 1.0,
|
||||||
}
|
"y_target":
|
||||||
]
|
[
|
||||||
}
|
0, 0.8,
|
||||||
|
1000, 0.8
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"shadows": [
|
||||||
|
{
|
||||||
|
"bound": "LOWER",
|
||||||
|
"q_lo": 0.0,
|
||||||
|
"q_hi": 0.5,
|
||||||
|
"y_target":
|
||||||
|
[
|
||||||
|
0, 0.17,
|
||||||
|
1000, 0.17
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"y_target":
|
||||||
|
[
|
||||||
|
0, 0.16,
|
||||||
|
1000, 0.165,
|
||||||
|
10000, 0.17
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"rpi.alsc":
|
"rpi.alsc":
|
||||||
|
@ -651,20 +677,19 @@
|
||||||
{
|
{
|
||||||
"rpi.sharpen": { }
|
"rpi.sharpen": { }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"rpi.hdr":
|
"rpi.hdr":
|
||||||
{
|
{
|
||||||
"MultiExposure":
|
"MultiExposureUnmerged":
|
||||||
{
|
{
|
||||||
"cadence": [ 1, 2 ],
|
"cadence": [ 1, 2 ],
|
||||||
"channel_map": { "short": 1, "long": 2 }
|
"channel_map":
|
||||||
},
|
{
|
||||||
"SingleExposure":
|
"short": 1,
|
||||||
{
|
"long": 2
|
||||||
"cadence": [ 1 ],
|
}
|
||||||
"channel_map": { "short": 1 }
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
|
@ -47,282 +47,308 @@
|
||||||
{
|
{
|
||||||
"rpi.agc":
|
"rpi.agc":
|
||||||
{
|
{
|
||||||
"channels":
|
"channels": [
|
||||||
[
|
{
|
||||||
{
|
"metering_modes":
|
||||||
"metering_modes":
|
{
|
||||||
{
|
"centre-weighted":
|
||||||
"centre-weighted":
|
{
|
||||||
{
|
"weights":
|
||||||
"weights": [ 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
[
|
||||||
},
|
3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
"spot":
|
]
|
||||||
{
|
},
|
||||||
"weights": [ 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
|
"spot":
|
||||||
},
|
{
|
||||||
"matrix":
|
"weights":
|
||||||
{
|
[
|
||||||
"weights": [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
|
2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
}
|
]
|
||||||
},
|
},
|
||||||
"exposure_modes":
|
"matrix":
|
||||||
{
|
{
|
||||||
"normal":
|
"weights":
|
||||||
{
|
[
|
||||||
"shutter": [ 100, 10000, 30000, 60000, 66666 ],
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
]
|
||||||
},
|
}
|
||||||
"short":
|
},
|
||||||
{
|
"exposure_modes":
|
||||||
"shutter": [ 100, 5000, 10000, 20000, 33333 ],
|
{
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
"normal":
|
||||||
},
|
{
|
||||||
"long":
|
"shutter": [ 100, 10000, 30000, 60000, 66666 ],
|
||||||
{
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
||||||
"shutter": [ 100, 10000, 30000, 60000, 120000 ],
|
},
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
"short":
|
||||||
}
|
{
|
||||||
},
|
"shutter": [ 100, 5000, 10000, 20000, 33333 ],
|
||||||
"constraint_modes":
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
||||||
{
|
},
|
||||||
"normal": [
|
"long":
|
||||||
{
|
{
|
||||||
"bound": "LOWER",
|
"shutter": [ 100, 10000, 30000, 60000, 120000 ],
|
||||||
"q_lo": 0.98,
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
||||||
"q_hi": 1.0,
|
}
|
||||||
"y_target":
|
},
|
||||||
[
|
"constraint_modes":
|
||||||
0, 0.5,
|
{
|
||||||
1000, 0.5
|
"normal": [
|
||||||
]
|
{
|
||||||
}
|
"bound": "LOWER",
|
||||||
],
|
"q_lo": 0.98,
|
||||||
"highlight": [
|
"q_hi": 1.0,
|
||||||
{
|
"y_target":
|
||||||
"bound": "LOWER",
|
[
|
||||||
"q_lo": 0.98,
|
0, 0.5,
|
||||||
"q_hi": 1.0,
|
1000, 0.5
|
||||||
"y_target":
|
]
|
||||||
[
|
}
|
||||||
0, 0.5,
|
],
|
||||||
1000, 0.5
|
"highlight": [
|
||||||
]
|
{
|
||||||
},
|
"bound": "LOWER",
|
||||||
{
|
"q_lo": 0.98,
|
||||||
"bound": "UPPER",
|
"q_hi": 1.0,
|
||||||
"q_lo": 0.98,
|
"y_target":
|
||||||
"q_hi": 1.0,
|
[
|
||||||
"y_target":
|
0, 0.5,
|
||||||
[
|
1000, 0.5
|
||||||
0, 0.8,
|
]
|
||||||
1000, 0.8
|
},
|
||||||
]
|
{
|
||||||
}
|
"bound": "UPPER",
|
||||||
],
|
"q_lo": 0.98,
|
||||||
"shadows": [
|
"q_hi": 1.0,
|
||||||
{
|
"y_target":
|
||||||
"bound": "LOWER",
|
[
|
||||||
"q_lo": 0.0,
|
0, 0.8,
|
||||||
"q_hi": 0.5,
|
1000, 0.8
|
||||||
"y_target":
|
]
|
||||||
[
|
}
|
||||||
0, 0.17,
|
],
|
||||||
1000, 0.17
|
"shadows": [
|
||||||
]
|
{
|
||||||
}
|
"bound": "LOWER",
|
||||||
]
|
"q_lo": 0.0,
|
||||||
},
|
"q_hi": 0.5,
|
||||||
"y_target":
|
"y_target":
|
||||||
[
|
[
|
||||||
0, 0.16,
|
0, 0.17,
|
||||||
1000, 0.165,
|
1000, 0.17
|
||||||
10000, 0.17
|
]
|
||||||
]
|
}
|
||||||
},
|
]
|
||||||
{
|
},
|
||||||
"base_ev": 0.125,
|
"y_target":
|
||||||
"metering_modes":
|
[
|
||||||
{
|
0, 0.16,
|
||||||
"centre-weighted":
|
1000, 0.165,
|
||||||
{
|
10000, 0.17
|
||||||
"weights": [ 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
]
|
||||||
},
|
},
|
||||||
"spot":
|
{
|
||||||
{
|
"base_ev": 0.125,
|
||||||
"weights": [ 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
|
"metering_modes":
|
||||||
},
|
{
|
||||||
"matrix":
|
"centre-weighted":
|
||||||
{
|
{
|
||||||
"weights": [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
|
"weights":
|
||||||
}
|
[
|
||||||
},
|
3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
"exposure_modes":
|
]
|
||||||
{
|
},
|
||||||
"normal":
|
"spot":
|
||||||
{
|
{
|
||||||
"shutter": [ 100, 10000, 30000, 60000, 66666 ],
|
"weights":
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
[
|
||||||
},
|
2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
"short":
|
]
|
||||||
{
|
},
|
||||||
"shutter": [ 100, 5000, 10000, 20000, 33333 ],
|
"matrix":
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
{
|
||||||
},
|
"weights":
|
||||||
"long":
|
[
|
||||||
{
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||||
"shutter": [ 100, 10000, 30000, 60000, 120000 ],
|
]
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
}
|
||||||
}
|
},
|
||||||
},
|
"exposure_modes":
|
||||||
"constraint_modes":
|
{
|
||||||
{
|
"normal":
|
||||||
"normal": [
|
{
|
||||||
{
|
"shutter": [ 100, 10000, 30000, 60000, 66666 ],
|
||||||
"bound": "LOWER",
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
||||||
"q_lo": 0.98,
|
},
|
||||||
"q_hi": 1.0,
|
"short":
|
||||||
"y_target":
|
{
|
||||||
[
|
"shutter": [ 100, 5000, 10000, 20000, 33333 ],
|
||||||
0, 0.5,
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
||||||
1000, 0.5
|
},
|
||||||
]
|
"long":
|
||||||
}
|
{
|
||||||
],
|
"shutter": [ 100, 10000, 30000, 60000, 120000 ],
|
||||||
"highlight": [
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
||||||
{
|
}
|
||||||
"bound": "LOWER",
|
},
|
||||||
"q_lo": 0.98,
|
"constraint_modes":
|
||||||
"q_hi": 1.0,
|
{
|
||||||
"y_target":
|
"normal": [
|
||||||
[
|
{
|
||||||
0, 0.5,
|
"bound": "LOWER",
|
||||||
1000, 0.5
|
"q_lo": 0.98,
|
||||||
]
|
"q_hi": 1.0,
|
||||||
},
|
"y_target":
|
||||||
{
|
[
|
||||||
"bound": "UPPER",
|
0, 0.5,
|
||||||
"q_lo": 0.98,
|
1000, 0.5
|
||||||
"q_hi": 1.0,
|
]
|
||||||
"y_target":
|
}
|
||||||
[
|
],
|
||||||
0, 0.8,
|
"highlight": [
|
||||||
1000, 0.8
|
{
|
||||||
]
|
"bound": "LOWER",
|
||||||
}
|
"q_lo": 0.98,
|
||||||
],
|
"q_hi": 1.0,
|
||||||
"shadows": [
|
"y_target":
|
||||||
{
|
[
|
||||||
"bound": "LOWER",
|
0, 0.5,
|
||||||
"q_lo": 0.0,
|
1000, 0.5
|
||||||
"q_hi": 0.5,
|
]
|
||||||
"y_target":
|
},
|
||||||
[
|
{
|
||||||
0, 0.17,
|
"bound": "UPPER",
|
||||||
1000, 0.17
|
"q_lo": 0.98,
|
||||||
]
|
"q_hi": 1.0,
|
||||||
}
|
"y_target":
|
||||||
]
|
[
|
||||||
},
|
0, 0.8,
|
||||||
"y_target":
|
1000, 0.8
|
||||||
[
|
]
|
||||||
0, 0.16,
|
}
|
||||||
1000, 0.165,
|
],
|
||||||
10000, 0.17
|
"shadows": [
|
||||||
]
|
{
|
||||||
},
|
"bound": "LOWER",
|
||||||
{
|
"q_lo": 0.0,
|
||||||
"base_ev": 1.5,
|
"q_hi": 0.5,
|
||||||
"metering_modes":
|
"y_target":
|
||||||
{
|
[
|
||||||
"centre-weighted":
|
0, 0.17,
|
||||||
{
|
1000, 0.17
|
||||||
"weights": [ 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
]
|
||||||
},
|
}
|
||||||
"spot":
|
]
|
||||||
{
|
},
|
||||||
"weights": [ 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
|
"y_target":
|
||||||
},
|
[
|
||||||
"matrix":
|
0, 0.16,
|
||||||
{
|
1000, 0.165,
|
||||||
"weights": [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
|
10000, 0.17
|
||||||
}
|
]
|
||||||
},
|
},
|
||||||
"exposure_modes":
|
{
|
||||||
{
|
"base_ev": 1.5,
|
||||||
"normal":
|
"metering_modes":
|
||||||
{
|
{
|
||||||
"shutter": [ 100, 10000, 30000, 60000, 66666 ],
|
"centre-weighted":
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
{
|
||||||
},
|
"weights":
|
||||||
"short":
|
[
|
||||||
{
|
3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
"shutter": [ 100, 5000, 10000, 20000, 33333 ],
|
]
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
},
|
||||||
},
|
"spot":
|
||||||
"long":
|
{
|
||||||
{
|
"weights":
|
||||||
"shutter": [ 100, 10000, 30000, 60000, 120000 ],
|
[
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
}
|
]
|
||||||
},
|
},
|
||||||
"constraint_modes":
|
"matrix":
|
||||||
{
|
{
|
||||||
"normal": [
|
"weights":
|
||||||
{
|
[
|
||||||
"bound": "LOWER",
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||||
"q_lo": 0.98,
|
]
|
||||||
"q_hi": 1.0,
|
}
|
||||||
"y_target":
|
},
|
||||||
[
|
"exposure_modes":
|
||||||
0, 0.5,
|
{
|
||||||
1000, 0.5
|
"normal":
|
||||||
]
|
{
|
||||||
}
|
"shutter": [ 100, 10000, 30000, 60000, 66666 ],
|
||||||
],
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
||||||
"highlight": [
|
},
|
||||||
{
|
"short":
|
||||||
"bound": "LOWER",
|
{
|
||||||
"q_lo": 0.98,
|
"shutter": [ 100, 5000, 10000, 20000, 33333 ],
|
||||||
"q_hi": 1.0,
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
||||||
"y_target":
|
},
|
||||||
[
|
"long":
|
||||||
0, 0.5,
|
{
|
||||||
1000, 0.5
|
"shutter": [ 100, 10000, 30000, 60000, 120000 ],
|
||||||
]
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
||||||
},
|
}
|
||||||
{
|
},
|
||||||
"bound": "UPPER",
|
"constraint_modes":
|
||||||
"q_lo": 0.98,
|
{
|
||||||
"q_hi": 1.0,
|
"normal": [
|
||||||
"y_target":
|
{
|
||||||
[
|
"bound": "LOWER",
|
||||||
0, 0.8,
|
"q_lo": 0.98,
|
||||||
1000, 0.8
|
"q_hi": 1.0,
|
||||||
]
|
"y_target":
|
||||||
}
|
[
|
||||||
],
|
0, 0.5,
|
||||||
"shadows": [
|
1000, 0.5
|
||||||
{
|
]
|
||||||
"bound": "LOWER",
|
}
|
||||||
"q_lo": 0.0,
|
],
|
||||||
"q_hi": 0.5,
|
"highlight": [
|
||||||
"y_target":
|
{
|
||||||
[
|
"bound": "LOWER",
|
||||||
0, 0.17,
|
"q_lo": 0.98,
|
||||||
1000, 0.17
|
"q_hi": 1.0,
|
||||||
]
|
"y_target":
|
||||||
}
|
[
|
||||||
]
|
0, 0.5,
|
||||||
},
|
1000, 0.5
|
||||||
"y_target":
|
]
|
||||||
[
|
},
|
||||||
0, 0.16,
|
{
|
||||||
1000, 0.165,
|
"bound": "UPPER",
|
||||||
10000, 0.17
|
"q_lo": 0.98,
|
||||||
]
|
"q_hi": 1.0,
|
||||||
}
|
"y_target":
|
||||||
]
|
[
|
||||||
}
|
0, 0.8,
|
||||||
|
1000, 0.8
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"shadows": [
|
||||||
|
{
|
||||||
|
"bound": "LOWER",
|
||||||
|
"q_lo": 0.0,
|
||||||
|
"q_hi": 0.5,
|
||||||
|
"y_target":
|
||||||
|
[
|
||||||
|
0, 0.17,
|
||||||
|
1000, 0.17
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"y_target":
|
||||||
|
[
|
||||||
|
0, 0.16,
|
||||||
|
1000, 0.165,
|
||||||
|
10000, 0.17
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"rpi.alsc":
|
"rpi.alsc":
|
||||||
|
@ -585,20 +611,19 @@
|
||||||
{
|
{
|
||||||
"rpi.sharpen": { }
|
"rpi.sharpen": { }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"rpi.hdr":
|
"rpi.hdr":
|
||||||
{
|
{
|
||||||
"MultiExposure":
|
"MultiExposureUnmerged":
|
||||||
{
|
{
|
||||||
"cadence": [ 1, 2 ],
|
"cadence": [ 1, 2 ],
|
||||||
"channel_map": { "short": 1, "long": 2 }
|
"channel_map":
|
||||||
},
|
{
|
||||||
"SingleExposure":
|
"short": 1,
|
||||||
{
|
"long": 2
|
||||||
"cadence": [ 1 ],
|
}
|
||||||
"channel_map": { "short": 1 }
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
|
@ -52,15 +52,24 @@
|
||||||
{
|
{
|
||||||
"matrix":
|
"matrix":
|
||||||
{
|
{
|
||||||
"weights": [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
|
"weights":
|
||||||
|
[
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"centre-weighted":
|
"centre-weighted":
|
||||||
{
|
{
|
||||||
"weights": [ 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
"weights":
|
||||||
|
[
|
||||||
|
3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"spot":
|
"spot":
|
||||||
{
|
{
|
||||||
"weights": [ 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
|
"weights":
|
||||||
|
[
|
||||||
|
2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"exposure_modes":
|
"exposure_modes":
|
||||||
|
|
|
@ -135,15 +135,24 @@
|
||||||
{
|
{
|
||||||
"centre-weighted":
|
"centre-weighted":
|
||||||
{
|
{
|
||||||
"weights": [ 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
"weights":
|
||||||
|
[
|
||||||
|
3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"spot":
|
"spot":
|
||||||
{
|
{
|
||||||
"weights": [ 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
|
"weights":
|
||||||
|
[
|
||||||
|
2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"matrix":
|
"matrix":
|
||||||
{
|
{
|
||||||
"weights": [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
|
"weights":
|
||||||
|
[
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||||
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"exposure_modes":
|
"exposure_modes":
|
||||||
|
@ -431,4 +440,4 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
|
@ -38,15 +38,24 @@
|
||||||
{
|
{
|
||||||
"centre-weighted":
|
"centre-weighted":
|
||||||
{
|
{
|
||||||
"weights": [ 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
"weights":
|
||||||
|
[
|
||||||
|
3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"spot":
|
"spot":
|
||||||
{
|
{
|
||||||
"weights": [ 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
|
"weights":
|
||||||
|
[
|
||||||
|
2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"matrix":
|
"matrix":
|
||||||
{
|
{
|
||||||
"weights": [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
|
"weights":
|
||||||
|
[
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||||
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"exposure_modes":
|
"exposure_modes":
|
||||||
|
@ -228,4 +237,4 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
|
@ -133,15 +133,24 @@
|
||||||
{
|
{
|
||||||
"centre-weighted":
|
"centre-weighted":
|
||||||
{
|
{
|
||||||
"weights": [ 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
"weights":
|
||||||
|
[
|
||||||
|
3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"spot":
|
"spot":
|
||||||
{
|
{
|
||||||
"weights": [ 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
|
"weights":
|
||||||
|
[
|
||||||
|
2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"matrix":
|
"matrix":
|
||||||
{
|
{
|
||||||
"weights": [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
|
"weights":
|
||||||
|
[
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||||
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"exposure_modes":
|
"exposure_modes":
|
||||||
|
|
|
@ -115,16 +115,16 @@
|
||||||
"ct_curve":
|
"ct_curve":
|
||||||
[
|
[
|
||||||
2360.0, 0.6009, 0.3093,
|
2360.0, 0.6009, 0.3093,
|
||||||
2848.0, 0.5071, 0.4000,
|
2848.0, 0.5071, 0.4,
|
||||||
2903.0, 0.4905, 0.4392,
|
2903.0, 0.4905, 0.4392,
|
||||||
3628.0, 0.4261, 0.5564,
|
3628.0, 0.4261, 0.5564,
|
||||||
3643.0, 0.4228, 0.5623,
|
3643.0, 0.4228, 0.5623,
|
||||||
4660.0, 0.3529, 0.6800,
|
4660.0, 0.3529, 0.68,
|
||||||
5579.0, 0.3227, 0.7000,
|
5579.0, 0.3227, 0.7,
|
||||||
6125.0, 0.3129, 0.7100,
|
6125.0, 0.3129, 0.71,
|
||||||
6671.0, 0.3065, 0.7200,
|
6671.0, 0.3065, 0.72,
|
||||||
7217.0, 0.3014, 0.7300,
|
7217.0, 0.3014, 0.73,
|
||||||
7763.0, 0.2950, 0.7400,
|
7763.0, 0.295, 0.74,
|
||||||
9505.0, 0.2524, 0.7856
|
9505.0, 0.2524, 0.7856
|
||||||
],
|
],
|
||||||
"sensitivity_r": 1.05,
|
"sensitivity_r": 1.05,
|
||||||
|
@ -136,282 +136,308 @@
|
||||||
{
|
{
|
||||||
"rpi.agc":
|
"rpi.agc":
|
||||||
{
|
{
|
||||||
"channels":
|
"channels": [
|
||||||
[
|
|
||||||
{
|
{
|
||||||
"metering_modes":
|
"metering_modes":
|
||||||
{
|
{
|
||||||
"centre-weighted":
|
"centre-weighted":
|
||||||
{
|
{
|
||||||
"weights": [ 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
"weights":
|
||||||
},
|
[
|
||||||
"spot":
|
3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
{
|
]
|
||||||
"weights": [ 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
|
},
|
||||||
},
|
"spot":
|
||||||
"matrix":
|
{
|
||||||
{
|
"weights":
|
||||||
"weights": [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
|
[
|
||||||
}
|
2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
},
|
]
|
||||||
"exposure_modes":
|
},
|
||||||
{
|
"matrix":
|
||||||
"normal":
|
{
|
||||||
{
|
"weights":
|
||||||
"shutter": [ 100, 10000, 30000, 60000, 66666 ],
|
[
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||||
},
|
]
|
||||||
"short":
|
}
|
||||||
{
|
},
|
||||||
"shutter": [ 100, 5000, 10000, 20000, 33333 ],
|
"exposure_modes":
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
{
|
||||||
},
|
"normal":
|
||||||
"long":
|
{
|
||||||
{
|
"shutter": [ 100, 10000, 30000, 60000, 66666 ],
|
||||||
"shutter": [ 100, 10000, 30000, 60000, 120000 ],
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
},
|
||||||
}
|
"short":
|
||||||
},
|
{
|
||||||
"constraint_modes":
|
"shutter": [ 100, 5000, 10000, 20000, 33333 ],
|
||||||
{
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
||||||
"normal": [
|
},
|
||||||
{
|
"long":
|
||||||
"bound": "LOWER",
|
{
|
||||||
"q_lo": 0.98,
|
"shutter": [ 100, 10000, 30000, 60000, 120000 ],
|
||||||
"q_hi": 1.0,
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
||||||
"y_target":
|
}
|
||||||
[
|
},
|
||||||
0, 0.3,
|
"constraint_modes":
|
||||||
1000, 0.3
|
{
|
||||||
]
|
"normal": [
|
||||||
}
|
{
|
||||||
],
|
"bound": "LOWER",
|
||||||
"highlight": [
|
"q_lo": 0.98,
|
||||||
{
|
"q_hi": 1.0,
|
||||||
"bound": "LOWER",
|
"y_target":
|
||||||
"q_lo": 0.98,
|
[
|
||||||
"q_hi": 1.0,
|
0, 0.3,
|
||||||
"y_target":
|
1000, 0.3
|
||||||
[
|
]
|
||||||
0, 0.3,
|
}
|
||||||
1000, 0.3
|
],
|
||||||
]
|
"highlight": [
|
||||||
},
|
{
|
||||||
{
|
"bound": "LOWER",
|
||||||
"bound": "UPPER",
|
"q_lo": 0.98,
|
||||||
"q_lo": 0.98,
|
"q_hi": 1.0,
|
||||||
"q_hi": 1.0,
|
"y_target":
|
||||||
"y_target":
|
[
|
||||||
[
|
0, 0.3,
|
||||||
0, 0.8,
|
1000, 0.3
|
||||||
1000, 0.8
|
]
|
||||||
]
|
},
|
||||||
}
|
{
|
||||||
],
|
"bound": "UPPER",
|
||||||
"shadows": [
|
"q_lo": 0.98,
|
||||||
{
|
"q_hi": 1.0,
|
||||||
"bound": "LOWER",
|
"y_target":
|
||||||
"q_lo": 0.0,
|
[
|
||||||
"q_hi": 0.5,
|
0, 0.8,
|
||||||
"y_target":
|
1000, 0.8
|
||||||
[
|
]
|
||||||
0, 0.17,
|
}
|
||||||
1000, 0.17
|
],
|
||||||
]
|
"shadows": [
|
||||||
}
|
{
|
||||||
]
|
"bound": "LOWER",
|
||||||
},
|
"q_lo": 0.0,
|
||||||
"y_target":
|
"q_hi": 0.5,
|
||||||
[
|
"y_target":
|
||||||
0, 0.16,
|
[
|
||||||
1000, 0.165,
|
0, 0.17,
|
||||||
10000, 0.17
|
1000, 0.17
|
||||||
]
|
]
|
||||||
},
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"y_target":
|
||||||
|
[
|
||||||
|
0, 0.16,
|
||||||
|
1000, 0.165,
|
||||||
|
10000, 0.17
|
||||||
|
]
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"base_ev": 0.125,
|
"base_ev": 0.125,
|
||||||
"metering_modes":
|
"metering_modes":
|
||||||
{
|
{
|
||||||
"centre-weighted":
|
"centre-weighted":
|
||||||
{
|
{
|
||||||
"weights": [ 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
"weights":
|
||||||
},
|
[
|
||||||
"spot":
|
3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
{
|
]
|
||||||
"weights": [ 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
|
},
|
||||||
},
|
"spot":
|
||||||
"matrix":
|
{
|
||||||
{
|
"weights":
|
||||||
"weights": [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
|
[
|
||||||
}
|
2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
},
|
]
|
||||||
"exposure_modes":
|
},
|
||||||
{
|
"matrix":
|
||||||
"normal":
|
{
|
||||||
{
|
"weights":
|
||||||
"shutter": [ 100, 10000, 30000, 60000, 66666 ],
|
[
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||||
},
|
]
|
||||||
"short":
|
}
|
||||||
{
|
},
|
||||||
"shutter": [ 100, 5000, 10000, 20000, 33333 ],
|
"exposure_modes":
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
{
|
||||||
},
|
"normal":
|
||||||
"long":
|
{
|
||||||
{
|
"shutter": [ 100, 10000, 30000, 60000, 66666 ],
|
||||||
"shutter": [ 100, 10000, 30000, 60000, 120000 ],
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
},
|
||||||
}
|
"short":
|
||||||
},
|
{
|
||||||
"constraint_modes":
|
"shutter": [ 100, 5000, 10000, 20000, 33333 ],
|
||||||
{
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
||||||
"normal": [
|
},
|
||||||
{
|
"long":
|
||||||
"bound": "LOWER",
|
{
|
||||||
"q_lo": 0.98,
|
"shutter": [ 100, 10000, 30000, 60000, 120000 ],
|
||||||
"q_hi": 1.0,
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
||||||
"y_target":
|
}
|
||||||
[
|
},
|
||||||
0, 0.3,
|
"constraint_modes":
|
||||||
1000, 0.3
|
{
|
||||||
]
|
"normal": [
|
||||||
}
|
{
|
||||||
],
|
"bound": "LOWER",
|
||||||
"highlight": [
|
"q_lo": 0.98,
|
||||||
{
|
"q_hi": 1.0,
|
||||||
"bound": "LOWER",
|
"y_target":
|
||||||
"q_lo": 0.98,
|
[
|
||||||
"q_hi": 1.0,
|
0, 0.3,
|
||||||
"y_target":
|
1000, 0.3
|
||||||
[
|
]
|
||||||
0, 0.3,
|
}
|
||||||
1000, 0.3
|
],
|
||||||
]
|
"highlight": [
|
||||||
},
|
{
|
||||||
{
|
"bound": "LOWER",
|
||||||
"bound": "UPPER",
|
"q_lo": 0.98,
|
||||||
"q_lo": 0.98,
|
"q_hi": 1.0,
|
||||||
"q_hi": 1.0,
|
"y_target":
|
||||||
"y_target":
|
[
|
||||||
[
|
0, 0.3,
|
||||||
0, 0.8,
|
1000, 0.3
|
||||||
1000, 0.8
|
]
|
||||||
]
|
},
|
||||||
}
|
{
|
||||||
],
|
"bound": "UPPER",
|
||||||
"shadows": [
|
"q_lo": 0.98,
|
||||||
{
|
"q_hi": 1.0,
|
||||||
"bound": "LOWER",
|
"y_target":
|
||||||
"q_lo": 0.0,
|
[
|
||||||
"q_hi": 0.5,
|
0, 0.8,
|
||||||
"y_target":
|
1000, 0.8
|
||||||
[
|
]
|
||||||
0, 0.17,
|
}
|
||||||
1000, 0.17
|
],
|
||||||
]
|
"shadows": [
|
||||||
}
|
{
|
||||||
]
|
"bound": "LOWER",
|
||||||
},
|
"q_lo": 0.0,
|
||||||
"y_target":
|
"q_hi": 0.5,
|
||||||
[
|
"y_target":
|
||||||
0, 0.16,
|
[
|
||||||
1000, 0.165,
|
0, 0.17,
|
||||||
10000, 0.17
|
1000, 0.17
|
||||||
]
|
]
|
||||||
},
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"y_target":
|
||||||
|
[
|
||||||
|
0, 0.16,
|
||||||
|
1000, 0.165,
|
||||||
|
10000, 0.17
|
||||||
|
]
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"base_ev": 1.5,
|
"base_ev": 1.5,
|
||||||
"metering_modes":
|
"metering_modes":
|
||||||
{
|
{
|
||||||
"centre-weighted":
|
"centre-weighted":
|
||||||
{
|
{
|
||||||
"weights": [ 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
"weights":
|
||||||
},
|
[
|
||||||
"spot":
|
3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
{
|
]
|
||||||
"weights": [ 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
|
},
|
||||||
},
|
"spot":
|
||||||
"matrix":
|
{
|
||||||
{
|
"weights":
|
||||||
"weights": [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
|
[
|
||||||
}
|
2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
},
|
]
|
||||||
"exposure_modes":
|
},
|
||||||
{
|
"matrix":
|
||||||
"normal":
|
{
|
||||||
{
|
"weights":
|
||||||
"shutter": [ 100, 10000, 30000, 60000, 66666 ],
|
[
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||||
},
|
]
|
||||||
"short":
|
}
|
||||||
{
|
},
|
||||||
"shutter": [ 100, 5000, 10000, 20000, 33333 ],
|
"exposure_modes":
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
{
|
||||||
},
|
"normal":
|
||||||
"long":
|
{
|
||||||
{
|
"shutter": [ 100, 10000, 30000, 60000, 66666 ],
|
||||||
"shutter": [ 100, 10000, 30000, 60000, 120000 ],
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
},
|
||||||
}
|
"short":
|
||||||
},
|
{
|
||||||
"constraint_modes":
|
"shutter": [ 100, 5000, 10000, 20000, 33333 ],
|
||||||
{
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
||||||
"normal": [
|
},
|
||||||
{
|
"long":
|
||||||
"bound": "LOWER",
|
{
|
||||||
"q_lo": 0.98,
|
"shutter": [ 100, 10000, 30000, 60000, 120000 ],
|
||||||
"q_hi": 1.0,
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
||||||
"y_target":
|
}
|
||||||
[
|
},
|
||||||
0, 0.3,
|
"constraint_modes":
|
||||||
1000, 0.3
|
{
|
||||||
]
|
"normal": [
|
||||||
}
|
{
|
||||||
],
|
"bound": "LOWER",
|
||||||
"highlight": [
|
"q_lo": 0.98,
|
||||||
{
|
"q_hi": 1.0,
|
||||||
"bound": "LOWER",
|
"y_target":
|
||||||
"q_lo": 0.98,
|
[
|
||||||
"q_hi": 1.0,
|
0, 0.3,
|
||||||
"y_target":
|
1000, 0.3
|
||||||
[
|
]
|
||||||
0, 0.3,
|
}
|
||||||
1000, 0.3
|
],
|
||||||
]
|
"highlight": [
|
||||||
},
|
{
|
||||||
{
|
"bound": "LOWER",
|
||||||
"bound": "UPPER",
|
"q_lo": 0.98,
|
||||||
"q_lo": 0.98,
|
"q_hi": 1.0,
|
||||||
"q_hi": 1.0,
|
"y_target":
|
||||||
"y_target":
|
[
|
||||||
[
|
0, 0.3,
|
||||||
0, 0.8,
|
1000, 0.3
|
||||||
1000, 0.8
|
]
|
||||||
]
|
},
|
||||||
}
|
{
|
||||||
],
|
"bound": "UPPER",
|
||||||
"shadows": [
|
"q_lo": 0.98,
|
||||||
{
|
"q_hi": 1.0,
|
||||||
"bound": "LOWER",
|
"y_target":
|
||||||
"q_lo": 0.0,
|
[
|
||||||
"q_hi": 0.5,
|
0, 0.8,
|
||||||
"y_target":
|
1000, 0.8
|
||||||
[
|
]
|
||||||
0, 0.17,
|
}
|
||||||
1000, 0.17
|
],
|
||||||
]
|
"shadows": [
|
||||||
}
|
{
|
||||||
]
|
"bound": "LOWER",
|
||||||
},
|
"q_lo": 0.0,
|
||||||
"y_target":
|
"q_hi": 0.5,
|
||||||
[
|
"y_target":
|
||||||
0, 0.16,
|
[
|
||||||
1000, 0.165,
|
0, 0.17,
|
||||||
10000, 0.17
|
1000, 0.17
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
},
|
||||||
|
"y_target":
|
||||||
|
[
|
||||||
|
0, 0.16,
|
||||||
|
1000, 0.165,
|
||||||
|
10000, 0.17
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"rpi.alsc":
|
"rpi.alsc":
|
||||||
|
@ -656,20 +682,19 @@
|
||||||
{
|
{
|
||||||
"rpi.sharpen": { }
|
"rpi.sharpen": { }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"rpi.hdr":
|
"rpi.hdr":
|
||||||
{
|
{
|
||||||
"MultiExposure":
|
"MultiExposureUnmerged":
|
||||||
{
|
{
|
||||||
"cadence": [ 1, 2 ],
|
"cadence": [ 1, 2 ],
|
||||||
"channel_map": { "short": 1, "long": 2 }
|
"channel_map":
|
||||||
},
|
{
|
||||||
"SingleExposure":
|
"short": 1,
|
||||||
{
|
"long": 2
|
||||||
"cadence": [ 1 ],
|
}
|
||||||
"channel_map": { "short": 1 }
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
]
|
]
|
||||||
}
|
}
|
|
@ -47,282 +47,308 @@
|
||||||
{
|
{
|
||||||
"rpi.agc":
|
"rpi.agc":
|
||||||
{
|
{
|
||||||
"channels":
|
"channels": [
|
||||||
[
|
{
|
||||||
{
|
"metering_modes":
|
||||||
"metering_modes":
|
{
|
||||||
{
|
"centre-weighted":
|
||||||
"centre-weighted":
|
{
|
||||||
{
|
"weights":
|
||||||
"weights": [ 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
[
|
||||||
},
|
3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
"spot":
|
]
|
||||||
{
|
},
|
||||||
"weights": [ 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
|
"spot":
|
||||||
},
|
{
|
||||||
"matrix":
|
"weights":
|
||||||
{
|
[
|
||||||
"weights": [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
|
2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
}
|
]
|
||||||
},
|
},
|
||||||
"exposure_modes":
|
"matrix":
|
||||||
{
|
{
|
||||||
"normal":
|
"weights":
|
||||||
{
|
[
|
||||||
"shutter": [ 100, 10000, 30000, 60000, 66666 ],
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
]
|
||||||
},
|
}
|
||||||
"short":
|
},
|
||||||
{
|
"exposure_modes":
|
||||||
"shutter": [ 100, 5000, 10000, 20000, 33333 ],
|
{
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
"normal":
|
||||||
},
|
{
|
||||||
"long":
|
"shutter": [ 100, 10000, 30000, 60000, 66666 ],
|
||||||
{
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
||||||
"shutter": [ 100, 10000, 30000, 60000, 120000 ],
|
},
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
"short":
|
||||||
}
|
{
|
||||||
},
|
"shutter": [ 100, 5000, 10000, 20000, 33333 ],
|
||||||
"constraint_modes":
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
||||||
{
|
},
|
||||||
"normal": [
|
"long":
|
||||||
{
|
{
|
||||||
"bound": "LOWER",
|
"shutter": [ 100, 10000, 30000, 60000, 120000 ],
|
||||||
"q_lo": 0.98,
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
||||||
"q_hi": 1.0,
|
}
|
||||||
"y_target":
|
},
|
||||||
[
|
"constraint_modes":
|
||||||
0, 0.3,
|
{
|
||||||
1000, 0.3
|
"normal": [
|
||||||
]
|
{
|
||||||
}
|
"bound": "LOWER",
|
||||||
],
|
"q_lo": 0.98,
|
||||||
"highlight": [
|
"q_hi": 1.0,
|
||||||
{
|
"y_target":
|
||||||
"bound": "LOWER",
|
[
|
||||||
"q_lo": 0.98,
|
0, 0.3,
|
||||||
"q_hi": 1.0,
|
1000, 0.3
|
||||||
"y_target":
|
]
|
||||||
[
|
}
|
||||||
0, 0.3,
|
],
|
||||||
1000, 0.3
|
"highlight": [
|
||||||
]
|
{
|
||||||
},
|
"bound": "LOWER",
|
||||||
{
|
"q_lo": 0.98,
|
||||||
"bound": "UPPER",
|
"q_hi": 1.0,
|
||||||
"q_lo": 0.98,
|
"y_target":
|
||||||
"q_hi": 1.0,
|
[
|
||||||
"y_target":
|
0, 0.3,
|
||||||
[
|
1000, 0.3
|
||||||
0, 0.8,
|
]
|
||||||
1000, 0.8
|
},
|
||||||
]
|
{
|
||||||
}
|
"bound": "UPPER",
|
||||||
],
|
"q_lo": 0.98,
|
||||||
"shadows": [
|
"q_hi": 1.0,
|
||||||
{
|
"y_target":
|
||||||
"bound": "LOWER",
|
[
|
||||||
"q_lo": 0.0,
|
0, 0.8,
|
||||||
"q_hi": 0.5,
|
1000, 0.8
|
||||||
"y_target":
|
]
|
||||||
[
|
}
|
||||||
0, 0.17,
|
],
|
||||||
1000, 0.17
|
"shadows": [
|
||||||
]
|
{
|
||||||
}
|
"bound": "LOWER",
|
||||||
]
|
"q_lo": 0.0,
|
||||||
},
|
"q_hi": 0.5,
|
||||||
"y_target":
|
"y_target":
|
||||||
[
|
[
|
||||||
0, 0.16,
|
0, 0.17,
|
||||||
1000, 0.165,
|
1000, 0.17
|
||||||
10000, 0.17
|
]
|
||||||
]
|
}
|
||||||
},
|
]
|
||||||
{
|
},
|
||||||
"base_ev": 0.125,
|
"y_target":
|
||||||
"metering_modes":
|
[
|
||||||
{
|
0, 0.16,
|
||||||
"centre-weighted":
|
1000, 0.165,
|
||||||
{
|
10000, 0.17
|
||||||
"weights": [ 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
]
|
||||||
},
|
},
|
||||||
"spot":
|
{
|
||||||
{
|
"base_ev": 0.125,
|
||||||
"weights": [ 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
|
"metering_modes":
|
||||||
},
|
{
|
||||||
"matrix":
|
"centre-weighted":
|
||||||
{
|
{
|
||||||
"weights": [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
|
"weights":
|
||||||
}
|
[
|
||||||
},
|
3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
"exposure_modes":
|
]
|
||||||
{
|
},
|
||||||
"normal":
|
"spot":
|
||||||
{
|
{
|
||||||
"shutter": [ 100, 10000, 30000, 60000, 66666 ],
|
"weights":
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
[
|
||||||
},
|
2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
"short":
|
]
|
||||||
{
|
},
|
||||||
"shutter": [ 100, 5000, 10000, 20000, 33333 ],
|
"matrix":
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
{
|
||||||
},
|
"weights":
|
||||||
"long":
|
[
|
||||||
{
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||||
"shutter": [ 100, 10000, 30000, 60000, 120000 ],
|
]
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
}
|
||||||
}
|
},
|
||||||
},
|
"exposure_modes":
|
||||||
"constraint_modes":
|
{
|
||||||
{
|
"normal":
|
||||||
"normal": [
|
{
|
||||||
{
|
"shutter": [ 100, 10000, 30000, 60000, 66666 ],
|
||||||
"bound": "LOWER",
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
||||||
"q_lo": 0.98,
|
},
|
||||||
"q_hi": 1.0,
|
"short":
|
||||||
"y_target":
|
{
|
||||||
[
|
"shutter": [ 100, 5000, 10000, 20000, 33333 ],
|
||||||
0, 0.3,
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
||||||
1000, 0.3
|
},
|
||||||
]
|
"long":
|
||||||
}
|
{
|
||||||
],
|
"shutter": [ 100, 10000, 30000, 60000, 120000 ],
|
||||||
"highlight": [
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
||||||
{
|
}
|
||||||
"bound": "LOWER",
|
},
|
||||||
"q_lo": 0.98,
|
"constraint_modes":
|
||||||
"q_hi": 1.0,
|
{
|
||||||
"y_target":
|
"normal": [
|
||||||
[
|
{
|
||||||
0, 0.3,
|
"bound": "LOWER",
|
||||||
1000, 0.3
|
"q_lo": 0.98,
|
||||||
]
|
"q_hi": 1.0,
|
||||||
},
|
"y_target":
|
||||||
{
|
[
|
||||||
"bound": "UPPER",
|
0, 0.3,
|
||||||
"q_lo": 0.98,
|
1000, 0.3
|
||||||
"q_hi": 1.0,
|
]
|
||||||
"y_target":
|
}
|
||||||
[
|
],
|
||||||
0, 0.8,
|
"highlight": [
|
||||||
1000, 0.8
|
{
|
||||||
]
|
"bound": "LOWER",
|
||||||
}
|
"q_lo": 0.98,
|
||||||
],
|
"q_hi": 1.0,
|
||||||
"shadows": [
|
"y_target":
|
||||||
{
|
[
|
||||||
"bound": "LOWER",
|
0, 0.3,
|
||||||
"q_lo": 0.0,
|
1000, 0.3
|
||||||
"q_hi": 0.5,
|
]
|
||||||
"y_target":
|
},
|
||||||
[
|
{
|
||||||
0, 0.17,
|
"bound": "UPPER",
|
||||||
1000, 0.17
|
"q_lo": 0.98,
|
||||||
]
|
"q_hi": 1.0,
|
||||||
}
|
"y_target":
|
||||||
]
|
[
|
||||||
},
|
0, 0.8,
|
||||||
"y_target":
|
1000, 0.8
|
||||||
[
|
]
|
||||||
0, 0.16,
|
}
|
||||||
1000, 0.165,
|
],
|
||||||
10000, 0.17
|
"shadows": [
|
||||||
]
|
{
|
||||||
},
|
"bound": "LOWER",
|
||||||
{
|
"q_lo": 0.0,
|
||||||
"base_ev": 1.5,
|
"q_hi": 0.5,
|
||||||
"metering_modes":
|
"y_target":
|
||||||
{
|
[
|
||||||
"centre-weighted":
|
0, 0.17,
|
||||||
{
|
1000, 0.17
|
||||||
"weights": [ 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
]
|
||||||
},
|
}
|
||||||
"spot":
|
]
|
||||||
{
|
},
|
||||||
"weights": [ 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
|
"y_target":
|
||||||
},
|
[
|
||||||
"matrix":
|
0, 0.16,
|
||||||
{
|
1000, 0.165,
|
||||||
"weights": [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
|
10000, 0.17
|
||||||
}
|
]
|
||||||
},
|
},
|
||||||
"exposure_modes":
|
{
|
||||||
{
|
"base_ev": 1.5,
|
||||||
"normal":
|
"metering_modes":
|
||||||
{
|
{
|
||||||
"shutter": [ 100, 10000, 30000, 60000, 66666 ],
|
"centre-weighted":
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
{
|
||||||
},
|
"weights":
|
||||||
"short":
|
[
|
||||||
{
|
3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
"shutter": [ 100, 5000, 10000, 20000, 33333 ],
|
]
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
},
|
||||||
},
|
"spot":
|
||||||
"long":
|
{
|
||||||
{
|
"weights":
|
||||||
"shutter": [ 100, 10000, 30000, 60000, 120000 ],
|
[
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
}
|
]
|
||||||
},
|
},
|
||||||
"constraint_modes":
|
"matrix":
|
||||||
{
|
{
|
||||||
"normal": [
|
"weights":
|
||||||
{
|
[
|
||||||
"bound": "LOWER",
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||||
"q_lo": 0.98,
|
]
|
||||||
"q_hi": 1.0,
|
}
|
||||||
"y_target":
|
},
|
||||||
[
|
"exposure_modes":
|
||||||
0, 0.3,
|
{
|
||||||
1000, 0.3
|
"normal":
|
||||||
]
|
{
|
||||||
}
|
"shutter": [ 100, 10000, 30000, 60000, 66666 ],
|
||||||
],
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
||||||
"highlight": [
|
},
|
||||||
{
|
"short":
|
||||||
"bound": "LOWER",
|
{
|
||||||
"q_lo": 0.98,
|
"shutter": [ 100, 5000, 10000, 20000, 33333 ],
|
||||||
"q_hi": 1.0,
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
||||||
"y_target":
|
},
|
||||||
[
|
"long":
|
||||||
0, 0.3,
|
{
|
||||||
1000, 0.3
|
"shutter": [ 100, 10000, 30000, 60000, 120000 ],
|
||||||
]
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
||||||
},
|
}
|
||||||
{
|
},
|
||||||
"bound": "UPPER",
|
"constraint_modes":
|
||||||
"q_lo": 0.98,
|
{
|
||||||
"q_hi": 1.0,
|
"normal": [
|
||||||
"y_target":
|
{
|
||||||
[
|
"bound": "LOWER",
|
||||||
0, 0.8,
|
"q_lo": 0.98,
|
||||||
1000, 0.8
|
"q_hi": 1.0,
|
||||||
]
|
"y_target":
|
||||||
}
|
[
|
||||||
],
|
0, 0.3,
|
||||||
"shadows": [
|
1000, 0.3
|
||||||
{
|
]
|
||||||
"bound": "LOWER",
|
}
|
||||||
"q_lo": 0.0,
|
],
|
||||||
"q_hi": 0.5,
|
"highlight": [
|
||||||
"y_target":
|
{
|
||||||
[
|
"bound": "LOWER",
|
||||||
0, 0.17,
|
"q_lo": 0.98,
|
||||||
1000, 0.17
|
"q_hi": 1.0,
|
||||||
]
|
"y_target":
|
||||||
}
|
[
|
||||||
]
|
0, 0.3,
|
||||||
},
|
1000, 0.3
|
||||||
"y_target":
|
]
|
||||||
[
|
},
|
||||||
0, 0.16,
|
{
|
||||||
1000, 0.165,
|
"bound": "UPPER",
|
||||||
10000, 0.17
|
"q_lo": 0.98,
|
||||||
]
|
"q_hi": 1.0,
|
||||||
}
|
"y_target":
|
||||||
]
|
[
|
||||||
}
|
0, 0.8,
|
||||||
|
1000, 0.8
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"shadows": [
|
||||||
|
{
|
||||||
|
"bound": "LOWER",
|
||||||
|
"q_lo": 0.0,
|
||||||
|
"q_hi": 0.5,
|
||||||
|
"y_target":
|
||||||
|
[
|
||||||
|
0, 0.17,
|
||||||
|
1000, 0.17
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"y_target":
|
||||||
|
[
|
||||||
|
0, 0.16,
|
||||||
|
1000, 0.165,
|
||||||
|
10000, 0.17
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"rpi.alsc":
|
"rpi.alsc":
|
||||||
|
@ -612,20 +638,19 @@
|
||||||
{
|
{
|
||||||
"rpi.sharpen": { }
|
"rpi.sharpen": { }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"rpi.hdr":
|
"rpi.hdr":
|
||||||
{
|
{
|
||||||
"MultiExposure":
|
"MultiExposureUnmerged":
|
||||||
{
|
{
|
||||||
"cadence": [ 1, 2 ],
|
"cadence": [ 1, 2 ],
|
||||||
"channel_map": { "short": 1, "long": 2 }
|
"channel_map":
|
||||||
},
|
{
|
||||||
"SingleExposure":
|
"short": 1,
|
||||||
{
|
"long": 2
|
||||||
"cadence": [ 1 ],
|
}
|
||||||
"channel_map": { "short": 1 }
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
|
@ -148,15 +148,24 @@
|
||||||
{
|
{
|
||||||
"centre-weighted":
|
"centre-weighted":
|
||||||
{
|
{
|
||||||
"weights": [ 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
"weights":
|
||||||
|
[
|
||||||
|
3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"spot":
|
"spot":
|
||||||
{
|
{
|
||||||
"weights": [ 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
|
"weights":
|
||||||
|
[
|
||||||
|
2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"matrix":
|
"matrix":
|
||||||
{
|
{
|
||||||
"weights": [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
|
"weights":
|
||||||
|
[
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||||
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"exposure_modes":
|
"exposure_modes":
|
||||||
|
|
|
@ -138,15 +138,24 @@
|
||||||
{
|
{
|
||||||
"centre-weighted":
|
"centre-weighted":
|
||||||
{
|
{
|
||||||
"weights": [ 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
"weights":
|
||||||
|
[
|
||||||
|
3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"spot":
|
"spot":
|
||||||
{
|
{
|
||||||
"weights": [ 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
|
"weights":
|
||||||
|
[
|
||||||
|
2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"matrix":
|
"matrix":
|
||||||
{
|
{
|
||||||
"weights": [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
|
"weights":
|
||||||
|
[
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||||
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"exposure_modes":
|
"exposure_modes":
|
||||||
|
|
|
@ -133,15 +133,24 @@
|
||||||
{
|
{
|
||||||
"centre-weighted":
|
"centre-weighted":
|
||||||
{
|
{
|
||||||
"weights": [ 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
"weights":
|
||||||
|
[
|
||||||
|
3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"spot":
|
"spot":
|
||||||
{
|
{
|
||||||
"weights": [ 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
|
"weights":
|
||||||
|
[
|
||||||
|
2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"matrix":
|
"matrix":
|
||||||
{
|
{
|
||||||
"weights": [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
|
"weights":
|
||||||
|
[
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||||
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"exposure_modes":
|
"exposure_modes":
|
||||||
|
|
|
@ -139,255 +139,281 @@
|
||||||
{
|
{
|
||||||
"rpi.agc":
|
"rpi.agc":
|
||||||
{
|
{
|
||||||
"channels":
|
"channels": [
|
||||||
[
|
{
|
||||||
{
|
"metering_modes":
|
||||||
"metering_modes":
|
{
|
||||||
{
|
"centre-weighted":
|
||||||
"centre-weighted":
|
{
|
||||||
{
|
"weights":
|
||||||
"weights": [ 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
[
|
||||||
},
|
3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
"spot":
|
]
|
||||||
{
|
},
|
||||||
"weights": [ 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
|
"spot":
|
||||||
},
|
{
|
||||||
"matrix":
|
"weights":
|
||||||
{
|
[
|
||||||
"weights": [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
|
2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
}
|
]
|
||||||
},
|
},
|
||||||
"exposure_modes":
|
"matrix":
|
||||||
{
|
{
|
||||||
"normal":
|
"weights":
|
||||||
{
|
[
|
||||||
"shutter": [ 100, 15000, 30000, 60000, 120000 ],
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||||
"gain": [ 1.0, 1.0, 2.0, 4.0, 6.0 ]
|
]
|
||||||
},
|
}
|
||||||
"short":
|
},
|
||||||
{
|
"exposure_modes":
|
||||||
"shutter": [ 100, 5000, 10000, 20000, 120000 ],
|
{
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 6.0 ]
|
"normal":
|
||||||
},
|
{
|
||||||
"long":
|
"shutter": [ 100, 15000, 30000, 60000, 120000 ],
|
||||||
{
|
"gain": [ 1.0, 1.0, 2.0, 4.0, 6.0 ]
|
||||||
"shutter": [ 1000, 30000, 60000, 90000, 120000 ],
|
},
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
"short":
|
||||||
}
|
{
|
||||||
},
|
"shutter": [ 100, 5000, 10000, 20000, 120000 ],
|
||||||
"constraint_modes":
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 6.0 ]
|
||||||
{
|
},
|
||||||
"normal": [
|
"long":
|
||||||
{
|
{
|
||||||
"bound": "LOWER",
|
"shutter": [ 1000, 30000, 60000, 90000, 120000 ],
|
||||||
"q_lo": 0.98,
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
||||||
"q_hi": 1.0,
|
}
|
||||||
"y_target":
|
},
|
||||||
[
|
"constraint_modes":
|
||||||
0, 0.2,
|
{
|
||||||
1000, 0.2
|
"normal": [
|
||||||
]
|
{
|
||||||
}
|
"bound": "LOWER",
|
||||||
],
|
"q_lo": 0.98,
|
||||||
"highlight": [
|
"q_hi": 1.0,
|
||||||
{
|
"y_target":
|
||||||
"bound": "LOWER",
|
[
|
||||||
"q_lo": 0.98,
|
0, 0.2,
|
||||||
"q_hi": 1.0,
|
1000, 0.2
|
||||||
"y_target":
|
]
|
||||||
[
|
}
|
||||||
0, 0.2,
|
],
|
||||||
1000, 0.2
|
"highlight": [
|
||||||
]
|
{
|
||||||
},
|
"bound": "LOWER",
|
||||||
{
|
"q_lo": 0.98,
|
||||||
"bound": "UPPER",
|
"q_hi": 1.0,
|
||||||
"q_lo": 0.98,
|
"y_target":
|
||||||
"q_hi": 1.0,
|
[
|
||||||
"y_target":
|
0, 0.2,
|
||||||
[
|
1000, 0.2
|
||||||
0, 0.8,
|
]
|
||||||
1000, 0.8
|
},
|
||||||
]
|
{
|
||||||
}
|
"bound": "UPPER",
|
||||||
]
|
"q_lo": 0.98,
|
||||||
},
|
"q_hi": 1.0,
|
||||||
"y_target":
|
"y_target":
|
||||||
[
|
[
|
||||||
0, 0.16,
|
0, 0.8,
|
||||||
1000, 0.165,
|
1000, 0.8
|
||||||
10000, 0.17
|
]
|
||||||
],
|
}
|
||||||
"startup_frames": 5,
|
]
|
||||||
"convergence_frames": 6,
|
},
|
||||||
"speed": 0.15
|
"y_target":
|
||||||
},
|
[
|
||||||
{
|
0, 0.16,
|
||||||
"base_ev": 0.125,
|
1000, 0.165,
|
||||||
"metering_modes":
|
10000, 0.17
|
||||||
{
|
],
|
||||||
"centre-weighted":
|
"startup_frames": 5,
|
||||||
{
|
"convergence_frames": 6,
|
||||||
"weights": [ 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
"speed": 0.15
|
||||||
},
|
},
|
||||||
"spot":
|
{
|
||||||
{
|
"base_ev": 0.125,
|
||||||
"weights": [ 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
|
"metering_modes":
|
||||||
},
|
{
|
||||||
"matrix":
|
"centre-weighted":
|
||||||
{
|
{
|
||||||
"weights": [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
|
"weights":
|
||||||
}
|
[
|
||||||
},
|
3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
"exposure_modes":
|
]
|
||||||
{
|
},
|
||||||
"normal":
|
"spot":
|
||||||
{
|
{
|
||||||
"shutter": [ 100, 15000, 30000, 60000, 120000 ],
|
"weights":
|
||||||
"gain": [ 1.0, 1.0, 2.0, 4.0, 6.0 ]
|
[
|
||||||
},
|
2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
"short":
|
]
|
||||||
{
|
},
|
||||||
"shutter": [ 100, 5000, 10000, 20000, 120000 ],
|
"matrix":
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 6.0 ]
|
{
|
||||||
},
|
"weights":
|
||||||
"long":
|
[
|
||||||
{
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||||
"shutter": [ 1000, 30000, 60000, 90000, 120000 ],
|
]
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
}
|
||||||
}
|
},
|
||||||
},
|
"exposure_modes":
|
||||||
"constraint_modes":
|
{
|
||||||
{
|
"normal":
|
||||||
"normal": [
|
{
|
||||||
{
|
"shutter": [ 100, 15000, 30000, 60000, 120000 ],
|
||||||
"bound": "LOWER",
|
"gain": [ 1.0, 1.0, 2.0, 4.0, 6.0 ]
|
||||||
"q_lo": 0.98,
|
},
|
||||||
"q_hi": 1.0,
|
"short":
|
||||||
"y_target":
|
{
|
||||||
[
|
"shutter": [ 100, 5000, 10000, 20000, 120000 ],
|
||||||
0, 0.2,
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 6.0 ]
|
||||||
1000, 0.2
|
},
|
||||||
]
|
"long":
|
||||||
}
|
{
|
||||||
],
|
"shutter": [ 1000, 30000, 60000, 90000, 120000 ],
|
||||||
"highlight": [
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
||||||
{
|
}
|
||||||
"bound": "LOWER",
|
},
|
||||||
"q_lo": 0.98,
|
"constraint_modes":
|
||||||
"q_hi": 1.0,
|
{
|
||||||
"y_target":
|
"normal": [
|
||||||
[
|
{
|
||||||
0, 0.2,
|
"bound": "LOWER",
|
||||||
1000, 0.2
|
"q_lo": 0.98,
|
||||||
]
|
"q_hi": 1.0,
|
||||||
},
|
"y_target":
|
||||||
{
|
[
|
||||||
"bound": "UPPER",
|
0, 0.2,
|
||||||
"q_lo": 0.98,
|
1000, 0.2
|
||||||
"q_hi": 1.0,
|
]
|
||||||
"y_target":
|
}
|
||||||
[
|
],
|
||||||
0, 0.8,
|
"highlight": [
|
||||||
1000, 0.8
|
{
|
||||||
]
|
"bound": "LOWER",
|
||||||
}
|
"q_lo": 0.98,
|
||||||
]
|
"q_hi": 1.0,
|
||||||
},
|
"y_target":
|
||||||
"y_target":
|
[
|
||||||
[
|
0, 0.2,
|
||||||
0, 0.16,
|
1000, 0.2
|
||||||
1000, 0.165,
|
]
|
||||||
10000, 0.17
|
},
|
||||||
],
|
{
|
||||||
"startup_frames": 5,
|
"bound": "UPPER",
|
||||||
"convergence_frames": 6,
|
"q_lo": 0.98,
|
||||||
"speed": 0.15
|
"q_hi": 1.0,
|
||||||
},
|
"y_target":
|
||||||
{
|
[
|
||||||
"base_ev": 1.5,
|
0, 0.8,
|
||||||
"metering_modes":
|
1000, 0.8
|
||||||
{
|
]
|
||||||
"centre-weighted":
|
}
|
||||||
{
|
]
|
||||||
"weights": [ 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
},
|
||||||
},
|
"y_target":
|
||||||
"spot":
|
[
|
||||||
{
|
0, 0.16,
|
||||||
"weights": [ 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
|
1000, 0.165,
|
||||||
},
|
10000, 0.17
|
||||||
"matrix":
|
],
|
||||||
{
|
"startup_frames": 5,
|
||||||
"weights": [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
|
"convergence_frames": 6,
|
||||||
}
|
"speed": 0.15
|
||||||
},
|
},
|
||||||
"exposure_modes":
|
{
|
||||||
{
|
"base_ev": 1.5,
|
||||||
"normal":
|
"metering_modes":
|
||||||
{
|
{
|
||||||
"shutter": [ 100, 15000, 30000, 60000, 120000 ],
|
"centre-weighted":
|
||||||
"gain": [ 1.0, 1.0, 2.0, 4.0, 6.0 ]
|
{
|
||||||
},
|
"weights":
|
||||||
"short":
|
[
|
||||||
{
|
3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
"shutter": [ 100, 5000, 10000, 20000, 120000 ],
|
]
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 6.0 ]
|
},
|
||||||
},
|
"spot":
|
||||||
"long":
|
{
|
||||||
{
|
"weights":
|
||||||
"shutter": [ 1000, 30000, 60000, 90000, 120000 ],
|
[
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
}
|
]
|
||||||
},
|
},
|
||||||
"constraint_modes":
|
"matrix":
|
||||||
{
|
{
|
||||||
"normal": [
|
"weights":
|
||||||
{
|
[
|
||||||
"bound": "LOWER",
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||||
"q_lo": 0.98,
|
]
|
||||||
"q_hi": 1.0,
|
}
|
||||||
"y_target":
|
},
|
||||||
[
|
"exposure_modes":
|
||||||
0, 0.2,
|
{
|
||||||
1000, 0.2
|
"normal":
|
||||||
]
|
{
|
||||||
}
|
"shutter": [ 100, 15000, 30000, 60000, 120000 ],
|
||||||
],
|
"gain": [ 1.0, 1.0, 2.0, 4.0, 6.0 ]
|
||||||
"highlight": [
|
},
|
||||||
{
|
"short":
|
||||||
"bound": "LOWER",
|
{
|
||||||
"q_lo": 0.98,
|
"shutter": [ 100, 5000, 10000, 20000, 120000 ],
|
||||||
"q_hi": 1.0,
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 6.0 ]
|
||||||
"y_target":
|
},
|
||||||
[
|
"long":
|
||||||
0, 0.2,
|
{
|
||||||
1000, 0.2
|
"shutter": [ 1000, 30000, 60000, 90000, 120000 ],
|
||||||
]
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
||||||
},
|
}
|
||||||
{
|
},
|
||||||
"bound": "UPPER",
|
"constraint_modes":
|
||||||
"q_lo": 0.98,
|
{
|
||||||
"q_hi": 1.0,
|
"normal": [
|
||||||
"y_target":
|
{
|
||||||
[
|
"bound": "LOWER",
|
||||||
0, 0.8,
|
"q_lo": 0.98,
|
||||||
1000, 0.8
|
"q_hi": 1.0,
|
||||||
]
|
"y_target":
|
||||||
}
|
[
|
||||||
]
|
0, 0.2,
|
||||||
},
|
1000, 0.2
|
||||||
"y_target":
|
]
|
||||||
[
|
}
|
||||||
0, 0.16,
|
],
|
||||||
1000, 0.165,
|
"highlight": [
|
||||||
10000, 0.17
|
{
|
||||||
],
|
"bound": "LOWER",
|
||||||
"startup_frames": 5,
|
"q_lo": 0.98,
|
||||||
"convergence_frames": 6,
|
"q_hi": 1.0,
|
||||||
"speed": 0.15
|
"y_target":
|
||||||
}
|
[
|
||||||
]
|
0, 0.2,
|
||||||
}
|
1000, 0.2
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"bound": "UPPER",
|
||||||
|
"q_lo": 0.98,
|
||||||
|
"q_hi": 1.0,
|
||||||
|
"y_target":
|
||||||
|
[
|
||||||
|
0, 0.8,
|
||||||
|
1000, 0.8
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"y_target":
|
||||||
|
[
|
||||||
|
0, 0.16,
|
||||||
|
1000, 0.165,
|
||||||
|
10000, 0.17
|
||||||
|
],
|
||||||
|
"startup_frames": 5,
|
||||||
|
"convergence_frames": 6,
|
||||||
|
"speed": 0.15
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"rpi.alsc":
|
"rpi.alsc":
|
||||||
|
@ -627,20 +653,19 @@
|
||||||
"map": [ 0.0, 445, 15.0, 925 ]
|
"map": [ 0.0, 445, 15.0, 925 ]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"rpi.hdr":
|
"rpi.hdr":
|
||||||
{
|
{
|
||||||
"MultiExposure":
|
"MultiExposureUnmerged":
|
||||||
{
|
{
|
||||||
"cadence": [ 1, 2 ],
|
"cadence": [ 1, 2 ],
|
||||||
"channel_map": { "short": 1, "long": 2 }
|
"channel_map":
|
||||||
},
|
{
|
||||||
"SingleExposure":
|
"short": 1,
|
||||||
{
|
"long": 2
|
||||||
"cadence": [ 1 ],
|
}
|
||||||
"channel_map": { "short": 1 }
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
]
|
]
|
||||||
}
|
}
|
|
@ -139,255 +139,281 @@
|
||||||
{
|
{
|
||||||
"rpi.agc":
|
"rpi.agc":
|
||||||
{
|
{
|
||||||
"channels":
|
"channels": [
|
||||||
[
|
{
|
||||||
{
|
"metering_modes":
|
||||||
"metering_modes":
|
{
|
||||||
{
|
"centre-weighted":
|
||||||
"centre-weighted":
|
{
|
||||||
{
|
"weights":
|
||||||
"weights": [ 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
[
|
||||||
},
|
3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
"spot":
|
]
|
||||||
{
|
},
|
||||||
"weights": [ 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
|
"spot":
|
||||||
},
|
{
|
||||||
"matrix":
|
"weights":
|
||||||
{
|
[
|
||||||
"weights": [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
|
2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
}
|
]
|
||||||
},
|
},
|
||||||
"exposure_modes":
|
"matrix":
|
||||||
{
|
{
|
||||||
"normal":
|
"weights":
|
||||||
{
|
[
|
||||||
"shutter": [ 100, 15000, 30000, 60000, 120000 ],
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||||
"gain": [ 1.0, 1.0, 2.0, 4.0, 6.0 ]
|
]
|
||||||
},
|
}
|
||||||
"short":
|
},
|
||||||
{
|
"exposure_modes":
|
||||||
"shutter": [ 100, 5000, 10000, 20000, 120000 ],
|
{
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 6.0 ]
|
"normal":
|
||||||
},
|
{
|
||||||
"long":
|
"shutter": [ 100, 15000, 30000, 60000, 120000 ],
|
||||||
{
|
"gain": [ 1.0, 1.0, 2.0, 4.0, 6.0 ]
|
||||||
"shutter": [ 1000, 30000, 60000, 90000, 120000 ],
|
},
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
"short":
|
||||||
}
|
{
|
||||||
},
|
"shutter": [ 100, 5000, 10000, 20000, 120000 ],
|
||||||
"constraint_modes":
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 6.0 ]
|
||||||
{
|
},
|
||||||
"normal": [
|
"long":
|
||||||
{
|
{
|
||||||
"bound": "LOWER",
|
"shutter": [ 1000, 30000, 60000, 90000, 120000 ],
|
||||||
"q_lo": 0.98,
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
||||||
"q_hi": 1.0,
|
}
|
||||||
"y_target":
|
},
|
||||||
[
|
"constraint_modes":
|
||||||
0, 0.2,
|
{
|
||||||
1000, 0.2
|
"normal": [
|
||||||
]
|
{
|
||||||
}
|
"bound": "LOWER",
|
||||||
],
|
"q_lo": 0.98,
|
||||||
"highlight": [
|
"q_hi": 1.0,
|
||||||
{
|
"y_target":
|
||||||
"bound": "LOWER",
|
[
|
||||||
"q_lo": 0.98,
|
0, 0.2,
|
||||||
"q_hi": 1.0,
|
1000, 0.2
|
||||||
"y_target":
|
]
|
||||||
[
|
}
|
||||||
0, 0.2,
|
],
|
||||||
1000, 0.2
|
"highlight": [
|
||||||
]
|
{
|
||||||
},
|
"bound": "LOWER",
|
||||||
{
|
"q_lo": 0.98,
|
||||||
"bound": "UPPER",
|
"q_hi": 1.0,
|
||||||
"q_lo": 0.98,
|
"y_target":
|
||||||
"q_hi": 1.0,
|
[
|
||||||
"y_target":
|
0, 0.2,
|
||||||
[
|
1000, 0.2
|
||||||
0, 0.8,
|
]
|
||||||
1000, 0.8
|
},
|
||||||
]
|
{
|
||||||
}
|
"bound": "UPPER",
|
||||||
]
|
"q_lo": 0.98,
|
||||||
},
|
"q_hi": 1.0,
|
||||||
"y_target":
|
"y_target":
|
||||||
[
|
[
|
||||||
0, 0.16,
|
0, 0.8,
|
||||||
1000, 0.165,
|
1000, 0.8
|
||||||
10000, 0.17
|
]
|
||||||
],
|
}
|
||||||
"startup_frames": 5,
|
]
|
||||||
"convergence_frames": 6,
|
},
|
||||||
"speed": 0.15
|
"y_target":
|
||||||
},
|
[
|
||||||
{
|
0, 0.16,
|
||||||
"base_ev": 0.125,
|
1000, 0.165,
|
||||||
"metering_modes":
|
10000, 0.17
|
||||||
{
|
],
|
||||||
"centre-weighted":
|
"startup_frames": 5,
|
||||||
{
|
"convergence_frames": 6,
|
||||||
"weights": [ 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
"speed": 0.15
|
||||||
},
|
},
|
||||||
"spot":
|
{
|
||||||
{
|
"base_ev": 0.125,
|
||||||
"weights": [ 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
|
"metering_modes":
|
||||||
},
|
{
|
||||||
"matrix":
|
"centre-weighted":
|
||||||
{
|
{
|
||||||
"weights": [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
|
"weights":
|
||||||
}
|
[
|
||||||
},
|
3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
"exposure_modes":
|
]
|
||||||
{
|
},
|
||||||
"normal":
|
"spot":
|
||||||
{
|
{
|
||||||
"shutter": [ 100, 15000, 30000, 60000, 120000 ],
|
"weights":
|
||||||
"gain": [ 1.0, 1.0, 2.0, 4.0, 6.0 ]
|
[
|
||||||
},
|
2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
"short":
|
]
|
||||||
{
|
},
|
||||||
"shutter": [ 100, 5000, 10000, 20000, 120000 ],
|
"matrix":
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 6.0 ]
|
{
|
||||||
},
|
"weights":
|
||||||
"long":
|
[
|
||||||
{
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||||
"shutter": [ 1000, 30000, 60000, 90000, 120000 ],
|
]
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
}
|
||||||
}
|
},
|
||||||
},
|
"exposure_modes":
|
||||||
"constraint_modes":
|
{
|
||||||
{
|
"normal":
|
||||||
"normal": [
|
{
|
||||||
{
|
"shutter": [ 100, 15000, 30000, 60000, 120000 ],
|
||||||
"bound": "LOWER",
|
"gain": [ 1.0, 1.0, 2.0, 4.0, 6.0 ]
|
||||||
"q_lo": 0.98,
|
},
|
||||||
"q_hi": 1.0,
|
"short":
|
||||||
"y_target":
|
{
|
||||||
[
|
"shutter": [ 100, 5000, 10000, 20000, 120000 ],
|
||||||
0, 0.2,
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 6.0 ]
|
||||||
1000, 0.2
|
},
|
||||||
]
|
"long":
|
||||||
}
|
{
|
||||||
],
|
"shutter": [ 1000, 30000, 60000, 90000, 120000 ],
|
||||||
"highlight": [
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
||||||
{
|
}
|
||||||
"bound": "LOWER",
|
},
|
||||||
"q_lo": 0.98,
|
"constraint_modes":
|
||||||
"q_hi": 1.0,
|
{
|
||||||
"y_target":
|
"normal": [
|
||||||
[
|
{
|
||||||
0, 0.2,
|
"bound": "LOWER",
|
||||||
1000, 0.2
|
"q_lo": 0.98,
|
||||||
]
|
"q_hi": 1.0,
|
||||||
},
|
"y_target":
|
||||||
{
|
[
|
||||||
"bound": "UPPER",
|
0, 0.2,
|
||||||
"q_lo": 0.98,
|
1000, 0.2
|
||||||
"q_hi": 1.0,
|
]
|
||||||
"y_target":
|
}
|
||||||
[
|
],
|
||||||
0, 0.8,
|
"highlight": [
|
||||||
1000, 0.8
|
{
|
||||||
]
|
"bound": "LOWER",
|
||||||
}
|
"q_lo": 0.98,
|
||||||
]
|
"q_hi": 1.0,
|
||||||
},
|
"y_target":
|
||||||
"y_target":
|
[
|
||||||
[
|
0, 0.2,
|
||||||
0, 0.16,
|
1000, 0.2
|
||||||
1000, 0.165,
|
]
|
||||||
10000, 0.17
|
},
|
||||||
],
|
{
|
||||||
"startup_frames": 5,
|
"bound": "UPPER",
|
||||||
"convergence_frames": 6,
|
"q_lo": 0.98,
|
||||||
"speed": 0.15
|
"q_hi": 1.0,
|
||||||
},
|
"y_target":
|
||||||
{
|
[
|
||||||
"base_ev": 1.5,
|
0, 0.8,
|
||||||
"metering_modes":
|
1000, 0.8
|
||||||
{
|
]
|
||||||
"centre-weighted":
|
}
|
||||||
{
|
]
|
||||||
"weights": [ 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
},
|
||||||
},
|
"y_target":
|
||||||
"spot":
|
[
|
||||||
{
|
0, 0.16,
|
||||||
"weights": [ 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
|
1000, 0.165,
|
||||||
},
|
10000, 0.17
|
||||||
"matrix":
|
],
|
||||||
{
|
"startup_frames": 5,
|
||||||
"weights": [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
|
"convergence_frames": 6,
|
||||||
}
|
"speed": 0.15
|
||||||
},
|
},
|
||||||
"exposure_modes":
|
{
|
||||||
{
|
"base_ev": 1.5,
|
||||||
"normal":
|
"metering_modes":
|
||||||
{
|
{
|
||||||
"shutter": [ 100, 15000, 30000, 60000, 120000 ],
|
"centre-weighted":
|
||||||
"gain": [ 1.0, 1.0, 2.0, 4.0, 6.0 ]
|
{
|
||||||
},
|
"weights":
|
||||||
"short":
|
[
|
||||||
{
|
3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
"shutter": [ 100, 5000, 10000, 20000, 120000 ],
|
]
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 6.0 ]
|
},
|
||||||
},
|
"spot":
|
||||||
"long":
|
{
|
||||||
{
|
"weights":
|
||||||
"shutter": [ 1000, 30000, 60000, 90000, 120000 ],
|
[
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
}
|
]
|
||||||
},
|
},
|
||||||
"constraint_modes":
|
"matrix":
|
||||||
{
|
{
|
||||||
"normal": [
|
"weights":
|
||||||
{
|
[
|
||||||
"bound": "LOWER",
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||||
"q_lo": 0.98,
|
]
|
||||||
"q_hi": 1.0,
|
}
|
||||||
"y_target":
|
},
|
||||||
[
|
"exposure_modes":
|
||||||
0, 0.2,
|
{
|
||||||
1000, 0.2
|
"normal":
|
||||||
]
|
{
|
||||||
}
|
"shutter": [ 100, 15000, 30000, 60000, 120000 ],
|
||||||
],
|
"gain": [ 1.0, 1.0, 2.0, 4.0, 6.0 ]
|
||||||
"highlight": [
|
},
|
||||||
{
|
"short":
|
||||||
"bound": "LOWER",
|
{
|
||||||
"q_lo": 0.98,
|
"shutter": [ 100, 5000, 10000, 20000, 120000 ],
|
||||||
"q_hi": 1.0,
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 6.0 ]
|
||||||
"y_target":
|
},
|
||||||
[
|
"long":
|
||||||
0, 0.2,
|
{
|
||||||
1000, 0.2
|
"shutter": [ 1000, 30000, 60000, 90000, 120000 ],
|
||||||
]
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
||||||
},
|
}
|
||||||
{
|
},
|
||||||
"bound": "UPPER",
|
"constraint_modes":
|
||||||
"q_lo": 0.98,
|
{
|
||||||
"q_hi": 1.0,
|
"normal": [
|
||||||
"y_target":
|
{
|
||||||
[
|
"bound": "LOWER",
|
||||||
0, 0.8,
|
"q_lo": 0.98,
|
||||||
1000, 0.8
|
"q_hi": 1.0,
|
||||||
]
|
"y_target":
|
||||||
}
|
[
|
||||||
]
|
0, 0.2,
|
||||||
},
|
1000, 0.2
|
||||||
"y_target":
|
]
|
||||||
[
|
}
|
||||||
0, 0.16,
|
],
|
||||||
1000, 0.165,
|
"highlight": [
|
||||||
10000, 0.17
|
{
|
||||||
],
|
"bound": "LOWER",
|
||||||
"startup_frames": 5,
|
"q_lo": 0.98,
|
||||||
"convergence_frames": 6,
|
"q_hi": 1.0,
|
||||||
"speed": 0.15
|
"y_target":
|
||||||
}
|
[
|
||||||
]
|
0, 0.2,
|
||||||
}
|
1000, 0.2
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"bound": "UPPER",
|
||||||
|
"q_lo": 0.98,
|
||||||
|
"q_hi": 1.0,
|
||||||
|
"y_target":
|
||||||
|
[
|
||||||
|
0, 0.8,
|
||||||
|
1000, 0.8
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"y_target":
|
||||||
|
[
|
||||||
|
0, 0.16,
|
||||||
|
1000, 0.165,
|
||||||
|
10000, 0.17
|
||||||
|
],
|
||||||
|
"startup_frames": 5,
|
||||||
|
"convergence_frames": 6,
|
||||||
|
"speed": 0.15
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"rpi.alsc":
|
"rpi.alsc":
|
||||||
|
@ -726,20 +752,19 @@
|
||||||
"map": [ 0.0, 445, 15.0, 925 ]
|
"map": [ 0.0, 445, 15.0, 925 ]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"rpi.hdr":
|
"rpi.hdr":
|
||||||
{
|
{
|
||||||
"MultiExposure":
|
"MultiExposureUnmerged":
|
||||||
{
|
{
|
||||||
"cadence": [ 1, 2 ],
|
"cadence": [ 1, 2 ],
|
||||||
"channel_map": { "short": 1, "long": 2 }
|
"channel_map":
|
||||||
},
|
{
|
||||||
"SingleExposure":
|
"short": 1,
|
||||||
{
|
"long": 2
|
||||||
"cadence": [ 1 ],
|
}
|
||||||
"channel_map": { "short": 1 }
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
]
|
]
|
||||||
}
|
}
|
|
@ -129,255 +129,281 @@
|
||||||
{
|
{
|
||||||
"rpi.agc":
|
"rpi.agc":
|
||||||
{
|
{
|
||||||
"channels":
|
"channels": [
|
||||||
[
|
{
|
||||||
{
|
"metering_modes":
|
||||||
"metering_modes":
|
{
|
||||||
{
|
"centre-weighted":
|
||||||
"centre-weighted":
|
{
|
||||||
{
|
"weights":
|
||||||
"weights": [ 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
[
|
||||||
},
|
3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
"spot":
|
]
|
||||||
{
|
},
|
||||||
"weights": [ 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
|
"spot":
|
||||||
},
|
{
|
||||||
"matrix":
|
"weights":
|
||||||
{
|
[
|
||||||
"weights": [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
|
2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
}
|
]
|
||||||
},
|
},
|
||||||
"exposure_modes":
|
"matrix":
|
||||||
{
|
{
|
||||||
"normal":
|
"weights":
|
||||||
{
|
[
|
||||||
"shutter": [ 100, 15000, 30000, 60000, 120000 ],
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||||
"gain": [ 1.0, 1.0, 2.0, 4.0, 6.0 ]
|
]
|
||||||
},
|
}
|
||||||
"short":
|
},
|
||||||
{
|
"exposure_modes":
|
||||||
"shutter": [ 100, 5000, 10000, 20000, 120000 ],
|
{
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 6.0 ]
|
"normal":
|
||||||
},
|
{
|
||||||
"long":
|
"shutter": [ 100, 15000, 30000, 60000, 120000 ],
|
||||||
{
|
"gain": [ 1.0, 1.0, 2.0, 4.0, 6.0 ]
|
||||||
"shutter": [ 1000, 30000, 60000, 90000, 120000 ],
|
},
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
"short":
|
||||||
}
|
{
|
||||||
},
|
"shutter": [ 100, 5000, 10000, 20000, 120000 ],
|
||||||
"constraint_modes":
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 6.0 ]
|
||||||
{
|
},
|
||||||
"normal": [
|
"long":
|
||||||
{
|
{
|
||||||
"bound": "LOWER",
|
"shutter": [ 1000, 30000, 60000, 90000, 120000 ],
|
||||||
"q_lo": 0.98,
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
||||||
"q_hi": 1.0,
|
}
|
||||||
"y_target":
|
},
|
||||||
[
|
"constraint_modes":
|
||||||
0, 0.2,
|
{
|
||||||
1000, 0.2
|
"normal": [
|
||||||
]
|
{
|
||||||
}
|
"bound": "LOWER",
|
||||||
],
|
"q_lo": 0.98,
|
||||||
"highlight": [
|
"q_hi": 1.0,
|
||||||
{
|
"y_target":
|
||||||
"bound": "LOWER",
|
[
|
||||||
"q_lo": 0.98,
|
0, 0.2,
|
||||||
"q_hi": 1.0,
|
1000, 0.2
|
||||||
"y_target":
|
]
|
||||||
[
|
}
|
||||||
0, 0.2,
|
],
|
||||||
1000, 0.2
|
"highlight": [
|
||||||
]
|
{
|
||||||
},
|
"bound": "LOWER",
|
||||||
{
|
"q_lo": 0.98,
|
||||||
"bound": "UPPER",
|
"q_hi": 1.0,
|
||||||
"q_lo": 0.98,
|
"y_target":
|
||||||
"q_hi": 1.0,
|
[
|
||||||
"y_target":
|
0, 0.2,
|
||||||
[
|
1000, 0.2
|
||||||
0, 0.8,
|
]
|
||||||
1000, 0.8
|
},
|
||||||
]
|
{
|
||||||
}
|
"bound": "UPPER",
|
||||||
]
|
"q_lo": 0.98,
|
||||||
},
|
"q_hi": 1.0,
|
||||||
"y_target":
|
"y_target":
|
||||||
[
|
[
|
||||||
0, 0.16,
|
0, 0.8,
|
||||||
1000, 0.165,
|
1000, 0.8
|
||||||
10000, 0.17
|
]
|
||||||
],
|
}
|
||||||
"startup_frames": 5,
|
]
|
||||||
"convergence_frames": 6,
|
},
|
||||||
"speed": 0.15
|
"y_target":
|
||||||
},
|
[
|
||||||
{
|
0, 0.16,
|
||||||
"base_ev": 0.125,
|
1000, 0.165,
|
||||||
"metering_modes":
|
10000, 0.17
|
||||||
{
|
],
|
||||||
"centre-weighted":
|
"startup_frames": 5,
|
||||||
{
|
"convergence_frames": 6,
|
||||||
"weights": [ 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
"speed": 0.15
|
||||||
},
|
},
|
||||||
"spot":
|
{
|
||||||
{
|
"base_ev": 0.125,
|
||||||
"weights": [ 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
|
"metering_modes":
|
||||||
},
|
{
|
||||||
"matrix":
|
"centre-weighted":
|
||||||
{
|
{
|
||||||
"weights": [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
|
"weights":
|
||||||
}
|
[
|
||||||
},
|
3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
"exposure_modes":
|
]
|
||||||
{
|
},
|
||||||
"normal":
|
"spot":
|
||||||
{
|
{
|
||||||
"shutter": [ 100, 15000, 30000, 60000, 120000 ],
|
"weights":
|
||||||
"gain": [ 1.0, 1.0, 2.0, 4.0, 6.0 ]
|
[
|
||||||
},
|
2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
"short":
|
]
|
||||||
{
|
},
|
||||||
"shutter": [ 100, 5000, 10000, 20000, 120000 ],
|
"matrix":
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 6.0 ]
|
{
|
||||||
},
|
"weights":
|
||||||
"long":
|
[
|
||||||
{
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||||
"shutter": [ 1000, 30000, 60000, 90000, 120000 ],
|
]
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
}
|
||||||
}
|
},
|
||||||
},
|
"exposure_modes":
|
||||||
"constraint_modes":
|
{
|
||||||
{
|
"normal":
|
||||||
"normal": [
|
{
|
||||||
{
|
"shutter": [ 100, 15000, 30000, 60000, 120000 ],
|
||||||
"bound": "LOWER",
|
"gain": [ 1.0, 1.0, 2.0, 4.0, 6.0 ]
|
||||||
"q_lo": 0.98,
|
},
|
||||||
"q_hi": 1.0,
|
"short":
|
||||||
"y_target":
|
{
|
||||||
[
|
"shutter": [ 100, 5000, 10000, 20000, 120000 ],
|
||||||
0, 0.2,
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 6.0 ]
|
||||||
1000, 0.2
|
},
|
||||||
]
|
"long":
|
||||||
}
|
{
|
||||||
],
|
"shutter": [ 1000, 30000, 60000, 90000, 120000 ],
|
||||||
"highlight": [
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
||||||
{
|
}
|
||||||
"bound": "LOWER",
|
},
|
||||||
"q_lo": 0.98,
|
"constraint_modes":
|
||||||
"q_hi": 1.0,
|
{
|
||||||
"y_target":
|
"normal": [
|
||||||
[
|
{
|
||||||
0, 0.2,
|
"bound": "LOWER",
|
||||||
1000, 0.2
|
"q_lo": 0.98,
|
||||||
]
|
"q_hi": 1.0,
|
||||||
},
|
"y_target":
|
||||||
{
|
[
|
||||||
"bound": "UPPER",
|
0, 0.2,
|
||||||
"q_lo": 0.98,
|
1000, 0.2
|
||||||
"q_hi": 1.0,
|
]
|
||||||
"y_target":
|
}
|
||||||
[
|
],
|
||||||
0, 0.8,
|
"highlight": [
|
||||||
1000, 0.8
|
{
|
||||||
]
|
"bound": "LOWER",
|
||||||
}
|
"q_lo": 0.98,
|
||||||
]
|
"q_hi": 1.0,
|
||||||
},
|
"y_target":
|
||||||
"y_target":
|
[
|
||||||
[
|
0, 0.2,
|
||||||
0, 0.16,
|
1000, 0.2
|
||||||
1000, 0.165,
|
]
|
||||||
10000, 0.17
|
},
|
||||||
],
|
{
|
||||||
"startup_frames": 5,
|
"bound": "UPPER",
|
||||||
"convergence_frames": 6,
|
"q_lo": 0.98,
|
||||||
"speed": 0.15
|
"q_hi": 1.0,
|
||||||
},
|
"y_target":
|
||||||
{
|
[
|
||||||
"base_ev": 1.5,
|
0, 0.8,
|
||||||
"metering_modes":
|
1000, 0.8
|
||||||
{
|
]
|
||||||
"centre-weighted":
|
}
|
||||||
{
|
]
|
||||||
"weights": [ 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
},
|
||||||
},
|
"y_target":
|
||||||
"spot":
|
[
|
||||||
{
|
0, 0.16,
|
||||||
"weights": [ 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
|
1000, 0.165,
|
||||||
},
|
10000, 0.17
|
||||||
"matrix":
|
],
|
||||||
{
|
"startup_frames": 5,
|
||||||
"weights": [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
|
"convergence_frames": 6,
|
||||||
}
|
"speed": 0.15
|
||||||
},
|
},
|
||||||
"exposure_modes":
|
{
|
||||||
{
|
"base_ev": 1.5,
|
||||||
"normal":
|
"metering_modes":
|
||||||
{
|
{
|
||||||
"shutter": [ 100, 15000, 30000, 60000, 120000 ],
|
"centre-weighted":
|
||||||
"gain": [ 1.0, 1.0, 2.0, 4.0, 6.0 ]
|
{
|
||||||
},
|
"weights":
|
||||||
"short":
|
[
|
||||||
{
|
3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
"shutter": [ 100, 5000, 10000, 20000, 120000 ],
|
]
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 6.0 ]
|
},
|
||||||
},
|
"spot":
|
||||||
"long":
|
{
|
||||||
{
|
"weights":
|
||||||
"shutter": [ 1000, 30000, 60000, 90000, 120000 ],
|
[
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
}
|
]
|
||||||
},
|
},
|
||||||
"constraint_modes":
|
"matrix":
|
||||||
{
|
{
|
||||||
"normal": [
|
"weights":
|
||||||
{
|
[
|
||||||
"bound": "LOWER",
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||||
"q_lo": 0.98,
|
]
|
||||||
"q_hi": 1.0,
|
}
|
||||||
"y_target":
|
},
|
||||||
[
|
"exposure_modes":
|
||||||
0, 0.2,
|
{
|
||||||
1000, 0.2
|
"normal":
|
||||||
]
|
{
|
||||||
}
|
"shutter": [ 100, 15000, 30000, 60000, 120000 ],
|
||||||
],
|
"gain": [ 1.0, 1.0, 2.0, 4.0, 6.0 ]
|
||||||
"highlight": [
|
},
|
||||||
{
|
"short":
|
||||||
"bound": "LOWER",
|
{
|
||||||
"q_lo": 0.98,
|
"shutter": [ 100, 5000, 10000, 20000, 120000 ],
|
||||||
"q_hi": 1.0,
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 6.0 ]
|
||||||
"y_target":
|
},
|
||||||
[
|
"long":
|
||||||
0, 0.2,
|
{
|
||||||
1000, 0.2
|
"shutter": [ 1000, 30000, 60000, 90000, 120000 ],
|
||||||
]
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
||||||
},
|
}
|
||||||
{
|
},
|
||||||
"bound": "UPPER",
|
"constraint_modes":
|
||||||
"q_lo": 0.98,
|
{
|
||||||
"q_hi": 1.0,
|
"normal": [
|
||||||
"y_target":
|
{
|
||||||
[
|
"bound": "LOWER",
|
||||||
0, 0.8,
|
"q_lo": 0.98,
|
||||||
1000, 0.8
|
"q_hi": 1.0,
|
||||||
]
|
"y_target":
|
||||||
}
|
[
|
||||||
]
|
0, 0.2,
|
||||||
},
|
1000, 0.2
|
||||||
"y_target":
|
]
|
||||||
[
|
}
|
||||||
0, 0.16,
|
],
|
||||||
1000, 0.165,
|
"highlight": [
|
||||||
10000, 0.17
|
{
|
||||||
],
|
"bound": "LOWER",
|
||||||
"startup_frames": 5,
|
"q_lo": 0.98,
|
||||||
"convergence_frames": 6,
|
"q_hi": 1.0,
|
||||||
"speed": 0.15
|
"y_target":
|
||||||
}
|
[
|
||||||
]
|
0, 0.2,
|
||||||
}
|
1000, 0.2
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"bound": "UPPER",
|
||||||
|
"q_lo": 0.98,
|
||||||
|
"q_hi": 1.0,
|
||||||
|
"y_target":
|
||||||
|
[
|
||||||
|
0, 0.8,
|
||||||
|
1000, 0.8
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"y_target":
|
||||||
|
[
|
||||||
|
0, 0.16,
|
||||||
|
1000, 0.165,
|
||||||
|
10000, 0.17
|
||||||
|
],
|
||||||
|
"startup_frames": 5,
|
||||||
|
"convergence_frames": 6,
|
||||||
|
"speed": 0.15
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"rpi.alsc":
|
"rpi.alsc":
|
||||||
|
@ -638,20 +664,19 @@
|
||||||
"map": [ 0.0, 420, 35.0, 920 ]
|
"map": [ 0.0, 420, 35.0, 920 ]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"rpi.hdr":
|
"rpi.hdr":
|
||||||
{
|
{
|
||||||
"MultiExposure":
|
"MultiExposureUnmerged":
|
||||||
{
|
{
|
||||||
"cadence": [ 1, 2 ],
|
"cadence": [ 1, 2 ],
|
||||||
"channel_map": { "short": 1, "long": 2 }
|
"channel_map":
|
||||||
},
|
{
|
||||||
"SingleExposure":
|
"short": 1,
|
||||||
{
|
"long": 2
|
||||||
"cadence": [ 1 ],
|
}
|
||||||
"channel_map": { "short": 1 }
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
]
|
]
|
||||||
}
|
}
|
|
@ -129,255 +129,281 @@
|
||||||
{
|
{
|
||||||
"rpi.agc":
|
"rpi.agc":
|
||||||
{
|
{
|
||||||
"channels":
|
"channels": [
|
||||||
[
|
{
|
||||||
{
|
"metering_modes":
|
||||||
"metering_modes":
|
{
|
||||||
{
|
"centre-weighted":
|
||||||
"centre-weighted":
|
{
|
||||||
{
|
"weights":
|
||||||
"weights": [ 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
[
|
||||||
},
|
3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
"spot":
|
]
|
||||||
{
|
},
|
||||||
"weights": [ 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
|
"spot":
|
||||||
},
|
{
|
||||||
"matrix":
|
"weights":
|
||||||
{
|
[
|
||||||
"weights": [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
|
2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
}
|
]
|
||||||
},
|
},
|
||||||
"exposure_modes":
|
"matrix":
|
||||||
{
|
{
|
||||||
"normal":
|
"weights":
|
||||||
{
|
[
|
||||||
"shutter": [ 100, 15000, 30000, 60000, 120000 ],
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||||
"gain": [ 1.0, 1.0, 2.0, 4.0, 6.0 ]
|
]
|
||||||
},
|
}
|
||||||
"short":
|
},
|
||||||
{
|
"exposure_modes":
|
||||||
"shutter": [ 100, 5000, 10000, 20000, 120000 ],
|
{
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 6.0 ]
|
"normal":
|
||||||
},
|
{
|
||||||
"long":
|
"shutter": [ 100, 15000, 30000, 60000, 120000 ],
|
||||||
{
|
"gain": [ 1.0, 1.0, 2.0, 4.0, 6.0 ]
|
||||||
"shutter": [ 1000, 30000, 60000, 90000, 120000 ],
|
},
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
"short":
|
||||||
}
|
{
|
||||||
},
|
"shutter": [ 100, 5000, 10000, 20000, 120000 ],
|
||||||
"constraint_modes":
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 6.0 ]
|
||||||
{
|
},
|
||||||
"normal": [
|
"long":
|
||||||
{
|
{
|
||||||
"bound": "LOWER",
|
"shutter": [ 1000, 30000, 60000, 90000, 120000 ],
|
||||||
"q_lo": 0.98,
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
||||||
"q_hi": 1.0,
|
}
|
||||||
"y_target":
|
},
|
||||||
[
|
"constraint_modes":
|
||||||
0, 0.2,
|
{
|
||||||
1000, 0.2
|
"normal": [
|
||||||
]
|
{
|
||||||
}
|
"bound": "LOWER",
|
||||||
],
|
"q_lo": 0.98,
|
||||||
"highlight": [
|
"q_hi": 1.0,
|
||||||
{
|
"y_target":
|
||||||
"bound": "LOWER",
|
[
|
||||||
"q_lo": 0.98,
|
0, 0.2,
|
||||||
"q_hi": 1.0,
|
1000, 0.2
|
||||||
"y_target":
|
]
|
||||||
[
|
}
|
||||||
0, 0.2,
|
],
|
||||||
1000, 0.2
|
"highlight": [
|
||||||
]
|
{
|
||||||
},
|
"bound": "LOWER",
|
||||||
{
|
"q_lo": 0.98,
|
||||||
"bound": "UPPER",
|
"q_hi": 1.0,
|
||||||
"q_lo": 0.98,
|
"y_target":
|
||||||
"q_hi": 1.0,
|
[
|
||||||
"y_target":
|
0, 0.2,
|
||||||
[
|
1000, 0.2
|
||||||
0, 0.8,
|
]
|
||||||
1000, 0.8
|
},
|
||||||
]
|
{
|
||||||
}
|
"bound": "UPPER",
|
||||||
]
|
"q_lo": 0.98,
|
||||||
},
|
"q_hi": 1.0,
|
||||||
"y_target":
|
"y_target":
|
||||||
[
|
[
|
||||||
0, 0.16,
|
0, 0.8,
|
||||||
1000, 0.165,
|
1000, 0.8
|
||||||
10000, 0.17
|
]
|
||||||
],
|
}
|
||||||
"startup_frames": 5,
|
]
|
||||||
"convergence_frames": 6,
|
},
|
||||||
"speed": 0.15
|
"y_target":
|
||||||
},
|
[
|
||||||
{
|
0, 0.16,
|
||||||
"base_ev": 0.125,
|
1000, 0.165,
|
||||||
"metering_modes":
|
10000, 0.17
|
||||||
{
|
],
|
||||||
"centre-weighted":
|
"startup_frames": 5,
|
||||||
{
|
"convergence_frames": 6,
|
||||||
"weights": [ 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
"speed": 0.15
|
||||||
},
|
},
|
||||||
"spot":
|
{
|
||||||
{
|
"base_ev": 0.125,
|
||||||
"weights": [ 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
|
"metering_modes":
|
||||||
},
|
{
|
||||||
"matrix":
|
"centre-weighted":
|
||||||
{
|
{
|
||||||
"weights": [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
|
"weights":
|
||||||
}
|
[
|
||||||
},
|
3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
"exposure_modes":
|
]
|
||||||
{
|
},
|
||||||
"normal":
|
"spot":
|
||||||
{
|
{
|
||||||
"shutter": [ 100, 15000, 30000, 60000, 120000 ],
|
"weights":
|
||||||
"gain": [ 1.0, 1.0, 2.0, 4.0, 6.0 ]
|
[
|
||||||
},
|
2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
"short":
|
]
|
||||||
{
|
},
|
||||||
"shutter": [ 100, 5000, 10000, 20000, 120000 ],
|
"matrix":
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 6.0 ]
|
{
|
||||||
},
|
"weights":
|
||||||
"long":
|
[
|
||||||
{
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||||
"shutter": [ 1000, 30000, 60000, 90000, 120000 ],
|
]
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
}
|
||||||
}
|
},
|
||||||
},
|
"exposure_modes":
|
||||||
"constraint_modes":
|
{
|
||||||
{
|
"normal":
|
||||||
"normal": [
|
{
|
||||||
{
|
"shutter": [ 100, 15000, 30000, 60000, 120000 ],
|
||||||
"bound": "LOWER",
|
"gain": [ 1.0, 1.0, 2.0, 4.0, 6.0 ]
|
||||||
"q_lo": 0.98,
|
},
|
||||||
"q_hi": 1.0,
|
"short":
|
||||||
"y_target":
|
{
|
||||||
[
|
"shutter": [ 100, 5000, 10000, 20000, 120000 ],
|
||||||
0, 0.2,
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 6.0 ]
|
||||||
1000, 0.2
|
},
|
||||||
]
|
"long":
|
||||||
}
|
{
|
||||||
],
|
"shutter": [ 1000, 30000, 60000, 90000, 120000 ],
|
||||||
"highlight": [
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
||||||
{
|
}
|
||||||
"bound": "LOWER",
|
},
|
||||||
"q_lo": 0.98,
|
"constraint_modes":
|
||||||
"q_hi": 1.0,
|
{
|
||||||
"y_target":
|
"normal": [
|
||||||
[
|
{
|
||||||
0, 0.2,
|
"bound": "LOWER",
|
||||||
1000, 0.2
|
"q_lo": 0.98,
|
||||||
]
|
"q_hi": 1.0,
|
||||||
},
|
"y_target":
|
||||||
{
|
[
|
||||||
"bound": "UPPER",
|
0, 0.2,
|
||||||
"q_lo": 0.98,
|
1000, 0.2
|
||||||
"q_hi": 1.0,
|
]
|
||||||
"y_target":
|
}
|
||||||
[
|
],
|
||||||
0, 0.8,
|
"highlight": [
|
||||||
1000, 0.8
|
{
|
||||||
]
|
"bound": "LOWER",
|
||||||
}
|
"q_lo": 0.98,
|
||||||
]
|
"q_hi": 1.0,
|
||||||
},
|
"y_target":
|
||||||
"y_target":
|
[
|
||||||
[
|
0, 0.2,
|
||||||
0, 0.16,
|
1000, 0.2
|
||||||
1000, 0.165,
|
]
|
||||||
10000, 0.17
|
},
|
||||||
],
|
{
|
||||||
"startup_frames": 5,
|
"bound": "UPPER",
|
||||||
"convergence_frames": 6,
|
"q_lo": 0.98,
|
||||||
"speed": 0.15
|
"q_hi": 1.0,
|
||||||
},
|
"y_target":
|
||||||
{
|
[
|
||||||
"base_ev": 1.5,
|
0, 0.8,
|
||||||
"metering_modes":
|
1000, 0.8
|
||||||
{
|
]
|
||||||
"centre-weighted":
|
}
|
||||||
{
|
]
|
||||||
"weights": [ 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
},
|
||||||
},
|
"y_target":
|
||||||
"spot":
|
[
|
||||||
{
|
0, 0.16,
|
||||||
"weights": [ 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
|
1000, 0.165,
|
||||||
},
|
10000, 0.17
|
||||||
"matrix":
|
],
|
||||||
{
|
"startup_frames": 5,
|
||||||
"weights": [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
|
"convergence_frames": 6,
|
||||||
}
|
"speed": 0.15
|
||||||
},
|
},
|
||||||
"exposure_modes":
|
{
|
||||||
{
|
"base_ev": 1.5,
|
||||||
"normal":
|
"metering_modes":
|
||||||
{
|
{
|
||||||
"shutter": [ 100, 15000, 30000, 60000, 120000 ],
|
"centre-weighted":
|
||||||
"gain": [ 1.0, 1.0, 2.0, 4.0, 6.0 ]
|
{
|
||||||
},
|
"weights":
|
||||||
"short":
|
[
|
||||||
{
|
3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
"shutter": [ 100, 5000, 10000, 20000, 120000 ],
|
]
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 6.0 ]
|
},
|
||||||
},
|
"spot":
|
||||||
"long":
|
{
|
||||||
{
|
"weights":
|
||||||
"shutter": [ 1000, 30000, 60000, 90000, 120000 ],
|
[
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
}
|
]
|
||||||
},
|
},
|
||||||
"constraint_modes":
|
"matrix":
|
||||||
{
|
{
|
||||||
"normal": [
|
"weights":
|
||||||
{
|
[
|
||||||
"bound": "LOWER",
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||||
"q_lo": 0.98,
|
]
|
||||||
"q_hi": 1.0,
|
}
|
||||||
"y_target":
|
},
|
||||||
[
|
"exposure_modes":
|
||||||
0, 0.2,
|
{
|
||||||
1000, 0.2
|
"normal":
|
||||||
]
|
{
|
||||||
}
|
"shutter": [ 100, 15000, 30000, 60000, 120000 ],
|
||||||
],
|
"gain": [ 1.0, 1.0, 2.0, 4.0, 6.0 ]
|
||||||
"highlight": [
|
},
|
||||||
{
|
"short":
|
||||||
"bound": "LOWER",
|
{
|
||||||
"q_lo": 0.98,
|
"shutter": [ 100, 5000, 10000, 20000, 120000 ],
|
||||||
"q_hi": 1.0,
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 6.0 ]
|
||||||
"y_target":
|
},
|
||||||
[
|
"long":
|
||||||
0, 0.2,
|
{
|
||||||
1000, 0.2
|
"shutter": [ 1000, 30000, 60000, 90000, 120000 ],
|
||||||
]
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
||||||
},
|
}
|
||||||
{
|
},
|
||||||
"bound": "UPPER",
|
"constraint_modes":
|
||||||
"q_lo": 0.98,
|
{
|
||||||
"q_hi": 1.0,
|
"normal": [
|
||||||
"y_target":
|
{
|
||||||
[
|
"bound": "LOWER",
|
||||||
0, 0.8,
|
"q_lo": 0.98,
|
||||||
1000, 0.8
|
"q_hi": 1.0,
|
||||||
]
|
"y_target":
|
||||||
}
|
[
|
||||||
]
|
0, 0.2,
|
||||||
},
|
1000, 0.2
|
||||||
"y_target":
|
]
|
||||||
[
|
}
|
||||||
0, 0.16,
|
],
|
||||||
1000, 0.165,
|
"highlight": [
|
||||||
10000, 0.17
|
{
|
||||||
],
|
"bound": "LOWER",
|
||||||
"startup_frames": 5,
|
"q_lo": 0.98,
|
||||||
"convergence_frames": 6,
|
"q_hi": 1.0,
|
||||||
"speed": 0.15
|
"y_target":
|
||||||
}
|
[
|
||||||
]
|
0, 0.2,
|
||||||
}
|
1000, 0.2
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"bound": "UPPER",
|
||||||
|
"q_lo": 0.98,
|
||||||
|
"q_hi": 1.0,
|
||||||
|
"y_target":
|
||||||
|
[
|
||||||
|
0, 0.8,
|
||||||
|
1000, 0.8
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"y_target":
|
||||||
|
[
|
||||||
|
0, 0.16,
|
||||||
|
1000, 0.165,
|
||||||
|
10000, 0.17
|
||||||
|
],
|
||||||
|
"startup_frames": 5,
|
||||||
|
"convergence_frames": 6,
|
||||||
|
"speed": 0.15
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"rpi.alsc":
|
"rpi.alsc":
|
||||||
|
@ -629,20 +655,19 @@
|
||||||
"map": [ 0.0, 420, 35.0, 920 ]
|
"map": [ 0.0, 420, 35.0, 920 ]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"rpi.hdr":
|
"rpi.hdr":
|
||||||
{
|
{
|
||||||
"MultiExposure":
|
"MultiExposureUnmerged":
|
||||||
{
|
{
|
||||||
"cadence": [ 1, 2 ],
|
"cadence": [ 1, 2 ],
|
||||||
"channel_map": { "short": 1, "long": 2 }
|
"channel_map":
|
||||||
},
|
{
|
||||||
"SingleExposure":
|
"short": 1,
|
||||||
{
|
"long": 2
|
||||||
"cadence": [ 1 ],
|
}
|
||||||
"channel_map": { "short": 1 }
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
]
|
]
|
||||||
}
|
}
|
|
@ -131,285 +131,309 @@
|
||||||
{
|
{
|
||||||
"rpi.agc":
|
"rpi.agc":
|
||||||
{
|
{
|
||||||
"channels":
|
"channels": [
|
||||||
[
|
{
|
||||||
{
|
"metering_modes":
|
||||||
"metering_modes":
|
{
|
||||||
{
|
"centre-weighted":
|
||||||
"centre-weighted":
|
{
|
||||||
{
|
"weights":
|
||||||
"weights": [ 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
[
|
||||||
},
|
3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
"spot":
|
]
|
||||||
{
|
},
|
||||||
"weights": [ 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
|
"spot":
|
||||||
},
|
{
|
||||||
"matrix":
|
"weights":
|
||||||
{
|
[
|
||||||
"weights": [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
|
2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
}
|
]
|
||||||
},
|
},
|
||||||
"exposure_modes":
|
"matrix":
|
||||||
{
|
{
|
||||||
"normal":
|
"weights":
|
||||||
{
|
[
|
||||||
"shutter": [ 100, 10000, 30000, 60000, 66666 ],
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
]
|
||||||
},
|
}
|
||||||
"short":
|
},
|
||||||
{
|
"exposure_modes":
|
||||||
"shutter": [ 100, 5000, 10000, 20000, 33333 ],
|
{
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
"normal":
|
||||||
},
|
{
|
||||||
"long":
|
"shutter": [ 100, 10000, 30000, 60000, 66666 ],
|
||||||
{
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
||||||
"shutter": [ 100, 10000, 30000, 60000, 120000 ],
|
},
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
"short":
|
||||||
}
|
{
|
||||||
},
|
"shutter": [ 100, 5000, 10000, 20000, 33333 ],
|
||||||
"constraint_modes":
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
||||||
{
|
},
|
||||||
"normal": [
|
"long":
|
||||||
{
|
{
|
||||||
"bound": "LOWER",
|
"shutter": [ 100, 10000, 30000, 60000, 120000 ],
|
||||||
"q_lo": 0.98,
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
||||||
"q_hi": 1.0,
|
}
|
||||||
"y_target":
|
},
|
||||||
[
|
"constraint_modes":
|
||||||
0, 0.5,
|
{
|
||||||
1000, 0.5
|
"normal": [
|
||||||
]
|
{
|
||||||
}
|
"bound": "LOWER",
|
||||||
],
|
"q_lo": 0.98,
|
||||||
"highlight": [
|
"q_hi": 1.0,
|
||||||
{
|
"y_target":
|
||||||
"bound": "LOWER",
|
[
|
||||||
"q_lo": 0.98,
|
0, 0.5,
|
||||||
"q_hi": 1.0,
|
1000, 0.5
|
||||||
"y_target":
|
]
|
||||||
[
|
}
|
||||||
0, 0.5,
|
],
|
||||||
1000, 0.5
|
"highlight": [
|
||||||
]
|
{
|
||||||
},
|
"bound": "LOWER",
|
||||||
{
|
"q_lo": 0.98,
|
||||||
"bound": "UPPER",
|
"q_hi": 1.0,
|
||||||
"q_lo": 0.98,
|
"y_target":
|
||||||
"q_hi": 1.0,
|
[
|
||||||
"y_target":
|
0, 0.5,
|
||||||
[
|
1000, 0.5
|
||||||
0, 0.8,
|
]
|
||||||
1000, 0.8
|
},
|
||||||
]
|
{
|
||||||
}
|
"bound": "UPPER",
|
||||||
],
|
"q_lo": 0.98,
|
||||||
"shadows": [
|
"q_hi": 1.0,
|
||||||
{
|
"y_target":
|
||||||
"bound": "LOWER",
|
[
|
||||||
"q_lo": 0.0,
|
0, 0.8,
|
||||||
"q_hi": 0.5,
|
1000, 0.8
|
||||||
"y_target":
|
]
|
||||||
[
|
}
|
||||||
0, 0.17,
|
],
|
||||||
1000, 0.17
|
"shadows": [
|
||||||
]
|
{
|
||||||
}
|
"bound": "LOWER",
|
||||||
]
|
"q_lo": 0.0,
|
||||||
},
|
"q_hi": 0.5,
|
||||||
"y_target":
|
"y_target":
|
||||||
[
|
[
|
||||||
0, 0.16,
|
0, 0.17,
|
||||||
1000, 0.165,
|
1000, 0.17
|
||||||
10000, 0.17
|
]
|
||||||
],
|
}
|
||||||
"base_ev": 1.25
|
]
|
||||||
},
|
},
|
||||||
{
|
"y_target":
|
||||||
"base_ev": 0.125,
|
[
|
||||||
"metering_modes":
|
0, 0.16,
|
||||||
{
|
1000, 0.165,
|
||||||
"centre-weighted":
|
10000, 0.17
|
||||||
{
|
],
|
||||||
"weights": [ 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
"base_ev": 1.25
|
||||||
},
|
},
|
||||||
"spot":
|
{
|
||||||
{
|
"base_ev": 1.25,
|
||||||
"weights": [ 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
|
"metering_modes":
|
||||||
},
|
{
|
||||||
"matrix":
|
"centre-weighted":
|
||||||
{
|
{
|
||||||
"weights": [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
|
"weights":
|
||||||
}
|
[
|
||||||
},
|
3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
"exposure_modes":
|
]
|
||||||
{
|
},
|
||||||
"normal":
|
"spot":
|
||||||
{
|
{
|
||||||
"shutter": [ 100, 10000, 30000, 60000, 66666 ],
|
"weights":
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
[
|
||||||
},
|
2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
"short":
|
]
|
||||||
{
|
},
|
||||||
"shutter": [ 100, 5000, 10000, 20000, 33333 ],
|
"matrix":
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
{
|
||||||
},
|
"weights":
|
||||||
"long":
|
[
|
||||||
{
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||||
"shutter": [ 100, 10000, 30000, 60000, 120000 ],
|
]
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
}
|
||||||
}
|
},
|
||||||
},
|
"exposure_modes":
|
||||||
"constraint_modes":
|
{
|
||||||
{
|
"normal":
|
||||||
"normal": [
|
{
|
||||||
{
|
"shutter": [ 100, 10000, 30000, 60000, 66666 ],
|
||||||
"bound": "LOWER",
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
||||||
"q_lo": 0.98,
|
},
|
||||||
"q_hi": 1.0,
|
"short":
|
||||||
"y_target":
|
{
|
||||||
[
|
"shutter": [ 100, 5000, 10000, 20000, 33333 ],
|
||||||
0, 0.5,
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
||||||
1000, 0.5
|
},
|
||||||
]
|
"long":
|
||||||
}
|
{
|
||||||
],
|
"shutter": [ 100, 10000, 30000, 60000, 120000 ],
|
||||||
"highlight": [
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
||||||
{
|
}
|
||||||
"bound": "LOWER",
|
},
|
||||||
"q_lo": 0.98,
|
"constraint_modes":
|
||||||
"q_hi": 1.0,
|
{
|
||||||
"y_target":
|
"normal": [
|
||||||
[
|
{
|
||||||
0, 0.5,
|
"bound": "LOWER",
|
||||||
1000, 0.5
|
"q_lo": 0.98,
|
||||||
]
|
"q_hi": 1.0,
|
||||||
},
|
"y_target":
|
||||||
{
|
[
|
||||||
"bound": "UPPER",
|
0, 0.5,
|
||||||
"q_lo": 0.98,
|
1000, 0.5
|
||||||
"q_hi": 1.0,
|
]
|
||||||
"y_target":
|
}
|
||||||
[
|
],
|
||||||
0, 0.8,
|
"highlight": [
|
||||||
1000, 0.8
|
{
|
||||||
]
|
"bound": "LOWER",
|
||||||
}
|
"q_lo": 0.98,
|
||||||
],
|
"q_hi": 1.0,
|
||||||
"shadows": [
|
"y_target":
|
||||||
{
|
[
|
||||||
"bound": "LOWER",
|
0, 0.5,
|
||||||
"q_lo": 0.0,
|
1000, 0.5
|
||||||
"q_hi": 0.5,
|
]
|
||||||
"y_target":
|
},
|
||||||
[
|
{
|
||||||
0, 0.17,
|
"bound": "UPPER",
|
||||||
1000, 0.17
|
"q_lo": 0.98,
|
||||||
]
|
"q_hi": 1.0,
|
||||||
}
|
"y_target":
|
||||||
]
|
[
|
||||||
},
|
0, 0.8,
|
||||||
"y_target":
|
1000, 0.8
|
||||||
[
|
]
|
||||||
0, 0.16,
|
}
|
||||||
1000, 0.165,
|
],
|
||||||
10000, 0.17
|
"shadows": [
|
||||||
],
|
{
|
||||||
"base_ev": 1.25
|
"bound": "LOWER",
|
||||||
},
|
"q_lo": 0.0,
|
||||||
{
|
"q_hi": 0.5,
|
||||||
"base_ev": 1.5,
|
"y_target":
|
||||||
"metering_modes":
|
[
|
||||||
{
|
0, 0.17,
|
||||||
"centre-weighted":
|
1000, 0.17
|
||||||
{
|
]
|
||||||
"weights": [ 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
}
|
||||||
},
|
]
|
||||||
"spot":
|
},
|
||||||
{
|
"y_target":
|
||||||
"weights": [ 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
|
[
|
||||||
},
|
0, 0.16,
|
||||||
"matrix":
|
1000, 0.165,
|
||||||
{
|
10000, 0.17
|
||||||
"weights": [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
|
]
|
||||||
}
|
},
|
||||||
},
|
{
|
||||||
"exposure_modes":
|
"base_ev": 1.25,
|
||||||
{
|
"metering_modes":
|
||||||
"normal":
|
{
|
||||||
{
|
"centre-weighted":
|
||||||
"shutter": [ 100, 10000, 30000, 60000, 66666 ],
|
{
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
"weights":
|
||||||
},
|
[
|
||||||
"short":
|
3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
{
|
]
|
||||||
"shutter": [ 100, 5000, 10000, 20000, 33333 ],
|
},
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
"spot":
|
||||||
},
|
{
|
||||||
"long":
|
"weights":
|
||||||
{
|
[
|
||||||
"shutter": [ 100, 10000, 30000, 60000, 120000 ],
|
2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
]
|
||||||
}
|
},
|
||||||
},
|
"matrix":
|
||||||
"constraint_modes":
|
{
|
||||||
{
|
"weights":
|
||||||
"normal": [
|
[
|
||||||
{
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||||
"bound": "LOWER",
|
]
|
||||||
"q_lo": 0.98,
|
}
|
||||||
"q_hi": 1.0,
|
},
|
||||||
"y_target":
|
"exposure_modes":
|
||||||
[
|
{
|
||||||
0, 0.5,
|
"normal":
|
||||||
1000, 0.5
|
{
|
||||||
]
|
"shutter": [ 100, 10000, 30000, 60000, 66666 ],
|
||||||
}
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
||||||
],
|
},
|
||||||
"highlight": [
|
"short":
|
||||||
{
|
{
|
||||||
"bound": "LOWER",
|
"shutter": [ 100, 5000, 10000, 20000, 33333 ],
|
||||||
"q_lo": 0.98,
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]
|
||||||
"q_hi": 1.0,
|
},
|
||||||
"y_target":
|
"long":
|
||||||
[
|
{
|
||||||
0, 0.5,
|
"shutter": [ 100, 10000, 30000, 60000, 120000 ],
|
||||||
1000, 0.5
|
"gain": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]
|
||||||
]
|
}
|
||||||
},
|
},
|
||||||
{
|
"constraint_modes":
|
||||||
"bound": "UPPER",
|
{
|
||||||
"q_lo": 0.98,
|
"normal": [
|
||||||
"q_hi": 1.0,
|
{
|
||||||
"y_target":
|
"bound": "LOWER",
|
||||||
[
|
"q_lo": 0.98,
|
||||||
0, 0.8,
|
"q_hi": 1.0,
|
||||||
1000, 0.8
|
"y_target":
|
||||||
]
|
[
|
||||||
}
|
0, 0.5,
|
||||||
],
|
1000, 0.5
|
||||||
"shadows": [
|
]
|
||||||
{
|
}
|
||||||
"bound": "LOWER",
|
],
|
||||||
"q_lo": 0.0,
|
"highlight": [
|
||||||
"q_hi": 0.5,
|
{
|
||||||
"y_target":
|
"bound": "LOWER",
|
||||||
[
|
"q_lo": 0.98,
|
||||||
0, 0.17,
|
"q_hi": 1.0,
|
||||||
1000, 0.17
|
"y_target":
|
||||||
]
|
[
|
||||||
}
|
0, 0.5,
|
||||||
]
|
1000, 0.5
|
||||||
},
|
]
|
||||||
"y_target":
|
},
|
||||||
[
|
{
|
||||||
0, 0.16,
|
"bound": "UPPER",
|
||||||
1000, 0.165,
|
"q_lo": 0.98,
|
||||||
10000, 0.17
|
"q_hi": 1.0,
|
||||||
],
|
"y_target":
|
||||||
"base_ev": 1.25
|
[
|
||||||
}
|
0, 0.8,
|
||||||
]
|
1000, 0.8
|
||||||
}
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"shadows": [
|
||||||
|
{
|
||||||
|
"bound": "LOWER",
|
||||||
|
"q_lo": 0.0,
|
||||||
|
"q_hi": 0.5,
|
||||||
|
"y_target":
|
||||||
|
[
|
||||||
|
0, 0.17,
|
||||||
|
1000, 0.17
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"y_target":
|
||||||
|
[
|
||||||
|
0, 0.16,
|
||||||
|
1000, 0.165,
|
||||||
|
10000, 0.17
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"rpi.alsc":
|
"rpi.alsc":
|
||||||
|
@ -654,20 +678,19 @@
|
||||||
{
|
{
|
||||||
"rpi.sharpen": { }
|
"rpi.sharpen": { }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"rpi.hdr":
|
"rpi.hdr":
|
||||||
{
|
{
|
||||||
"MultiExposure":
|
"MultiExposureUnmerged":
|
||||||
{
|
{
|
||||||
"cadence": [ 1, 2 ],
|
"cadence": [ 1, 2 ],
|
||||||
"channel_map": { "short": 1, "long": 2 }
|
"channel_map":
|
||||||
},
|
{
|
||||||
"SingleExposure":
|
"short": 1,
|
||||||
{
|
"long": 2
|
||||||
"cadence": [ 1 ],
|
}
|
||||||
"channel_map": { "short": 1 }
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
|
@ -51,15 +51,24 @@
|
||||||
{
|
{
|
||||||
"centre-weighted":
|
"centre-weighted":
|
||||||
{
|
{
|
||||||
"weights": [ 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
"weights":
|
||||||
|
[
|
||||||
|
3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"spot":
|
"spot":
|
||||||
{
|
{
|
||||||
"weights": [ 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
|
"weights":
|
||||||
|
[
|
||||||
|
2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"matrix":
|
"matrix":
|
||||||
{
|
{
|
||||||
"weights": [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
|
"weights":
|
||||||
|
[
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||||
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"exposure_modes":
|
"exposure_modes":
|
||||||
|
|
|
@ -35,7 +35,10 @@
|
||||||
{
|
{
|
||||||
"centre-weighted":
|
"centre-weighted":
|
||||||
{
|
{
|
||||||
"weights": [ 4, 4, 4, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
"weights":
|
||||||
|
[
|
||||||
|
4, 4, 4, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"exposure_modes":
|
"exposure_modes":
|
||||||
|
|
|
@ -133,15 +133,24 @@
|
||||||
{
|
{
|
||||||
"centre-weighted":
|
"centre-weighted":
|
||||||
{
|
{
|
||||||
"weights": [ 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
"weights":
|
||||||
|
[
|
||||||
|
3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"spot":
|
"spot":
|
||||||
{
|
{
|
||||||
"weights": [ 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
|
"weights":
|
||||||
|
[
|
||||||
|
2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"matrix":
|
"matrix":
|
||||||
{
|
{
|
||||||
"weights": [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
|
"weights":
|
||||||
|
[
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||||
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"exposure_modes":
|
"exposure_modes":
|
||||||
|
|
|
@ -22,7 +22,10 @@
|
||||||
{
|
{
|
||||||
"centre-weighted":
|
"centre-weighted":
|
||||||
{
|
{
|
||||||
"weights": [ 4, 4, 4, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0 ]
|
"weights":
|
||||||
|
[
|
||||||
|
4, 4, 4, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0
|
||||||
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"exposure_modes":
|
"exposure_modes":
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue