【发布时间】:2019-05-05 18:13:23
【问题描述】:
我想知道如何使用 swift 4.2 制作高动态范围成像功能
我在 OpenCVWrapper.h 中创建函数:
+(UIImage *) hdrImaging:(NSArray *)images :(NSArray *)times;
第一个问题是如何在params中设置vector而不是array?
在我创建了函数的 OpenCVWrapper.mm 文件之后:
#import <opencv2/opencv.hpp>
#import "OpenCVWrapper.h"
#import <UIKit/UIKit.h>
#include <opencv2/photo.hpp>
#include <opencv2/highgui/ios.h>
@implementation OpenCVWrapper
+(UIImage *) hdrImaging:(/* HERE PUT VECTOR PARAMS */)images :(/* HERE PUT VECTOR PARAMS */)times{
Mat response;
//here to declare Mat it's cv::Mat response;
//I don't know how to declare and use Ptr function and what file import to use this function
Ptr<CalibrateDebevec> calibrate = createCalibrateDebevec();
calibrate->process(images, response, times);
Mat hdr;
Ptr<MergeDebevec> merge_debevec = createMergeDebevec();
merge_debevec->process(images, hdr, times, response);
Mat ldr;
Ptr<TonemapDurand> tonemap = createTonemapDurand(2.2f);
tonemap->process(hdr, ldr);
Mat fusion;
Ptr<MergeMertens> merge_mertens = createMergeMertens();
merge_mertens->process(images, fusion);
response = fusion * 255;
return MatToUIImage(response);
}
@end
有人可以帮我在我的.mm 文件中创建这个函数吗,如何在函数中传递向量参数以及该代码运行什么文件导入?
谢谢!
【问题讨论】: