void mod_setup(lfFixture *lfFix, gconstpointer data) { lfTestParams *p = (lfTestParams *)data; lfFix->lens = new lfLens(); lfFix->lens->Type = LF_RECTILINEAR; lfFix->lens->CropFactor = 1.0; lfFix->lens->AspectRatio = 1.5; // Canon EOS 5D Mark III + Canon EF 24-70mm f/2.8L II USM lfLensCalibVignetting lensCalibVign = {LF_VIGNETTING_MODEL_PA, 24.0f, 2.8f, 1000.0f, { -0.5334f, -0.7926f, 0.5243f}}; lfFix->lens->AddCalibVignetting(&lensCalibVign); lfFix->img_height = 299; lfFix->img_width = 299; lfFix->mod = new lfModifier(lfFix->lens, 1.0f, lfFix->img_width, lfFix->img_height); lfFix->mod->Initialize( lfFix->lens, cTypeToLfPixelFormat<T>(), 24.0f, 2.8f, 1000.0f, 1.0f, LF_RECTILINEAR, LF_MODIFY_VIGNETTING, p->reverse); lfFix->image = NULL; const size_t bufsize = p->cpp * lfFix->img_width * lfFix->img_height * sizeof(T); if(p->alignment == 0) lfFix->image = g_malloc(bufsize); else lfFix->image = lf_alloc_align(p->alignment, bufsize); generateImage<T>(lfFix, p, (T *)lfFix->image); }
// setup a standard lens void mod_setup(lfFixture *lfFix, gconstpointer data) { lfTestParams *p = (lfTestParams *)data; lfFix->lens = new lfLens(); lfFix->lens->CropFactor = 1.0f; lfFix->lens->Type = LF_RECTILINEAR; lfFix->img_height = 300; lfFix->img_width = 300; lfFix->mod = lfModifier::Create(lfFix->lens, 1.0f, lfFix->img_width, lfFix->img_height); lfFix->mod->Initialize( lfFix->lens, LF_PF_F32, 24.0f, 2.8f, 1000.0f, p->scale, LF_RECTILINEAR, LF_MODIFY_SCALE, p->reverse); lfFix->coordBuff = NULL; const size_t bufsize = 2 * lfFix->img_width * lfFix->img_height * sizeof(float); if(p->alignment == 0) lfFix->coordBuff = g_malloc(bufsize); else lfFix->coordBuff = lf_alloc_align(p->alignment, bufsize); }
// setup a standard lens void mod_setup(lfFixture *lfFix, gconstpointer data) { lfTestParams *p = (lfTestParams *)data; lfFix->lens = new lfLens(); lfFix->lens->Type = p->sourceLensType; lfFix->img_height = 300; lfFix->img_width = 300; lfFix->mod = new lfModifier(1.0f, lfFix->img_width, lfFix->img_height, LF_PF_F32, p->reverse); lfFix->mod->EnableProjectionTransform(lfFix->lens, 24.0f, p->targetLensType); lfFix->coordBuff = NULL; const size_t bufsize = 2 * lfFix->img_width * lfFix->img_height * sizeof(float); if(p->alignment == 0) lfFix->coordBuff = g_malloc(bufsize); else lfFix->coordBuff = lf_alloc_align(p->alignment, bufsize); }
// setup a standard lens void mod_setup(lfFixture *lfFix, gconstpointer data) { lfTestParams *p = (lfTestParams *)data; lfFix->lens = new lfLens(); lfFix->lens->Type = LF_RECTILINEAR; lfFix->lens->AddCalibDistortion(&p->calib); lfFix->img_height = 299; lfFix->img_width = 299; lfFix->mod = new lfModifier(1.0f, lfFix->img_width, lfFix->img_height, LF_PF_F32, p->reverse); lfFix->mod->EnableDistortionCorrection(lfFix->lens, 24.0f); lfFix->coordBuff = NULL; const size_t bufsize = 2 * lfFix->img_width * lfFix->img_height * sizeof(float); if(p->alignment == 0) lfFix->coordBuff = g_malloc(bufsize); else lfFix->coordBuff = lf_alloc_align(p->alignment, bufsize); }