Функция переназначения OPENCV, автоматическая обрезка в пределах черных границ - PullRequest
0 голосов
/ 15 февраля 2019

Я использую remap в opencv, чтобы исправить искажения в изображениях.Проблема в том, что он создает черные границы на краях, окружающих изображение.

Я пробовал константы BORDER_, но они копируют или копируют только ближайшие видимые пиксели поверх черной границы.

Что яВы хотите автоматически обрезать максимально возможное изображение в пределах черной рамки.

Изображение без черных границ

Изображение с черными границами

Есть ли какой-нибудь флаг или функция в opencv, которая делает это автоматически?

Пример кода:

    Mat img = imread(img_filename, CV_LOAD_IMAGE_COLOR);
    initUndistortRectifyMap(K, D, Mat(), getOptimalNewCameraMatrix(K, D, img.size(), 1, img.size(),0), img.size(), CV_32F, lmapx, lmapy);

    remap(img, imgU, lmapx, lmapy, cv::INTER_LINEAR, cv::BORDER_DEFAULT);

    imwrite(out_filename, imgU);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...