Я нахожусь в процессе написания программы на C, использующей OpenCV
для обнаружения некоторых прямоугольников, сделанных с помощью ленты, которые являются полыми внутри. Проблема в том, что каждый физический прямоугольник дает два цифровых прямоугольника: один для внутреннего периметра, один для внешнего периметра. Внешний прямоугольник во всех случаях полностью охватывает внутренний прямоугольник.
Мне нужен какой-то способ удаления внутренних прямоугольников, причем достаточно эффективным способом, так как он запускается на видео-канале и не должен значительно снижать частоту кадров (приблизительно 15 кадров в секунду на BeagleBoard xM
, что не очень мощный).
Всегда есть четыре физических прямоугольника и где-то от четырех до восьми цифровых прямоугольников в зависимости от чистоты операций обработки. Внешний прямоугольник обнаружен надежно; внутреннего прямоугольника нет. Изображение пороговое, размытое и расширенное, так что изображение является чистым, а обнаружение в целом надежным.
Я чувствую, что эта проблема отделена от OpenCV
и на самом деле просто работает с прямоугольниками и, возможно, может быть решена мной через некоторое время, но проект находится на крайнем сроке, поэтому я также задаю этот вопрос Заранее спасибо, ребята.