1

我试图让 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;

}

图片链接

4

0 回答 0