Как мне конвертировать CV_8UC3 Mat в CV_32FC3? - PullRequest
6 голосов
/ 20 апреля 2011

Есть ли способ конвертировать из CV_8UC3 Mat в CV_32FC3 Mat без прямого доступа к необработанному буферу?Я пробовал Mat::convertTo(newImage, CV_32FC3, 1.0);, но цвета в итоге оказались неправильными.Благодаря.

1 Ответ

16 голосов
/ 05 мая 2011

Соглашение состоит в том, что для типа CV_8UC3 значения пикселей находятся в диапазоне от 0 до 255, а для типа CV_32FC3 от 0,0 до 1,0. Таким образом, вам нужно использовать коэффициент масштабирования 1 / 255,0 вместо 1,0:

Mat::convertTo(newImage, CV_32FC3, 1/255.0);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...