utils: tuning: libtuning: Fix tuning for non RGGB RAWs
Tuning fails for raw images that don't have the channels ordered in
RGGB. In 19dc8c28f6
("utils: tuning: libtuning: Implement the core of
libtuning") the channels of the image were reordered to RGGB
unconditionally in _read_image_dng(). That change was not applied to the
ctt_awb code, so that the channels were reordered twice. Fix by removing
the double ordering.
Signed-off-by: Stefan Klug <stefan.klug@ideasonboard.com>
Tested-by: Isaac Scott <isaac.scott@ideasonboard.com>
Reviewed-by: Isaac Scott <isaac.scott@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
This commit is contained in:
parent
936a099eca
commit
24e00be9f3
2 changed files with 2 additions and 3 deletions
|
@ -301,10 +301,10 @@ def get_alsc_patches(Img, colour_cals, grey=True):
|
|||
patches for each channel, remembering to subtract blacklevel
|
||||
If grey then only greyscale patches considered
|
||||
"""
|
||||
patches = Img.patches
|
||||
if grey:
|
||||
cen_coords = Img.cen_coords[3::4]
|
||||
col = Img.col
|
||||
patches = [np.array(Img.patches[i]) for i in Img.order]
|
||||
r_patchs = patches[0][3::4] - Img.blacklevel_16
|
||||
b_patchs = patches[3][3::4] - Img.blacklevel_16
|
||||
"""
|
||||
|
@ -314,7 +314,6 @@ def get_alsc_patches(Img, colour_cals, grey=True):
|
|||
else:
|
||||
cen_coords = Img.cen_coords
|
||||
col = Img.color
|
||||
patches = [np.array(Img.patches[i]) for i in Img.order]
|
||||
r_patchs = patches[0] - Img.blacklevel_16
|
||||
b_patchs = patches[3] - Img.blacklevel_16
|
||||
g_patchs = (patches[1]+patches[2])/2 - Img.blacklevel_16
|
||||
|
|
|
@ -135,6 +135,6 @@ class Image:
|
|||
|
||||
all_patches.append(ch_patches)
|
||||
|
||||
self.patches = all_patches
|
||||
self.patches = np.array(all_patches)
|
||||
|
||||
return not saturated
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue