IPD FOV calibration

This is for discussion and development of non-commercial open source VR/AR projects (e.g. Kickstarter applicable, etc). Contact MTBS admins at customerservice@mtbs3d.com if you are unsure if your efforts qualify.
Post Reply
User avatar
Naru
Two Eyed Hopeful
Posts: 76
Joined: Fri Nov 23, 2012 6:24 pm

IPD FOV calibration

Post by Naru »

I recently saw a couple posts about how TF2 has a calibration system for the Rift. After seeing the video about moving the green lines to the edge of your view I wondered about what exactly was being calibrated and how it was being done. The only settings I know of that an application needs is IPD, FOV, and the size of the window that the user can see. I know the green line calibration tool can give you the size of the visible window that a user can see which tells you what size to render the two views, but I can't figure out how IPD and FOV would be calibrated from just that information. I'm sure it's not that hard, but I'd rather ask the development community rather than ponder this for much longer. Also, the FOV would not really be necessary if we knew the FOV that the Rift provides. We could just render the entire 640x800 per eye plus warp of course, taking into account the static Rift FOV, and not have to bother the user with providing that information through a calibration test. This leaves only IPD calibration that would be necessary. Does anyone have any simple idea for an IPD calibration method that would not take as long as the green line test of TF2? This is all to improve the user experience, so they wouldn't have to go through a tedious process.
zalo
Certif-Eyed!
Posts: 661
Joined: Sun Mar 25, 2012 12:33 pm

Re: IPD FOV calibration

Post by zalo »

You're supposed to know your IPD, and you set that right after the green line boundary definition.

There are also some green lines that should converge as you set the value.
User avatar
Naru
Two Eyed Hopeful
Posts: 76
Joined: Fri Nov 23, 2012 6:24 pm

Re: IPD FOV calibration

Post by Naru »

zalo wrote:You're supposed to know your IPD, and you set that right after the green line boundary definition.

There are also some green lines that should converge as you set the value.
Thanks for that. It kind of further proves that you can't test someone's IPD with a program though. Your eyes force convergence if the setting is any where near the correct value, but without knowing your actual IPD, things can get uncomfortable.
User avatar
xef6
One Eyed Hopeful
Posts: 41
Joined: Sat Nov 03, 2012 11:41 pm

Re: IPD FOV calibration

Post by xef6 »

Say you have two vertical lines, and both are initially centered in the middle of each "eye" of the rift (at x coordinate 1280* 1/4 and 1280* 3/4). If you look into it and the two lines fuse, this implies that the effective IPD setting is less than or equal to your IPD. If you start (simultaneously) moving the left eye line to the left and the right eye line to the right (diverging / increasing IPD) pixel by pixel, eventually you won't be able to fuse them and you'll see two lines instead of one. This "fusion failure" point should be just beyond your IPD. By going a bit over that point and coming back until you can just barely get the lines to comfortably overlap, you should be able to successfully measure IPD. Knowing the pixel pitch should allow you to convert the measurement from pixels to real units like mm.

This sort of calibration procedure should work provided that the user cannot make their eyes diverge past parallel (which ought to hold true for almost everyone).
geekmaster
Petrif-Eyed
Posts: 2708
Joined: Sat Sep 01, 2012 10:47 pm

Re: IPD FOV calibration

Post by geekmaster »

My "fusion failure" point is quite a bit beyond my IPD. It is pretty much at whatever point I get annoyed enough to stop looking. It can even get painful viewing 3D with a "too wide" IPD. I have successfully viewed SBS-Half content on my Nexus 7 with no lenses, but not for very long. Offset lenses can help pull the images together to make it comfortable for long viewing sessions.

The problem is that even if the IPD is just a little off (even imperceptibly), it can add to VR sickness (even if you do not notice ocular discomfort).
User avatar
brantlew
Petrif-Eyed
Posts: 2221
Joined: Sat Sep 17, 2011 9:23 pm
Location: Menlo Park, CA

Re: IPD FOV calibration

Post by brantlew »

xef6 wrote:Say you have two vertical lines, and both are initially centered in the middle of each "eye" of the rift (at x coordinate 1280* 1/4 and 1280* 3/4). If you look into it and the two lines fuse, this implies that the effective IPD setting is less than or equal to your IPD. If you start (simultaneously) moving the left eye line to the left and the right eye line to the right (diverging / increasing IPD) pixel by pixel, eventually you won't be able to fuse them and you'll see two lines instead of one. This "fusion failure" point should be just beyond your IPD. By going a bit over that point and coming back until you can just barely get the lines to comfortably overlap, you should be able to successfully measure IPD. Knowing the pixel pitch should allow you to convert the measurement from pixels to real units like mm.

This sort of calibration procedure should work provided that the user cannot make their eyes diverge past parallel (which ought to hold true for almost everyone).
It's a good thought, but it's not clear how repeatable it is even from the same individual much-less over a large population with different abilities. It's also very difficult to explain to a new user exactly what they need to do and there will probably be a lot of users that hastily and mistakenly set their IPD the first time. Valve's method is a bit of a PITA but it is very analytical at least.
User avatar
Naru
Two Eyed Hopeful
Posts: 76
Joined: Fri Nov 23, 2012 6:24 pm

Re: IPD FOV calibration

Post by Naru »

Should we just tell users to hold a ruler to their face in front of a mirror then? As for Valve's calibration, I think it's not really needed if you just set the parameters of the Rift such as which eye cup is being used. You should be able to calculate the field of view somewhat accurately with a series of questions. I'm thinking only knowing which eye cups and if the user is wearing glasses should be enough. The IPD problem will be solved in a future revision I'm sure, just not likely to be in V2. I'll play around with this idea further when I get my Rift.
Owen
Cross Eyed!
Posts: 182
Joined: Mon Aug 13, 2012 5:21 pm

Re: IPD FOV calibration

Post by Owen »

The FOV depends on your IPD and how close your eye is to the lens, the calibration determines both by figuring out exactly what area of the screen is visible to you through the lenses, and using that information to create a camera frustum that fits it exactly.

It does not ask for your IPD, it tells you your IPD.
Mystify
Certif-Eyed!
Posts: 645
Joined: Fri Jan 11, 2013 5:10 pm

Re: IPD FOV calibration

Post by Mystify »

The green lines let you mark how much of the screen is visible.
From that, it infers where your eye must be centered to produce that area
Do this for both eyes, and you can figure out the distance between them.
User avatar
Naru
Two Eyed Hopeful
Posts: 76
Joined: Fri Nov 23, 2012 6:24 pm

Re: IPD FOV calibration

Post by Naru »

Yes, that makes sense. I was wondering how the system calculated the IPD. Makes me think that there is no better way. I'm hoping Oculus releases some documentation on this so we have a standardized method that everyone will be accustomed to. Otherwise I'll roll out my own, similar to the one in TF2.
User avatar
Neil
3D Angel Eyes (Moderator)
Posts: 6882
Joined: Wed Dec 31, 1969 6:00 pm
Contact:

Re: IPD FOV calibration

Post by Neil »

Have you guys tried this:

http://www.mtbs3d.com/index.php?option= ... &Itemid=77

I bring it up because we developed a method to estimate what your IPD is based on what you see. The catch is you HAVE to look through each lens one at a time. You also have to ignore what you see in the game, as that's misleading. For example, the game's crosshair isn't dead center, so you have to kind of look beyond the game and estimate what is the REAL center of the lens according to where your eye points when looking straight ahead.

However, I have a question. Getting the horizontal IPD (or at least a guiding representation of an IPD) is easy enough for our purposes with the SHOCT lines. Do we need a vertical alignment as well? Would that cause more harm than good? Are our eyes perfectly horizontal from each other, or is there a vertical misalignment between them?

Regards,
Neil
User avatar
Naru
Two Eyed Hopeful
Posts: 76
Joined: Fri Nov 23, 2012 6:24 pm

Re: IPD FOV calibration

Post by Naru »

Nice explanation. I think all Rift and game apps should use the same camera setup with parameters for ipd and field of view. That particular method for ipd calibration is cool and I can see why it works, but it would be better if it was in a self contained application where the game environment can be precisely controlled. Assuming the same camera setup in all games makes this possible. As for the vertical eye alignment, I think some people do have small differences in alignment and so this should be taken into account when calibrating, with horizontal SHOCT lines.
User avatar
Naru
Two Eyed Hopeful
Posts: 76
Joined: Fri Nov 23, 2012 6:24 pm

Re: IPD FOV calibration

Post by Naru »

Double post for some reason.
geekmaster
Petrif-Eyed
Posts: 2708
Joined: Sat Sep 01, 2012 10:47 pm

Re: IPD FOV calibration

Post by geekmaster »

Neil wrote:Have you guys tried this:

http://www.mtbs3d.com/index.php?option= ... &Itemid=77

I bring it up because we developed a method to estimate what your IPD is based on what you see. The catch is you HAVE to look through each lens one at a time. You also have to ignore what you see in the game, as that's misleading. For example, the game's crosshair isn't dead center, so you have to kind of look beyond the game and estimate what is the REAL center of the lens according to where your eye points when looking straight ahead.

However, I have a question. Getting the horizontal IPD (or at least a guiding representation of an IPD) is easy enough for our purposes with the SHOCT lines. Do we need a vertical alignment as well? Would that cause more harm than good? Are our eyes perfectly horizontal from each other, or is there a vertical misalignment between them?

Regards,
Neil
Using a tool marbas just published, I discovered that my eyes have 4-pixels difference in vertical alignment. I cannot adjust the Rift on my face, because the top of the eyecups are pressing lightly against the underside of my eyebrow ridges, locking them in place. My eyelashes brush the lenses, which gives me maximum FoV. I can force convergence, but that causes noticeable eye strain. With his tool, I was able to change vertical alignment by 4 pixels, which was MUCH more comfortable for me to view. Others may have even more vertical misalignment than me, so IMHO vertical adjustments are CRITICAL for widespread use of the Rift. And until now, I thought only IPD horizontal adjustments were necessary.

By shifting the vertical like that, it changes the angle of lens offset for people with IPD different from RiftDK 64mm IPD. Even when software adjusts the image IPD to match viewer IPD, the fact that you are not looking through the lens principal points causes tangential distortion, requiring pre-warp using the P1,P2,P3 coefficients often neglected in the Brown's model of lens distortion correction (only K1,K2 used under assumption that view is through lens principal points). And as mentioned, the literature says that each color channel should be processed individually using slightly different distortion coefficients, to prevent chromatic aberration.

I am not sure how to handle a non-horizontal lens offset though, to match my vertically misaligned eyes.
User avatar
MrGreen
Diamond Eyed Freakazoid!
Posts: 741
Joined: Mon Sep 03, 2012 1:36 pm
Location: QC, Canada

Re: IPD FOV calibration

Post by MrGreen »

geekmaster wrote:
Neil wrote:Have you guys tried this:

http://www.mtbs3d.com/index.php?option= ... &Itemid=77

I bring it up because we developed a method to estimate what your IPD is based on what you see. The catch is you HAVE to look through each lens one at a time. You also have to ignore what you see in the game, as that's misleading. For example, the game's crosshair isn't dead center, so you have to kind of look beyond the game and estimate what is the REAL center of the lens according to where your eye points when looking straight ahead.

However, I have a question. Getting the horizontal IPD (or at least a guiding representation of an IPD) is easy enough for our purposes with the SHOCT lines. Do we need a vertical alignment as well? Would that cause more harm than good? Are our eyes perfectly horizontal from each other, or is there a vertical misalignment between them?

Regards,
Neil
Using a tool marbas just published, I discovered that my eyes have 4-pixels difference in vertical alignment. I cannot adjust the Rift on my face, because the top of the eyecups are pressing lightly against the underside of my eyebrow ridges, locking them in place. My eyelashes brush the lenses, which gives me maximum FoV. I can force convergence, but that causes noticeable eye strain. With his tool, I was able to change vertical alignment by 4 pixels, which was MUCH more comfortable for me to view. Others may have even more vertical misalignment than me, so IMHO vertical adjustments are CRITICAL for widespread use of the Rift. And until now, I thought only IPD horizontal adjustments were necessary.

By shifting the vertical like that, it changes the angle of lens offset for people with IPD different from RiftDK 64mm IPD. Even when software adjusts the image IPD to match viewer IPD, the fact that you are not looking through the lens principal points causes tangential distortion, requiring pre-warp using the P1,P2,P3 coefficients often neglected in the Brown's model of lens distortion correction (only K1,K2 used under assumption that view is through lens principal points). And as mentioned, the literature says that each color channel should be processed individually using slightly different distortion coefficients, to prevent chromatic aberration.

I am not sure how to handle a non-horizontal lens offset though, to match my vertically misaligned eyes.

My eyes are misaligned both horizontally and vertically. You wouldn't tell by looking at me (as long as I'm using my dominant eye) but it's enough to be stereoblind. I made a thread about this a few months back. My hope with the Rift is that through individual eye adjustments I'm able to see 3D. Also, Palmer himself gave me hope:
Palmer on Kickstarter PM wrote:Hi ,

Sorry for the long delay, we have been swamped with questions!

We are looking into independent eye adjustments for people in your scenario, and I think there is a pretty high chance you will get something working. :) Thanks for your support!

Best,
Oculus
All in all being stereoblind is a pretty insignificant handicap but still, you have no idea how happy that would make me.
User avatar
Neil
3D Angel Eyes (Moderator)
Posts: 6882
Joined: Wed Dec 31, 1969 6:00 pm
Contact:

Re: IPD FOV calibration

Post by Neil »

I'm just not sure about comparative eye to eye vertical realignment.

We definitely have vertical alignment for stereo cameras to compensate for lens placement errors. That's understandable because it's compensating for manufacturing errors that get in the way of content being properly created. I suppose if the HMD was worn on our face in an uneven fashion, that could contribute to a misalignment - but I have doubts that this would be serious enough. If anything, I think the correction could cause more problems than it's worth.

Have to think about it. I learned yesterday that our eyes can actually rotate three degrees. Not swivel left and right or up and down...rotate like a door knob! I'm also told it's a painful three degrees. Try it sometime.

Regards,
Neil
User avatar
xef6
One Eyed Hopeful
Posts: 41
Joined: Sat Nov 03, 2012 11:41 pm

Re: IPD FOV calibration

Post by xef6 »

Neil wrote: I learned yesterday that our eyes can actually rotate three degrees. Not swivel left and right or up and down...rotate like a door knob! I'm also told it's a painful three degrees. Try it sometime.
You're right, we can! However, I'm pretty sure it's painless! It's quite normal for the eyes to rotate as you rotate your head side to side. Both eyes will rotate in the opposite direction as your head is rotating, in order to keep the image of the world stable. I'm not sure what the upper limit is, but I think it might be more than 3 degrees. We have awesome image stabilization!

These movements are called incycloduction and excycloduction (intorsion and extorsion). More at: http://www.oculist.net/downaton502/prof ... 1c002.html

In fact, our eyes ratchet back and forth to continuously stabilize for rotation, so they'll rotate as far as they can and then flick back to "restart" as you exceed their range. If you tilt your head a lot, they might have to "restart" rotation quite a few times. I guess it's kind of like a saccade except with rotation. It looks pretty funny, so I made a video to demonstrate this:
http://www.youtube.com/watch?v=byhLedmSWTI

edit: I'm just rotating my head side to side in the video. No drugs involved! I swears.
Last edited by xef6 on Tue Apr 16, 2013 4:26 pm, edited 2 times in total.
User avatar
Neil
3D Angel Eyes (Moderator)
Posts: 6882
Joined: Wed Dec 31, 1969 6:00 pm
Contact:

Re: IPD FOV calibration

Post by Neil »

That is so gross. I'm glad I didn't grow up to be an eye surgeon.

Regards,
Neil
User avatar
xef6
One Eyed Hopeful
Posts: 41
Joined: Sat Nov 03, 2012 11:41 pm

Re: IPD FOV calibration

Post by xef6 »

Neil wrote:That is so gross. I'm glad I didn't grow up to be an eye surgeon.
You're doing it too! My eye's feelings are hurt! ;)

Luckily, I don't think it's necessary at all to compensate for this with HMDs, because the rotation is the compensation.
geekmaster
Petrif-Eyed
Posts: 2708
Joined: Sat Sep 01, 2012 10:47 pm

Re: IPD FOV calibration

Post by geekmaster »

Neil wrote:... I suppose if the HMD was worn on our face in an uneven fashion, that could contribute to a misalignment - but I have doubts that this would be serious enough. If anything, I think the correction could cause more problems than it's worth.
But it is aligned evenly and rigidly to my face, such that it CANNOT be adjusted in any direction (except vertical tilt, set by the coin-slot adjustments). My RiftDK does not have foam on the face mask at this time. The eyecups fit partially into my eye sockets, which determines its resting position on my face. And yet, my eyes feel MUCH more comfortable with that 4 pixel vertical offset, as determined by the marbas RiftDK alignment app.
User avatar
MrGreen
Diamond Eyed Freakazoid!
Posts: 741
Joined: Mon Sep 03, 2012 1:36 pm
Location: QC, Canada

Re: IPD FOV calibration

Post by MrGreen »

geekmaster wrote:And yet, my eyes feel MUCH more comfortable with that 4 pixel vertical offset, as determined by the marbas RiftDK alignment app.
Wait, are there global settings for that or are you simply going by what you're seeing in this app?
geekmaster
Petrif-Eyed
Posts: 2708
Joined: Sat Sep 01, 2012 10:47 pm

Re: IPD FOV calibration

Post by geekmaster »

MrGreen wrote:
geekmaster wrote:And yet, my eyes feel MUCH more comfortable with that 4 pixel vertical offset, as determined by the marbas RiftDK alignment app.
Wait, are there global settings for that or are you simply going by what you're seeing in this app?
Just the app. I did not notice discomfort in Tuscany -- just that my eyes felt much more relaxed in that app with the vertical offset. But now, I think maybe I had an A and a B cup in mine, so I could compare them. I think that could account for the differences in my screen capture. The different eyecups have different magnification and focal length, so perhaps they have different optical axis vertical offsets (not a problem as long as both eyes are the same). I need to test again now that both A-cups are installed. I am so busy it is hard to keep track of everything...
User avatar
Neil
3D Angel Eyes (Moderator)
Posts: 6882
Joined: Wed Dec 31, 1969 6:00 pm
Contact:

Re: IPD FOV calibration

Post by Neil »

Hi Guys,

I've been asking around at the university regarding the vertical alignment issue, and they strongly recommend against it because the tiniest amount contributes to cybersickness and pain. It's also very rare to have this vertical misalignment between eyes.

I have an idea on a way to implement it, but I really think the risks outweigh the rewards.

Regards,
Neil
geekmaster
Petrif-Eyed
Posts: 2708
Joined: Sat Sep 01, 2012 10:47 pm

Re: IPD FOV calibration

Post by geekmaster »

I do notice that it helps to hold my RiftDK on the sides with my hands, to keep my eyes centered over the "sweet spots" for both lenses, just like "Granny" did in the YouTube video...

http://www.youtube.com/watch?v=pAC5SeNH8jw

When I do not hold it in place, the lens eyecups pressing on the underside of my eyebrow ridges causes the eyecups to move downward (still pressing against my eyebrow ridges), shifting my viewpoint above the lens optical axis. Without holding it in place with my hands, the eyebrow ridge pressure balances, giving me a 4-pixel vertical offset.

It is not so much my eyes that are misaligned, but rather the shape of my eyebrows and/or eye sockets (similar to how I need to adjust my eyeglass bows to fit my asymmetrical ears...

I realize that I *could* move my eyes farther from the lenses, but I *want* my eyelashes brushing them, for *maximum* FoV...
Post Reply

Return to “VR/AR Research & Development”