diff --git a/docs/2026.html b/docs/2026.html index 9c88f424aa..9635f3f248 100644 --- a/docs/2026.html +++ b/docs/2026.html @@ -103,6 +103,33 @@
Performs background update (initial grow, slow mode).
+Performs slow expansion of background range.
All images must have the same width, height and format (8-bit gray).
-For every point:
lo[i] -= value[i] < lo[i] ? 1 : 0; +For every point, range bounds are moved by one step toward current value:
lo[i] -= value[i] < lo[i] ? 1 : 0; hi[i] += value[i] > hi[i] ? 1 : 0;This function is used for background updating in motion detection algorithm.
Performs background update (initial grow, fast mode).
+Performs fast expansion of background range.
All images must have the same width, height and format (8-bit gray).
-For every point:
lo[i] = value[i] < lo[i] ? value[i] : lo[i]; +For every point, range bounds are expanded to include current value:
lo[i] = value[i] < lo[i] ? value[i] : lo[i]; hi[i] = value[i] > hi[i] ? value[i] : hi[i];This function is used for background updating in motion detection algorithm.
Performs collection of background statistic.
+Collects background out-of-range statistics.
All images must have the same width, height and format (8-bit gray).
-Updates background statistic counters for every point:
loCount[i] += (value[i] < loValue[i] && loCount[i] < 255) ? 1 : 0; +For every point, counters are incremented with saturation to 255:
loCount[i] += (value[i] < loValue[i] && loCount[i] < 255) ? 1 : 0; hiCount[i] += (value[i] > hiValue[i] && hiCount[i] < 255) ? 1 : 0;This function is used for background updating in motion detection algorithm.
Performs adjustment of background range.
+Adjusts background range using collected counters.
All images must have the same width, height and format (8-bit gray).
-Adjusts background range for every point:
loValue[i] -= (loCount[i] > threshold && loValue[i] > 0) ? 1 : 0; +For every point:
loValue[i] -= (loCount[i] > threshold && loValue[i] > 0) ? 1 : 0; loValue[i] += (loCount[i] < threshold && loValue[i] < 255) ? 1 : 0; loCount[i] = 0; hiValue[i] += (hiCount[i] > threshold && hiValue[i] < 255) ? 1 : 0; @@ -591,9 +591,9 @@-
Performs adjustment of background range with using adjust range mask.
+Adjusts background range using collected counters and a mask.
All images must have the same width, height and format (8-bit gray).
-Adjusts background range for every point:
if(mask[i]) +For every point:
if(mask[i]) { loValue[i] -= (loCount[i] > threshold && loValue[i] > 0) ? 1 : 0; loValue[i] += (loCount[i] < threshold && loValue[i] < 255) ? 1 : 0; @@ -687,17 +687,19 @@-
Shifts background range.
+Shifts background range to include current value.
All images must have the same width, height and format (8-bit gray).
-For every point:
if (value[i] > hi[i]) +For every point:
add = value[i] - hi[i]; +sub = lo[i] - value[i]; +if(add > 0) { - lo[i] = min(lo[i] + value[i] - hi[i], 255); - hi[i] = value[i]; + lo[i] = min(lo[i] + add, 255); + hi[i] = min(hi[i] + add, 255); } -if (lo[i] > value[i]) +if(sub > 0) { - lo[i] = value[i]; - hi[i] = max(hi[i] - lo[i] + value[i], 0); + lo[i] = max(lo[i] - sub, 0); + hi[i] = max(hi[i] - sub, 0); }This function is used for fast background updating in motion detection algorithm.
@@ -791,19 +793,21 @@
- Note
- This function has a C++ wrapper Simd::BackgroundShiftRange(const View<A>& value, View<A>& lo, View<A>& hi).
-
Shifts background range with using shift range mask.
+Shifts background range to include current value using a mask.
All images must have the same width, height and format (8-bit gray).
For every point:
if(mask[i]) { - if (value[i] > hi[i]) + add = value[i] - hi[i]; + sub = lo[i] - value[i]; + if(add > 0) { - lo[i] = min(lo[i] + value[i] - hi[i], 255); - hi[i] = value[i]; + lo[i] = min(lo[i] + add, 255); + hi[i] = min(hi[i] + add, 255); } - if (lo[i] > value[i]) + if(sub > 0) { - lo[i] = value[i]; - hi[i] = max(hi[i] - lo[i] + value[i], 0); + lo[i] = max(lo[i] - sub, 0); + hi[i] = max(hi[i] - sub, 0); } }This function is used for fast background updating in motion detection algorithm.
@@ -888,9 +892,9 @@-
Creates background update mask.
+Initializes background update mask by selected source index.
All images must have the same width, height and format (8-bit gray).
-For every point:
if(mask[i] == index) +For every point:
if(src[i] == index) dst[i] = value;This function is used for background updating in motion detection algorithm.
@@ -947,7 +951,7 @@
- Note
- This function has a C++ wrapper Simd::BackgroundInitMask(const View<A>& src, uint8_t index, uint8_t value, View<A>& dst).
lo[i] -= value[i] < lo[i] ? 1 : 0; hi[i] += value[i] > hi[i] ? 1 : 0;
This function is used for background updating in motion detection algorithm.
-+
- Note
- This function is a C++ wrapper for function SimdBackgroundGrowRangeSlow.
- Note
- This function is a C++ wrapper for function SimdBackgroundGrowRangeSlow.
- Parameters