Я пытаюсь получить среднее значение нескольких снимков с OpenCV, вот мой код:как вычислить среднее значение нескольких фотографий
#include <opencv2\core\core.hpp>
#include <opencv2\highgui\highgui.hpp>
#include <opencv2\opencv.hpp>
using namespace std;
using namespace cv;
int main(){
cv::Mat frame,frame32f;
char filename[40];
cv::Mat mean;
const int count =10;
const int width = 1920;
const int height = 1080;
cv::Mat resultframe = cv::Mat::zeros(height,width,CV_32FC3);
for(int i = 1 ; i<= count; i++){
sprintf(filename,"d:\\BMdvideos\\images\\image%d.tiff",i);
frame = imread(filename,CV_LOAD_IMAGE_COLOR);
frame.convertTo(frame32f,CV_32FC3);
resultframe +=frame32f;
cout << " i = " << i<<endl;
frame.release();
}
resultframe *= (1.0/count);
imshow("",resultframe);
waitKey(0);
return 0;
}
я получаю всегда белую рамку в imshow, любой идея, почему я получаю это. Заранее спасибо за вашу помощь !
Я сказал вам в [предыдущий ответ] (http://stackoverflow.com/a/14202055/1231073), что, если вы хотите визуализировать изображение с плавающей запятой, его значения должны быть нормированы в диапазоне от 0.0 до 1.0. – sgarizvi