POV-Ray : Newsgroups : povray.pov4.discussion.general : Feature Request: optical distortion Server Time
15 Oct 2024 05:30:40 EDT (-0400)
  Feature Request: optical distortion (Message 1 to 4 of 4)  
From: IGM
Subject: Feature Request: optical distortion
Date: 5 Oct 2018 05:15:01
Message: <web.5bb72a6fc6953431776fc67d0@news.povray.org>
Hi,
I suggest to implement the excellent work by Clemens Rabe:
http://www.clemensrabe.com/computer-vision/pov-ray/simulation-of-lense-distortion
about the new camera type with optical distorion.

Optical distortion modeling is increasingly important due to modern artificial
vision studies and applications.

After several searches, I didn't find much about this feature in Pov-Ray. If I'm
wrong and this feature is yet implemented (or in program) I apologize.

Thank you
igmar


Post a reply to this message

From: Le Forgeron
Subject: Re: Feature Request: optical distortion
Date: 5 Oct 2018 13:20:45
Message: <5bb79d6d@news.povray.org>
Le 05/10/2018 à 11:10, IGM a écrit :
> Hi,
> I suggest to implement the excellent work by Clemens Rabe:
> http://www.clemensrabe.com/computer-vision/pov-ray/simulation-of-lense-distortion
> about the new camera type with optical distorion.
> 
> Optical distortion modeling is increasingly important due to modern artificial
> vision studies and applications.
> 
> After several searches, I didn't find much about this feature in Pov-Ray. If I'm
> wrong and this feature is yet implemented (or in program) I apologize.
> 

I see a patch for 3.6,1 but what is the license ?


Post a reply to this message

From: clipka
Subject: Re: Feature Request: optical distortion
Date: 5 Oct 2018 14:11:50
Message: <5bb7a966$1@news.povray.org>
Am 05.10.2018 um 19:20 schrieb Le_Forgeron:
> Le 05/10/2018 à 11:10, IGM a écrit :
>> Hi,
>> I suggest to implement the excellent work by Clemens Rabe:
>> http://www.clemensrabe.com/computer-vision/pov-ray/simulation-of-lense-distortion
>> about the new camera type with optical distorion.
>>
>> Optical distortion modeling is increasingly important due to modern artificial
>> vision studies and applications.
>>
>> After several searches, I didn't find much about this feature in Pov-Ray. If I'm
>> wrong and this feature is yet implemented (or in program) I apologize.
>>
> 
> I see a patch for 3.6,1 but what is the license ?

IANAL, but by default it can probably be pressumed that the code is
placed under the v3.6 POV-Ray license.

Which means we can't simply copy the work, because the licensing terms
and conditions aren't compatible with the AGPL used by POV-Ray v3.7.
We'd have to contact the author to re-license his portions of the code
under AGPL-compatible terms and conditions.


As another note, it might be worth mentioning that POV-Ray already
supports several ways to achieve distortions beyond the standard pinhole
model:

- The `panoramic` and `fisheye` cameras are dedicated camera types
implementing distortions.

- Although not very widely known, a `normal` statement can be applied to
the camera to distort the image based on a pattern.

- The `mesh` camera introduced in v3.7 can be used to simulate arbitrary
camera projections, far beyond "simple" lens distortions (although it is
admittedly cumbersome to set up).

- The `user_defined` camera being introduced in v3.8 can also be used to
implement almost arbitrary camera projections, provided they can be
expressed as a set of functions mapping screen coordinates to ray origin
coordinates and direction vector components.


Post a reply to this message

From: IGM
Subject: Re: Feature Request: optical distortion
Date: 9 Oct 2018 04:00:00
Message: <web.5bbc5f754b151640776fc67d0@news.povray.org>
> - Although not very widely known, a `normal` statement can be applied to
> the camera to distort the image based on a pattern.

I didn't know this trick, it deserves a try.

> - The `user_defined` camera being introduced in v3.8 can also be used to
> implement almost arbitrary camera projections, provided they can be
> expressed as a set of functions mapping screen coordinates to ray origin
> coordinates and direction vector components.

This could be very useful. I hope that this feature will be well documented.

Nevertheless, I still think that an implementation of optical distortion
consistent with the literature definitions and terms (as in the followong
references) would be preferable and more useful (and appealing!) for the
community.

Bouguet model:
http://www.vision.caltech.edu/bouguetj/calib_doc/htmls/parameters.html
Open CV:
https://docs.opencv.org/2.4/doc/tutorials/calib3d/camera_calibration/camera_calibration.html

igmar


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.