0

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