Так что, если я правильно понимаю, у вас есть множество изображений, каждое из которых содержит несколько прямоугольников, которые могут быть разных цветов, а фон изображения неоднороден, и вы пытаетесь выделить прямоугольники с помощью гистограммы?
Использование гистограмм для сегментации изображений лучше всего работает с изображениями в оттенках серого с равномерным фоном, так что, увидев взгляды на своей гистограмме, вы узнаете основные интенсивности объектов, которые вы пытаетесь сегментировать. Этот метод плохо подходит для вашего приложения, потому что фигуры, которые вы пытаетесь сегментировать, неоднородны по оттенку, без просмотра примеров изображений, я бы, вероятно, сказал, что это не сработает, однако вы можете сойти с рук это если изменение оттенков прямоугольников относительно схоже ... в основном, если у вас есть прямоугольники 15-30, вы можете быть в порядке, но если они варьируются от 20 до 100, вам не повезет, то же самое происходит с вариация фона.
Если фон и прямоугольники имеют очень четко определенные границы, и цвета фона переходят ОЧЕНЬ плавно, вам, возможно, удастся отделаться от некоторого региона, растущего на фоне, чтобы получить список всех пикселей фона а затем просто установите их на черный или что-то еще, чтобы лучше проанализировать прямоугольники на переднем плане, но я могу только так много размышлять с информацией, которую вы дали в своем посте