Skip to content

Commit 4b62381

Browse files
committed
fix a crucial bug in BLC module
1 parent 9b11558 commit 4b62381

1 file changed

Lines changed: 6 additions & 4 deletions

File tree

modules/blc.py

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,12 @@ def execute(self, data):
2121
bayer = data['bayer'].astype(np.int32)
2222

2323
r, gr, gb, b = split_bayer(bayer, self.cfg.hardware.bayer_pattern)
24-
r -= self.params.bl_r
25-
b -= self.params.bl_b
24+
r = np.clip(r - self.params.bl_r, 0, None)
25+
b = np.clip(b - self.params.bl_b, 0, None)
2626
gr -= (self.params.bl_gr - np.right_shift(r * self.alpha, 10))
2727
gb -= (self.params.bl_gb - np.right_shift(b * self.beta, 10))
28-
blc_bayer = reconstruct_bayer((r, gr, gb, b), self.cfg.hardware.bayer_pattern)
28+
blc_bayer = reconstruct_bayer(
29+
(r, gr, gb, b), self.cfg.hardware.bayer_pattern
30+
)
2931

30-
data['bayer'] = blc_bayer.astype(np.uint16)
32+
data['bayer'] = np.clip(blc_bayer, 0, None).astype(np.uint16)

0 commit comments

Comments
 (0)