فضای رنگی تصویر را به LAB منتقل کنید کانال L مستقل از کانال های رنگی تصویر هست این کانال نماینده روشنایی تصویر است CLAHE را فقط روی این کانال اعمال کنید.
def applayCLAHE(img):
clahe = cv2.createCLAHE(clipLimit=1.0, tileGridSize=(4, 4))
lab = cv2.cvtColor(img, cv2.COLOR_BGR2LAB)
lab_planes = cv2.split(lab)
lab_planes = list(lab_planes)
lab_planes[0] = clahe.apply(lab_planes[0])
lab = cv2.merge(lab_planes)
return cv2.cvtColor(lab, cv2.COLOR_LAB2BGR)