New fisheye to equirectangular opensource converter software

I am currently working to a software which allows converting a fisheye image into an equirectangular one, for viewing in VR viewers.

Currently it works only with single fishey images with 235° FOV, but I plan to extend it to double fisheye and custom FOV.

In the meantime, if somebody withmore spare time than me wants to fork the project, its’ here:

It’s written in RealBasic (now “Xojo”) for Windows, but probably it can be also compiled fo other platforms (Lunx, Mac,…).

A pre-compiled windows binary is in the Fisheye2Equi folder (but you must download the whole package because you also need some included libraries).

It makes use of FFMPEG and its new filter “V360”; as you can see, program also displays the full commandline it generates, so you can experiment with it.

Don’t forget to put a copy of FFMPEG into program folder.

Program is not very robust yet, so you will easy crash it if you do “strange things”… :slight_smile:

2 Likes

Cool! I was looking for something like this for my online converter. Didn’t realize ffmpeg can do it. Is it just a matter of proper parameters passed to ffmpeg or does it need some extra plugins/whatever it is in ffmpeg world? Can it convert equirectangular back to fisheye? What is the purpose of Fisheye2Equi.xml?

  1. ffmpeg is standalone (100 MB executable!), just download the “right” version which includes v360 filter (i.e. at least 4.3 according to changelog).

  2. probably it can back-convert by using -vf v360:equirectangular:fisheye , but I didn’t try

  3. I am quite new on sharing projects on github, so I saved my Realbasic/Xojo project in XML/TXT format as I read somwehere, as it makes it is easier for contributors to understand/edit the project before importing in Realbasic.

edit:
I’ve just seen that the XML is all but readable! I’ll check if there is an ACTUAL text format for sharing.

What’s the use case for converting a single fisheye image to equirectangular format?

Some ideas:

  • someone has a camera with one lens broken
  • photographer wants a 180 panorama to hide half of the scene
  • reduce initial load time of image

This often comes up for live streaming as people often want to stream a single lens.

My program is not specific for double fisheye cameras… which I do not own! I have a single 360° * 235° camera , but the SW provided with it has two major limitations:

  • apparently it is not aware of the 235°, probably it’s tuned for something around 210°, so it squeezes my images
  • it does not allow reprojecting horizontal fisheye pictures: it assumes that I only point the camera upward or downward!

But as my SW is opensource and it generates a command line for FFMPEG, I think it can be useful also for double cameras owners.
But I could also try experimenting in implementing double camera support, if somebody can tell me where to find sample double fisheye images.

Program updated to 0.0.2:

  • Added slider for FOV
  • Implemented all menu items to save output in high res
  • Switched to text format for project (XOJO RBCP)

From the pre-compiled binary, I get this error.

Download Windows binary for ffmpeg from this site

Builds - CODEX FFMPEG @ gyan.dev

Copied ffmpeg.exe into the folder containing Fisheye2Equi.exe

image

Starts with no errors.

On preview, I get this error

image