我正在尝试让OpenCV在iOS上生成hdr图像,其中包含我提供的9张图片(-4.0到4.0 EV,增量为1),但图片显示出来了。一切都有这种奇怪的乳白色过滤器外观,窗外看起来是蓝色和像素化。有关为什么会出现这种结果的任何见解?下面是我的代码以及显示我遇到的问题的图片。
cv::Mat mergeToHDR (vector<Mat>& images, vector<float>& times)
{
imgs = images;
Mat response;
vector<Mat> images_(images);
Ptr<AlignMTB> align=createAlignMTB(4);// 4=max 16 pixel shift
align->process(images_, images);
Ptr<CalibrateDebevec> calibrate = createCalibrateDebevec();
calibrate->process(images, response, times);
Mat hdr;
Ptr<MergeDebevec> merge = createMergeDebevec();
merge->process(images, hdr, times, response);
Mat tm;
Ptr<TonemapReinhard> tonemap = createTonemapReinhard(2.2f);
tonemap->process(hdr, tm);
tm = tm * 255;
tm.convertTo(tm, CV_8U);
return tm;
}