|
|
|
@ -147,6 +147,7 @@ namespace cv2
|
|
|
|
|
LUT(images[i], log_response, response_img);
|
|
|
|
|
split(response_img, splitted);
|
|
|
|
|
for(int c = 0; c < channels; c++) {
|
|
|
|
|
//这里崩溃
|
|
|
|
|
result_split[c] += w.mul(splitted[c] - exp_values.at<float>((int)i));
|
|
|
|
|
}
|
|
|
|
|
weight_sum += w;
|
|
|
|
@ -262,7 +263,8 @@ namespace cv2
|
|
|
|
|
Mat adapt = color_adapt * channels[i] + (1.0f - color_adapt) * gray_img;
|
|
|
|
|
adapt = light_adapt * adapt + (1.0f - light_adapt) * global;
|
|
|
|
|
pow(intensity * adapt, map_key, adapt);
|
|
|
|
|
channels[i] = channels[i].mul(1.0f / (adapt + channels[i]));
|
|
|
|
|
//这里崩溃
|
|
|
|
|
channels[i] = channels[i].mul(1.0f/(adapt + channels[i]));
|
|
|
|
|
}
|
|
|
|
|
gray_img.release();
|
|
|
|
|
merge(channels, img);
|
|
|
|
|