Метод "inrange" с помощью opencv делает свое дело. В моем случае (с некоторыми переименованными переменными)
cvInRange(result, threshold1, threshold2, difference2);
Результаты 1 пиксель в потоке (вывод):
Stream value (189.0, 0.0, 0.0, 0.0)
threshold1 value (187.0, 0.0, 0.0, 0.0)
threshold2 value (217.0, 0.0, 0.0, 0.0)
After thresholding value (255.0, 0.0, 0.0, 0.0)
Этот пиксель с интенсивностью 189 находится в интервале [217,187], поэтому он получает 255 (белый)
С другой стороны, этот пиксель с интенсивностью 240 не находится в интервале, поэтому получает 0
Stream value (240.0, 0.0, 0.0, 0.0)
threshold1 value (187.0, 0.0, 0.0, 0.0)
threshold2 value (217.0, 0.0, 0.0, 0.0)
After thresholding value (0.0, 0.0, 0.0, 0.0)