utils: raspberrypi: ctt: Update tuning tool for HDR
The various boilerplate parts of the tuning file are extended to include the necessary extra bits for HDR, specifically: * rpi.denoise has different configurations for HDR modes * rpi.agc now has extra channels for HDR * rpi.hdr parameters are added. Signed-off-by: David Plowman <david.plowman@raspberrypi.com> Reviewed-by: Naushir Patuck <naush@raspberrypi.com> Tested-by: Naushir Patuck <naush@raspberrypi.com> Acked-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
This commit is contained in:
parent
b95032a842
commit
e7d628942f
2 changed files with 698 additions and 96 deletions
|
@ -25,23 +25,68 @@ json_template = {
|
|||
},
|
||||
"rpi.denoise":
|
||||
{
|
||||
"sdn":
|
||||
"normal":
|
||||
{
|
||||
"deviation": 1.6,
|
||||
"strength": 0.5,
|
||||
"deviation2": 3.2,
|
||||
"deviation_no_tdn": 3.2,
|
||||
"strength_no_tdn": 0.75
|
||||
"sdn":
|
||||
{
|
||||
"deviation": 1.6,
|
||||
"strength": 0.5,
|
||||
"deviation2": 3.2,
|
||||
"deviation_no_tdn": 3.2,
|
||||
"strength_no_tdn": 0.75
|
||||
},
|
||||
"cdn":
|
||||
{
|
||||
"deviation": 200,
|
||||
"strength": 0.3
|
||||
},
|
||||
"tdn":
|
||||
{
|
||||
"deviation": 0.8,
|
||||
"threshold": 0.05
|
||||
}
|
||||
},
|
||||
"cdn":
|
||||
"hdr":
|
||||
{
|
||||
"deviation": 200,
|
||||
"strength": 0.3
|
||||
"sdn":
|
||||
{
|
||||
"deviation": 1.6,
|
||||
"strength": 0.5,
|
||||
"deviation2": 3.2,
|
||||
"deviation_no_tdn": 3.2,
|
||||
"strength_no_tdn": 0.75
|
||||
},
|
||||
"cdn":
|
||||
{
|
||||
"deviation": 200,
|
||||
"strength": 0.3
|
||||
},
|
||||
"tdn":
|
||||
{
|
||||
"deviation": 1.3,
|
||||
"threshold": 0.1
|
||||
}
|
||||
},
|
||||
"tdn":
|
||||
"night":
|
||||
{
|
||||
"deviation": 0.8,
|
||||
"threshold": 0.05
|
||||
"sdn":
|
||||
{
|
||||
"deviation": 1.6,
|
||||
"strength": 0.5,
|
||||
"deviation2": 3.2,
|
||||
"deviation_no_tdn": 3.2,
|
||||
"strength_no_tdn": 0.75
|
||||
},
|
||||
"cdn":
|
||||
{
|
||||
"deviation": 200,
|
||||
"strength": 0.3
|
||||
},
|
||||
"tdn":
|
||||
{
|
||||
"deviation": 1.3,
|
||||
"threshold": 0.1
|
||||
}
|
||||
}
|
||||
},
|
||||
"rpi.awb": {
|
||||
|
@ -61,91 +106,605 @@ json_template = {
|
|||
},
|
||||
"bayes": 1
|
||||
},
|
||||
"rpi.agc": {
|
||||
"metering_modes": {
|
||||
"centre-weighted": {
|
||||
"weights": [
|
||||
0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0,
|
||||
0, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 1, 0,
|
||||
1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1,
|
||||
1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 2, 2, 3, 3, 3, 2, 2, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 3, 3, 3, 4, 3, 3, 3, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 3, 3, 4, 4, 4, 3, 3, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 3, 3, 3, 4, 3, 3, 3, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 2, 2, 3, 3, 3, 2, 2, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1,
|
||||
1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1,
|
||||
0, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 1, 0,
|
||||
0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0
|
||||
]
|
||||
},
|
||||
"spot": {
|
||||
"weights": [
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 1, 2, 1, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 1, 2, 3, 2, 1, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 1, 2, 1, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||
]
|
||||
},
|
||||
"matrix": {
|
||||
"weights": [
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||
]
|
||||
}
|
||||
},
|
||||
"exposure_modes": {
|
||||
"normal": {
|
||||
"shutter": [100, 10000, 30000, 60000, 66666],
|
||||
"gain": [1.0, 1.5, 2.0, 4.0, 8.0]
|
||||
},
|
||||
"short": {
|
||||
"shutter": [100, 5000, 10000, 20000, 60000],
|
||||
"gain": [1.0, 1.5, 2.0, 4.0, 8.0]
|
||||
},
|
||||
"long":
|
||||
"rpi.agc":
|
||||
{
|
||||
"channels":
|
||||
[
|
||||
{
|
||||
"shutter": [ 100, 10000, 30000, 60000, 90000, 120000 ],
|
||||
"gain": [ 1.0, 1.5, 2.0, 4.0, 8.0, 12.0 ]
|
||||
"comment": "Channel 0 is normal AGC",
|
||||
"metering_modes":
|
||||
{
|
||||
"centre-weighted":
|
||||
{
|
||||
"weights":
|
||||
[
|
||||
0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0,
|
||||
0, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 1, 0,
|
||||
1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1,
|
||||
1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 2, 2, 3, 3, 3, 2, 2, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 3, 3, 3, 4, 3, 3, 3, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 3, 3, 4, 4, 4, 3, 3, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 3, 3, 3, 4, 3, 3, 3, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 2, 2, 3, 3, 3, 2, 2, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1,
|
||||
1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1,
|
||||
0, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 1, 0,
|
||||
0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0
|
||||
]
|
||||
},
|
||||
"spot":
|
||||
{
|
||||
"weights":
|
||||
[
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 1, 2, 1, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 1, 2, 3, 2, 1, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 1, 2, 1, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||
]
|
||||
},
|
||||
"matrix":
|
||||
{
|
||||
"weights":
|
||||
[
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||
]
|
||||
}
|
||||
},
|
||||
"exposure_modes":
|
||||
{
|
||||
"normal":
|
||||
{
|
||||
"shutter": [ 100, 10000, 30000, 60000, 66666 ],
|
||||
"gain": [ 1.0, 1.5, 2.0, 4.0, 8.0 ]
|
||||
},
|
||||
"short":
|
||||
{
|
||||
"shutter": [ 100, 5000, 10000, 20000, 60000 ],
|
||||
"gain": [ 1.0, 1.5, 2.0, 4.0, 8.0 ]
|
||||
},
|
||||
"long":
|
||||
{
|
||||
"shutter": [ 100, 10000, 30000, 60000, 90000, 120000 ],
|
||||
"gain": [ 1.0, 1.5, 2.0, 4.0, 8.0, 12.0 ]
|
||||
}
|
||||
},
|
||||
"constraint_modes":
|
||||
{
|
||||
"normal": [
|
||||
{
|
||||
"bound": "LOWER",
|
||||
"q_lo": 0.98,
|
||||
"q_hi": 1.0,
|
||||
"y_target":
|
||||
[
|
||||
0, 0.5,
|
||||
1000, 0.5
|
||||
]
|
||||
}
|
||||
],
|
||||
"highlight": [
|
||||
{
|
||||
"bound": "LOWER",
|
||||
"q_lo": 0.98,
|
||||
"q_hi": 1.0,
|
||||
"y_target":
|
||||
[
|
||||
0, 0.5,
|
||||
1000, 0.5
|
||||
]
|
||||
},
|
||||
{
|
||||
"bound": "UPPER",
|
||||
"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
|
||||
]
|
||||
},
|
||||
{
|
||||
"comment": "Channel 1 is the HDR short channel",
|
||||
"desaturate": 0,
|
||||
"metering_modes":
|
||||
{
|
||||
"centre-weighted":
|
||||
{
|
||||
"weights":
|
||||
[
|
||||
0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0,
|
||||
0, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 1, 0,
|
||||
1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1,
|
||||
1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 2, 2, 3, 3, 3, 2, 2, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 3, 3, 3, 4, 3, 3, 3, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 3, 3, 4, 4, 4, 3, 3, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 3, 3, 3, 4, 3, 3, 3, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 2, 2, 3, 3, 3, 2, 2, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1,
|
||||
1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1,
|
||||
0, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 1, 0,
|
||||
0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0
|
||||
]
|
||||
},
|
||||
"spot":
|
||||
{
|
||||
"weights":
|
||||
[
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 1, 2, 1, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 1, 2, 3, 2, 1, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 1, 2, 1, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||
]
|
||||
},
|
||||
"matrix":
|
||||
{
|
||||
"weights":
|
||||
[
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||
]
|
||||
}
|
||||
},
|
||||
"exposure_modes":
|
||||
{
|
||||
"normal":
|
||||
{
|
||||
"shutter": [ 100, 20000, 60000 ],
|
||||
"gain": [ 1.0, 1.0, 1.0 ]
|
||||
},
|
||||
"short":
|
||||
{
|
||||
"shutter": [ 100, 20000, 60000 ],
|
||||
"gain": [ 1.0, 1.0, 1.0 ]
|
||||
},
|
||||
"long":
|
||||
{
|
||||
"shutter": [ 100, 20000, 60000 ],
|
||||
"gain": [ 1.0, 1.0, 1.0 ]
|
||||
}
|
||||
},
|
||||
"constraint_modes":
|
||||
{
|
||||
"normal": [
|
||||
{
|
||||
"bound": "LOWER",
|
||||
"q_lo": 0.95,
|
||||
"q_hi": 1.0,
|
||||
"y_target":
|
||||
[
|
||||
0, 0.5,
|
||||
1000, 0.5
|
||||
]
|
||||
},
|
||||
{
|
||||
"bound": "UPPER",
|
||||
"q_lo": 0.95,
|
||||
"q_hi": 1.0,
|
||||
"y_target":
|
||||
[
|
||||
0, 0.7,
|
||||
1000, 0.7
|
||||
]
|
||||
},
|
||||
{
|
||||
"bound": "LOWER",
|
||||
"q_lo": 0.0,
|
||||
"q_hi": 0.2,
|
||||
"y_target":
|
||||
[
|
||||
0, 0.002,
|
||||
1000, 0.002
|
||||
]
|
||||
}
|
||||
],
|
||||
"highlight": [
|
||||
{
|
||||
"bound": "LOWER",
|
||||
"q_lo": 0.95,
|
||||
"q_hi": 1.0,
|
||||
"y_target":
|
||||
[
|
||||
0, 0.5,
|
||||
1000, 0.5
|
||||
]
|
||||
},
|
||||
{
|
||||
"bound": "UPPER",
|
||||
"q_lo": 0.95,
|
||||
"q_hi": 1.0,
|
||||
"y_target":
|
||||
[
|
||||
0, 0.7,
|
||||
1000, 0.7
|
||||
]
|
||||
},
|
||||
{
|
||||
"bound": "LOWER",
|
||||
"q_lo": 0.0,
|
||||
"q_hi": 0.2,
|
||||
"y_target":
|
||||
[
|
||||
0, 0.002,
|
||||
1000, 0.002
|
||||
]
|
||||
}
|
||||
],
|
||||
"shadows": [
|
||||
{
|
||||
"bound": "LOWER",
|
||||
"q_lo": 0.95,
|
||||
"q_hi": 1.0,
|
||||
"y_target":
|
||||
[
|
||||
0, 0.5,
|
||||
1000, 0.5
|
||||
]
|
||||
},
|
||||
{
|
||||
"bound": "UPPER",
|
||||
"q_lo": 0.95,
|
||||
"q_hi": 1.0,
|
||||
"y_target":
|
||||
[
|
||||
0, 0.7,
|
||||
1000, 0.7
|
||||
]
|
||||
},
|
||||
{
|
||||
"bound": "LOWER",
|
||||
"q_lo": 0.0,
|
||||
"q_hi": 0.2,
|
||||
"y_target":
|
||||
[
|
||||
0, 0.002,
|
||||
1000, 0.002
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"y_target":
|
||||
[
|
||||
0, 0.16,
|
||||
1000, 0.165,
|
||||
10000, 0.17
|
||||
]
|
||||
},
|
||||
{
|
||||
"comment": "Channel 2 is the HDR long channel",
|
||||
"desaturate": 0,
|
||||
"metering_modes":
|
||||
{
|
||||
"centre-weighted":
|
||||
{
|
||||
"weights":
|
||||
[
|
||||
0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0,
|
||||
0, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 1, 0,
|
||||
1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1,
|
||||
1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 2, 2, 3, 3, 3, 2, 2, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 3, 3, 3, 4, 3, 3, 3, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 3, 3, 4, 4, 4, 3, 3, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 3, 3, 3, 4, 3, 3, 3, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 2, 2, 3, 3, 3, 2, 2, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1,
|
||||
1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1,
|
||||
0, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 1, 0,
|
||||
0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0
|
||||
]
|
||||
},
|
||||
"spot":
|
||||
{
|
||||
"weights":
|
||||
[
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 1, 2, 1, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 1, 2, 3, 2, 1, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 1, 2, 1, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||
]
|
||||
},
|
||||
"matrix":
|
||||
{
|
||||
"weights":
|
||||
[
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||
]
|
||||
}
|
||||
},
|
||||
"exposure_modes":
|
||||
{
|
||||
"normal":
|
||||
{
|
||||
"shutter": [ 100, 20000, 30000, 60000 ],
|
||||
"gain": [ 1.0, 2.0, 4.0, 8.0 ]
|
||||
},
|
||||
"short":
|
||||
{
|
||||
"shutter": [ 100, 20000, 30000, 60000 ],
|
||||
"gain": [ 1.0, 2.0, 4.0, 8.0 ]
|
||||
},
|
||||
"long":
|
||||
{
|
||||
"shutter": [ 100, 20000, 30000, 60000 ],
|
||||
"gain": [ 1.0, 2.0, 4.0, 8.0 ]
|
||||
}
|
||||
},
|
||||
"constraint_modes":
|
||||
{
|
||||
"normal": [
|
||||
],
|
||||
"highlight": [
|
||||
],
|
||||
"shadows": [
|
||||
]
|
||||
},
|
||||
"channel_constraints":
|
||||
[
|
||||
{
|
||||
"bound": "UPPER",
|
||||
"channel": 4,
|
||||
"factor": 8
|
||||
},
|
||||
{
|
||||
"bound": "LOWER",
|
||||
"channel": 4,
|
||||
"factor": 2
|
||||
}
|
||||
],
|
||||
"y_target":
|
||||
[
|
||||
0, 0.16,
|
||||
1000, 0.165,
|
||||
10000, 0.17
|
||||
]
|
||||
},
|
||||
{
|
||||
"comment": "Channel 3 is the night mode channel",
|
||||
"base_ev": 0.33,
|
||||
"metering_modes":
|
||||
{
|
||||
"centre-weighted":
|
||||
{
|
||||
"weights":
|
||||
[
|
||||
0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0,
|
||||
0, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 1, 0,
|
||||
1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1,
|
||||
1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 2, 2, 3, 3, 3, 2, 2, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 3, 3, 3, 4, 3, 3, 3, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 3, 3, 4, 4, 4, 3, 3, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 3, 3, 3, 4, 3, 3, 3, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 2, 2, 3, 3, 3, 2, 2, 2, 2, 1, 1,
|
||||
1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1,
|
||||
1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1,
|
||||
0, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 1, 0,
|
||||
0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0
|
||||
]
|
||||
},
|
||||
"spot":
|
||||
{
|
||||
"weights":
|
||||
[
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 1, 2, 1, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 1, 2, 3, 2, 1, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 1, 2, 1, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||
]
|
||||
},
|
||||
"matrix":
|
||||
{
|
||||
"weights":
|
||||
[
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
|
||||
]
|
||||
}
|
||||
},
|
||||
"exposure_modes":
|
||||
{
|
||||
"normal":
|
||||
{
|
||||
"shutter": [ 100, 20000, 66666 ],
|
||||
"gain": [ 1.0, 2.0, 4.0 ]
|
||||
},
|
||||
"short":
|
||||
{
|
||||
"shutter": [ 100, 20000, 33333 ],
|
||||
"gain": [ 1.0, 2.0, 4.0 ]
|
||||
},
|
||||
"long":
|
||||
{
|
||||
"shutter": [ 100, 20000, 66666, 120000 ],
|
||||
"gain": [ 1.0, 2.0, 4.0, 4.0 ]
|
||||
}
|
||||
},
|
||||
"constraint_modes":
|
||||
{
|
||||
"normal": [
|
||||
{
|
||||
"bound": "LOWER",
|
||||
"q_lo": 0.98,
|
||||
"q_hi": 1.0,
|
||||
"y_target":
|
||||
[
|
||||
0, 0.5,
|
||||
1000, 0.5
|
||||
]
|
||||
}
|
||||
],
|
||||
"highlight": [
|
||||
{
|
||||
"bound": "LOWER",
|
||||
"q_lo": 0.98,
|
||||
"q_hi": 1.0,
|
||||
"y_target":
|
||||
[
|
||||
0, 0.5,
|
||||
1000, 0.5
|
||||
]
|
||||
},
|
||||
{
|
||||
"bound": "UPPER",
|
||||
"q_lo": 0.98,
|
||||
"q_hi": 1.0,
|
||||
"y_target":
|
||||
[
|
||||
0, 0.8,
|
||||
1000, 0.8
|
||||
]
|
||||
}
|
||||
],
|
||||
"shadows": [
|
||||
{
|
||||
"bound": "LOWER",
|
||||
"q_lo": 0.98,
|
||||
"q_hi": 1.0,
|
||||
"y_target":
|
||||
[
|
||||
0, 0.5,
|
||||
1000, 0.5
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"y_target":
|
||||
[
|
||||
0, 0.16,
|
||||
1000, 0.16,
|
||||
10000, 0.17
|
||||
]
|
||||
}
|
||||
},
|
||||
"constraint_modes": {
|
||||
"normal": [
|
||||
{"bound": "LOWER", "q_lo": 0.98, "q_hi": 1.0, "y_target": [0, 0.5, 1000, 0.5]}
|
||||
],
|
||||
"highlight": [
|
||||
{"bound": "LOWER", "q_lo": 0.98, "q_hi": 1.0, "y_target": [0, 0.5, 1000, 0.5]},
|
||||
{"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]
|
||||
]
|
||||
},
|
||||
"rpi.alsc": {
|
||||
'omega': 1.3,
|
||||
|
@ -198,6 +757,48 @@ json_template = {
|
|||
"threshold": 0.25,
|
||||
"limit": 1.0,
|
||||
"strength": 1.0
|
||||
},
|
||||
"rpi.hdr":
|
||||
{
|
||||
"Off":
|
||||
{
|
||||
"cadence": [ 0 ]
|
||||
},
|
||||
"MultiExposureUnmerged":
|
||||
{
|
||||
"cadence": [ 1, 2 ],
|
||||
"channel_map": { "short": 1, "long": 2 }
|
||||
},
|
||||
"SingleExposure":
|
||||
{
|
||||
"cadence": [1],
|
||||
"channel_map": { "short": 1 },
|
||||
"spatial_gain": 2.0,
|
||||
"tonemap_enable": 1
|
||||
},
|
||||
"MultiExposure":
|
||||
{
|
||||
"cadence": [1, 2],
|
||||
"channel_map": { "short": 1, "long": 2 },
|
||||
"stitch_enable": 1,
|
||||
"spatial_gain": 2.0,
|
||||
"tonemap_enable": 1
|
||||
},
|
||||
"Night":
|
||||
{
|
||||
"cadence": [ 3 ],
|
||||
"channel_map": { "night": 3 },
|
||||
"tonemap_enable": 1,
|
||||
"tonemap":
|
||||
[
|
||||
0, 0,
|
||||
5000, 20000,
|
||||
10000, 30000,
|
||||
20000, 47000,
|
||||
30000, 55000,
|
||||
65535, 65535
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -30,7 +30,8 @@ class Encoder(json.JSONEncoder):
|
|||
'lut_ry': 9,
|
||||
'gamma_curve': 2,
|
||||
'y_target': 2,
|
||||
'prior': 2
|
||||
'prior': 2,
|
||||
'tonemap': 2
|
||||
}
|
||||
|
||||
def encode(self, o, node_key=None):
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue