На моем изображении есть несколько рентабельности инвестиций. Для каждой области интереса, если она содержит черный пиксель, я хочу окрасить всю область интереса в черный цвет. Вот мой код: int j = 0; // этот цикл устанавливает строки ROI ...

0
connor449 29 Дек 2020 в 19:08

1 ответ

Лучший ответ

Вы можете выбрать область своего изображения с помощью Rect minibox, вызвав свое изображение с прямоугольником: то есть region = frameRGB(minibox), см. документы для Mat::operator()(const Rect& roi)

Затем вы можете проверить, есть ли в вашем регионе черный пиксель, с помощью cv::countNonZero(region == cv::Scalar(0, 0, 0)) (документы). Если есть черный пиксель, вы можете сделать все пиксели в области черными, просто присвоив ноль, например roi = 0.

1
alkasm 29 Дек 2020 в 16:50