Fix typing for gamma_curve
This commit is contained in:
parent
b716013ef2
commit
3020ab59f4
3 changed files with 8 additions and 8 deletions
Binary file not shown.
|
|
@ -719,8 +719,8 @@ class StreamingPiCamera2(BaseCamera):
|
||||||
)
|
)
|
||||||
|
|
||||||
@lt.property
|
@lt.property
|
||||||
def gamma_correction(self) -> float:
|
def gamma_correction(self) -> list[int]:
|
||||||
"""Return the gamma correction from the tuning file."""
|
"""Return the gamma correction curve from the tuning file."""
|
||||||
return tf_utils.get_gamma_curve(self.tuning)
|
return tf_utils.get_gamma_curve(self.tuning)
|
||||||
|
|
||||||
@lt.action
|
@lt.action
|
||||||
|
|
|
||||||
|
|
@ -186,24 +186,24 @@ def get_lst(tuning: dict) -> LensShadingModel:
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
def get_gamma_curve(tuning: dict) -> dict[int, float]:
|
def get_gamma_curve(tuning: dict) -> list[int]:
|
||||||
"""Return the gamma curve from the rpi.contrast section of the tuning file.
|
"""Return the gamma curve from the rpi.contrast section of the tuning file.
|
||||||
|
|
||||||
Returns a dictionary mapping input levels to output levels.
|
Returns a list where each two elements are the input and output level.
|
||||||
Defaults to {} if gamma curve is missing.
|
Defaults to [] if gamma curve is missing.
|
||||||
"""
|
"""
|
||||||
contrast = find_tuning_algo(tuning, "rpi.contrast")
|
contrast = find_tuning_algo(tuning, "rpi.contrast")
|
||||||
return contrast.get("gamma_curve", {})
|
return contrast.get("gamma_curve", [])
|
||||||
|
|
||||||
|
|
||||||
def set_gamma_curve(tuning: dict, gamma_curve: dict[int, float]) -> dict:
|
def set_gamma_curve(tuning: dict, gamma_curve: list[int]) -> dict:
|
||||||
"""Set the gamma curve in the rpi.contrast section of the tuning file.
|
"""Set the gamma curve in the rpi.contrast section of the tuning file.
|
||||||
|
|
||||||
Returns a new tuning dictionary with the updated gamma curve.
|
Returns a new tuning dictionary with the updated gamma curve.
|
||||||
"""
|
"""
|
||||||
output_tuning = deepcopy(tuning)
|
output_tuning = deepcopy(tuning)
|
||||||
contrast = find_tuning_algo(output_tuning, "rpi.contrast")
|
contrast = find_tuning_algo(output_tuning, "rpi.contrast")
|
||||||
contrast["gamma_curve"] = {int(k): float(v) for k, v in gamma_curve.items()}
|
contrast["gamma_curve"] = gamma_curve
|
||||||
return output_tuning
|
return output_tuning
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue