diff --git a/modules/photo/src/hdr_common.cpp b/modules/photo/src/hdr_common.cpp index 83e1686c38..70b24322b1 100644 --- a/modules/photo/src/hdr_common.cpp +++ b/modules/photo/src/hdr_common.cpp @@ -66,13 +66,12 @@ Mat triangleWeights() int half = LDR_SIZE / 2; int maxVal = LDR_SIZE - 1; float epsilon = 1e-6f; - for (int i = 0; i < LDR_SIZE; i++){ - float val = (i < half) + w.at(0) = epsilon; + w.at(LDR_SIZE-1) = epsilon; + for (int i = 1; i < LDR_SIZE-1; i++){ + w.at(i) = (i < half) ? static_cast(i) : static_cast(maxVal - i); - if (val < epsilon) - val = epsilon; - w.at(i) = val; } return w; }