mirror of
https://github.com/EyeTrackVR/EyeTrackVR-Docs.git
synced 2025-11-04 14:49:44 +08:00
add guides
This commit is contained in:
parent
4cf7917586
commit
d397a4bd26
39
docs/_pages/Build_Software.md
Normal file
39
docs/_pages/Build_Software.md
Normal file
@ -0,0 +1,39 @@
|
||||
---
|
||||
layout: page
|
||||
title: Building the app from source
|
||||
permalink: /building-the-app/
|
||||
nav_order: 3
|
||||
parent: Software Guide
|
||||
---
|
||||
|
||||
## This guide will show how to build the app from source
|
||||
|
||||
{% include custom/alerts/Note.html content="This is NOT a required step, you do not need to build the app from source." %}
|
||||
|
||||
## Requirements:
|
||||
|
||||
- [x] [Python 3.6.8](https://www.python.org/downloads/release/python-368/)
|
||||
- [x] [Pyinstaller](https://pyinstaller.org/en/stable/installation.html)
|
||||
|
||||
## Install the required Python modules.
|
||||
|
||||
After cloning the project open a command prompt in the eyetrack app folder and run the command: `pip install -r requirements.txt`
|
||||
|
||||
If you have multiple python versions installed on your machine, run the command: `py -3.6 -m pip install -r requirements.txt`
|
||||
|
||||
This should install all of the required modules.
|
||||
|
||||
## Build the app.
|
||||
|
||||
Now, you should be ready to build the app.
|
||||
With a command promt open in the EyeTrackApp folder, run the command `pyinstaller eyetrackapp.spec`
|
||||
|
||||
Give it time to build the app. Once done the app should be under `dist/eyetrackapp`
|
||||
|
||||
## Optional steps:
|
||||
|
||||
1. Move the `Images` folder from the source folder into the folder with the built .exe in it
|
||||
- this will let it have an icon in the app and taskbar.
|
||||
|
||||
2. Use a program like [Resource Hacker](http://www.angusj.com/resourcehacker/) to replace the .exe icon with the correct logo.
|
||||
- [Here is a tutorial](https://www.howtogeek.com/75983/stupid-geek-tricks-how-to-modify-the-icon-of-an-.exe-file/)
|
||||
144
docs/_pages/EyeTrackVR_App_Guide.md
Normal file
144
docs/_pages/EyeTrackVR_App_Guide.md
Normal file
@ -0,0 +1,144 @@
|
||||
---
|
||||
layout: page
|
||||
title: Installing and setting up the ETVR App
|
||||
permalink: /install-and-set-up-the-app/
|
||||
nav_order: 2
|
||||
parent: Software Guide
|
||||
---
|
||||
|
||||
|
||||
|
||||
# How to install, run and adjust the EyeTrackVR app.
|
||||
|
||||
### Step 1: Download the EyeTrackVR Installer and install the EyeTrackVR app.
|
||||
|
||||
Go to the latest [GitHub release here](https://github.com/RedHawk989/EyeTrackVR-Installer/releases/tag/EyeTrackVR-Installer-0.2.1) and download the .zip
|
||||
|
||||
Extract the zip file and then run the .exe as administrator.
|
||||
You will be greeted with a window that looks like this:
|
||||
{% include custom/images/image_2.html url="https://i.imgur.com/olwRFYI.png" max-width="500" caption="" alt="" %}
|
||||
|
||||
By default, it will install to `C:\Program Files\EyeTrackVR` and create a shortcut on your desktop.
|
||||
Pressing the `Change Install Path` button will open up a window where you can navigate to an alternate install path.
|
||||
|
||||
Press `Install` to install the app.
|
||||
{% include custom/alerts/Note.html content=" The installer can also be used to update the app, just go through the install process again." %}
|
||||
|
||||
If it has been successfully installed it should change to look like this:
|
||||
{% include custom/images/image_2.html url="https://i.imgur.com/Ugzzgbh.png" max-width="500" caption="" alt="" %}
|
||||
|
||||
## Step 2: Run the EyeTrackVR app.
|
||||
|
||||
If the `Create Desktop Shortcut` option was checked you should see an icon on your desktop, double click it to run.
|
||||
|
||||
You then should be greeted with a GUI that looks like this:
|
||||
{% include custom/images/image_2.html url="https://i.imgur.com/z6V7A71.png" max-width="500" caption="" alt="" %}
|
||||
|
||||
## Step 3: Getting familiar with settings and terminology.
|
||||
|
||||
Let's go over some basic terminology you will find in the app.
|
||||
|
||||
Starting from the top:
|
||||
|
||||
### `Right eye`:
|
||||
Shows the right eye feed and settings only.
|
||||
|
||||
### `Left eye`:
|
||||
Shows the left eye feed and settings only.
|
||||
|
||||
### `Both eyes`:
|
||||
Shows both eyes' feed and settings.
|
||||
|
||||
### `Camera Address`:
|
||||
This is where you enter the IP address of your camera.
|
||||
Alternatively, it can be used to put the cam number for wired cameras or pass in a video file.
|
||||
|
||||
### `Tracking Mode`:
|
||||
This changes the GUI to the tracking mode where it outputs values.
|
||||
|
||||
### `Cropping Mode`:
|
||||
This is where you will crop out your eye.
|
||||
|
||||
### `Threshold`:
|
||||
This is used to cut out things that aren't dark like your pupil.
|
||||
|
||||
### `Rotation`:
|
||||
For our method to work best, you want your eye to be level.
|
||||
Use this slider to adjust it to where that is the case.
|
||||
|
||||
### `Restart Calibrationn`:
|
||||
This will start a calibration mode for your eye where you look to all extremes.
|
||||
|
||||
### `Recenter Eye`:
|
||||
This will recenter your eye to whatever point you are looking at.
|
||||
|
||||
|
||||
## Step 4: Adding your cameras to the software and configuring them.
|
||||
Power your ESPs and find what the IP address is for your right eye. This can be done by opening both Cameras in a browser and then holding your finger over your right eye camera.
|
||||
|
||||
Copy that IP address and then close the browser tab with it open.
|
||||
|
||||
Enter that IP address into the app's `Camera Address` field and press the `Save and Restart Tracking` button.
|
||||
|
||||
Don't see your camera feed? That's because we haven't set an ROI.
|
||||
|
||||
{% include custom/images/image_2.html url="https://i.imgur.com/MJb2h74.png" max-width="500" caption="See the Awating Eye Cropping Settings text?" alt="" %}
|
||||
|
||||
Now press the `Cropping Mode` button.
|
||||
You should see a feed of your camera.
|
||||
|
||||
Put your headset on and use an application to see your desktop. (Virtual desktop, SteamVR desktop, etc.)
|
||||
|
||||
You should see something like this:
|
||||
{% include custom/images/image_2.html url="https://i.imgur.com/1pNYITS.png" max-width="500" caption=":O It's my eye!" alt="" %}
|
||||
|
||||
Now, Draw a rectangle that selects your eye.
|
||||
|
||||
A good example of an ROI
|
||||
{% include custom/images/image_2.html url="https://i.imgur.com/HZSvFBv.png" max-width="500" caption="" alt="" %}
|
||||
|
||||
Head back over to the `Tracking mode`.
|
||||
|
||||
We will now adjust our rotation by moving the `Rotation` slider.
|
||||
|
||||
From this:
|
||||
{% include custom/images/image_2.html url="https://i.imgur.com/xXTB3sM.png" max-width="500" caption="It's crooked!" alt="" %}
|
||||
|
||||
To this:
|
||||
{% include custom/images/image_2.html url="https://i.imgur.com/blsrpCX.png" max-width="500" caption="Much better" alt="" %}
|
||||
|
||||
Now we will adjust our threshold.
|
||||
|
||||
Continuing with your headset on, move the slider all the way up.
|
||||
start slowly backing it off until mainly only your pupil is being visualized in the threshold viewer.
|
||||
|
||||
Example of a threshold being too low:
|
||||
{% include custom/images/image_2.html url="https://i.imgur.com/30fFadH.png" max-width="500" caption="" alt="" %}
|
||||
|
||||
Example of too high of a threshold:
|
||||
{% include custom/images/image_2.html url="https://i.imgur.com/ZjpKfCV.png" max-width="500" caption="" alt="" %}
|
||||
|
||||
Example of a good threshold:
|
||||
{% include custom/images/image_2.html url="https://i.imgur.com/KPUn8S1.png" max-width="500" caption="" alt="" %}
|
||||
|
||||
Repeat everything in this step for your left eye.
|
||||
|
||||
## Step 5: Calibrating your eyes.
|
||||
|
||||
Once your eye is trackable by the software we need to calibrate it.
|
||||
|
||||
Press the `Restart Calibration` button and look around.
|
||||
The important part is that you look to all extremes, all the way up, left, etc.
|
||||
Once you have done so, wait for the `Mode` to say `Tracking`
|
||||
|
||||
The next step is to center your eye.
|
||||
|
||||
Look straight forward and press the `Recenter Eye` button.
|
||||
|
||||
Your eye is now fully calibrated.
|
||||
|
||||
Repeat for your other eye.
|
||||
{% include custom/alerts/Note.html content=" To best center both eyes, look at one spot and hit the 'Recenter Eye' button for each eye without moving your eyes." %}
|
||||
|
||||
|
||||
## See anything outdated on this guide? Let me know! `Prohurtz#0001`
|
||||
@ -52,7 +52,7 @@ parent: How to build
|
||||
## Step 1: Make sure your have read the [Things to know before you start](https://redhawk989.github.io/EyeTrackVR/things-to-know) guide.
|
||||
This will give you a basic overview of the project's status and what to expect currently.
|
||||
|
||||
## Step 2: Order all the parts listed on our [Parts list](https://redhawk989.github.io/EyeTrackVR/partslist/)
|
||||
## Step 2: Order all the parts listed on our [Parts list](https://redhawk989.github.io/EyeTrackVR/parts-list/)
|
||||
Please take note of the fact that hardware still may change, although with more developments it seems like we are going to stick with current hardware.
|
||||
|
||||
## Step 3: Wait for things to arrive.
|
||||
|
||||
@ -1,16 +1,18 @@
|
||||
---
|
||||
layout: page
|
||||
title: Part List
|
||||
permalink: /partslist/
|
||||
permalink: /parts-list/
|
||||
nav_order: 2
|
||||
parent: How to build
|
||||
---
|
||||
|
||||
## This page will include a basic part list for building an EyeTrackVR setup
|
||||
|
||||
{% include custom/alerts/Warning.html content="Please note that no hardware has been fully set in stone, all purchases are at your loss if hardware changes" %}
|
||||
{% include custom/alerts/Warning.html content=" Please note that no hardware has been fully set in stone, all purchases are at your loss if hardware changes" %}
|
||||
|
||||
{% include custom/alerts/Note.html content="It is recommended to source parts from AliExpress as it is much cheaper" %}
|
||||
{% include custom/alerts/Note.html content="It is recommended to source main parts from AliExpress as it is much cheaper." %}
|
||||
|
||||
{% include custom/alerts/Note.html content="It is good practice to buy more than needed in some cases, namely programmers and ESPs, this reduces the risk of a DOA (dead on arrival) causing a delay." %}
|
||||
|
||||
## Camera setup
|
||||
|
||||
@ -28,10 +30,6 @@ Here is an amazon link for 3 ESP32-Cams and programmers without the proper camer
|
||||
|
||||
[Or one with a cover on AliExpress here](https://www.aliexpress.com/item/2251832820552545.html?spm=a2g0o.productlist.0.0.24906d82STgtT2&algo_pvid=215ca169-e724-4aef-8cd4-597ceeb899f2&algo_exp_id=215ca169-e724-4aef-8cd4-597ceeb899f2-0&pdp_ext_f=%7B%22sku_id%22%3A%2267040749896%22%7D&pdp_npi=2%40dis%21USD%211.14%211.13%21%21%21%21%21%402101d64d16603413470056035e536c%2167040749896%21sea&curPageLogUid=ziYPxg6un38w)
|
||||
|
||||
[Or this one for more plug and play power](https://es.aliexpress.com/item/3256802826910871.html?spm=a2g0o.productlist.0.0.592c2d4fAXThal&algo_pvid=41a349ba-5582-4aff-9eed-70745cad6f1a&algo_exp_id=41a349ba-5582-4aff-9eed-70745cad6f1a-0&pdp_ext_f=%7B%22sku_id%22%3A%2212000023231721054%22%7D&pdp_npi=2%40dis%21USD%211.92%211.8%21%21%21%21%21%40210318d116603418291097152e829e%2112000023231721054%21sea&curPageLogUid=V05SfF2D6xcN)
|
||||
|
||||
{% include custom/alerts/Note.html content=" Note that with the above cable if you use the connectors included you will need 1 USB per ESP and another for the IR emitters. I would recommend not using the connectors because you would be using more USB ports than necessary. Also, note that data is not used so I would not get the variant with data cables. " %}
|
||||
|
||||
|
||||
- 1x Lower gauge wire to power ESPs
|
||||
[28 gauge wire from AliExpress here](https://a.aliexpress.com/_mK72cy6)
|
||||
@ -42,15 +40,15 @@ Here is an amazon link for 3 ESP32-Cams and programmers without the proper camer
|
||||
|
||||
- 4x Unfocused SMD IR emitters
|
||||
Recomended ones [from LCSC here](https://www.lcsc.com/product-detail/Infrared-IR-LEDs_XINGLIGHT-XL-3216HIRC-850_C965891.html).
|
||||
Alternative ones [from Digikey here](https://www.digikey.com/en/products/detail/inolux/IN-P32ZTIR/10384796). The difference between them is the ones from LCSC are rated for lower power, this means in the event of a short or misshap they should be safer, hence why they are recomended.
|
||||
{% include custom/alerts/Note.html content="The smaller ones can not be soldered at temps above 245C or they will burn. Low temp solder is recomended" %}
|
||||
Alternative ones [from Digikey here](https://www.digikey.com/en/products/detail/inolux/IN-P32ZTIR/10384796). The difference between them is the ones from LCSC are rated for lower power, which means in the event of a short or mishap they should be safer, hence why they are recommended.
|
||||
{% include custom/alerts/Note.html content="The smaller ones can not be soldered at temps above 245C or they will burn. Low temp solder is recommended" %}
|
||||
|
||||
{% include custom/alerts/Warning.html content="(DO NOT BUY FOCUSED ONES! If they look like something you would find in a TV remote do not use them, if you aren't exactly sure what you are doing, buy them from the LCSC or Digikey link)" %}
|
||||
|
||||
|
||||
- 4x IR emitter PCB's (highly recommended)
|
||||
- 4x IR emitter PCBs (highly recommended)
|
||||
|
||||
- 2x 698-710ohm resistors or the more recommend way, 4x 350ohm 1206 SMD resistors for IR emitters (If you are not using PCB's for the emitters then buying regular through-hole resistors is acceptable)
|
||||
- 2x 698-710ohm resistors or the more recommend way, 4x 350ohm 1206 SMD resistors for IR emitters (If you are not using PCBs for the emitters then buying regular through-hole resistors is acceptable)
|
||||
|
||||
- [357 ohm from Digikey here](https://www.digikey.com/en/products/detail/stackpole-electronics-inc/RMCF1206FT357R/1759919)
|
||||
|
||||
@ -70,7 +68,7 @@ This ensures you get the correct IR emitter parts.
|
||||
|
||||
- 1x Hot glue or another form of glue
|
||||
|
||||
- 1x Soldering iron and solder (lead free solder highly recommended)
|
||||
- 1x Soldering iron and solder (lead-free solder highly recommended)
|
||||
|
||||
|
||||
{% include custom/3d_printed_parts/Parts.html %}
|
||||
|
||||
@ -2,146 +2,9 @@
|
||||
layout: default
|
||||
title: Software Guide
|
||||
nav_order: 10
|
||||
has_children: false
|
||||
has_toc: True
|
||||
has_children: True
|
||||
permalink: /software-guide/
|
||||
---
|
||||
|
||||
# How to install, run and adjust the EyeTrackVR app.
|
||||
{% include custom/alerts/Note.html content="This will only cover the dual eye program, most things will transfer to the single eye app." %}
|
||||
|
||||
### Step 1: Download the EyeTrackVR Installer and install the EyeTrackVR app.
|
||||
|
||||
Go to the latest [GitHub release here](https://github.com/RedHawk989/EyeTrackVR-Installer/releases/tag/EyeTrackVR-Installer-0.2.1) and download the .zip
|
||||
|
||||
Extract the zip file and then run the .exe as administrator.
|
||||
You will be greeted with a window that looks like this:
|
||||
{% include custom/images/image_2.html url="https://i.imgur.com/olwRFYI.png" max-width="500" caption="" alt="" %}
|
||||
|
||||
By default, it will install to `C:\Program Files\EyeTrackVR` and create a shortcut on your desktop.
|
||||
Pressing the `Change Install Path` button will open up a window where you can navigate to an alternate install path.
|
||||
|
||||
Press `Install` to install the app.
|
||||
{% include custom/alerts/Note.html content=" The installer can also be used to update the app, just go through the install process again." %}
|
||||
|
||||
If it has been successfully installed it should change to look like this:
|
||||
{% include custom/images/image_2.html url="https://i.imgur.com/Ugzzgbh.png" max-width="500" caption="" alt="" %}
|
||||
|
||||
## Step 2: Run the EyeTrackVR app.
|
||||
|
||||
If the `Create Desktop Shortcut` option was checked you should see an icon on your desktop, double click it to run.
|
||||
|
||||
You then should be greeted with a GUI that looks like this:
|
||||
{% include custom/images/image_2.html url="https://i.imgur.com/z6V7A71.png" max-width="500" caption="" alt="" %}
|
||||
|
||||
## Step 3: Getting familiar with settings and terminology.
|
||||
|
||||
Let's go over some basic terminology you will find in the app.
|
||||
|
||||
Starting from the top:
|
||||
|
||||
### `Right eye`:
|
||||
Shows the right eye feed and settings only.
|
||||
|
||||
### `Left eye`:
|
||||
Shows the left eye feed and settings only.
|
||||
|
||||
### `Both eyes`:
|
||||
Shows both eyes' feed and settings.
|
||||
|
||||
### `Camera Address`:
|
||||
This is where you enter the IP address of your camera.
|
||||
Alternatively, it can be used to put the cam number for wired cameras or pass in a video file.
|
||||
|
||||
### `Tracking Mode`:
|
||||
This changes the GUI to the tracking mode where it outputs values.
|
||||
|
||||
### `Cropping Mode`:
|
||||
This is where you will crop out your eye.
|
||||
|
||||
### `Threshold`:
|
||||
This is used to cut out things that aren't dark like your pupil.
|
||||
|
||||
### `Rotation`:
|
||||
For our method to work best, you want your eye to be level.
|
||||
Use this slider to adjust it to where that is the case.
|
||||
|
||||
### `Eye Position Scalar`:
|
||||
This is a form of multiplier for OSC output.
|
||||
Increase it if when looking in all directions moves the eye not enough, if it works fine, leave it at default.
|
||||
|
||||
### `Restart Calibrationn`:
|
||||
This will start a calibration mode for your eye where you look to all extremes.
|
||||
|
||||
### `Recenter Eye`:
|
||||
This will recenter your eye to whatever point you are looking at.
|
||||
|
||||
|
||||
## Step 4: Adding your cameras to the software and configuring them.
|
||||
Power your ESPs and find what the IP address is for your right eye. This can be done by opening both Cameras in a browser and then holding your finger over your right eye camera.
|
||||
|
||||
Copy that IP address and then close the browser tab with it open.
|
||||
|
||||
Enter that IP address into the app's `Camera Address` field and press the `Save and Restart Tracking` button.
|
||||
|
||||
Don't see your camera feed? That's because we haven't set an ROI.
|
||||
|
||||
{% include custom/images/image_2.html url="https://i.imgur.com/MJb2h74.png" max-width="500" caption="See the Awating Eye Cropping Settings text?" alt="" %}
|
||||
|
||||
Now press the `Cropping Mode` button.
|
||||
You should see a feed of your camera.
|
||||
|
||||
Put your headset on and use an application to see your desktop. (Virtual desktop, SteamVR desktop, etc.)
|
||||
|
||||
You should see something like this:
|
||||
{% include custom/images/image_2.html url="https://i.imgur.com/1pNYITS.png" max-width="500" caption=":O It's my eye!" alt="" %}
|
||||
|
||||
Now, Draw a rectangle that selects your eye.
|
||||
|
||||
A good example of an ROI
|
||||
{% include custom/images/image_2.html url="https://i.imgur.com/HZSvFBv.png" max-width="500" caption="" alt="" %}
|
||||
|
||||
Head back over to the `Tracking mode`.
|
||||
|
||||
We will now adjust our rotation by moving the `Rotation` slider.
|
||||
|
||||
From this:
|
||||
{% include custom/images/image_2.html url="https://i.imgur.com/xXTB3sM.png" max-width="500" caption="It's crooked!" alt="" %}
|
||||
|
||||
To this:
|
||||
{% include custom/images/image_2.html url="https://i.imgur.com/blsrpCX.png" max-width="500" caption="Much better" alt="" %}
|
||||
|
||||
Now we will adjust our threshold.
|
||||
|
||||
Continuing with your headset on, move the slider all the way up.
|
||||
start slowly backing it off until mainly only your pupil is being visualized in the threshold viewer.
|
||||
|
||||
Example of a threshold being too low:
|
||||
{% include custom/images/image_2.html url="https://i.imgur.com/30fFadH.png" max-width="500" caption="" alt="" %}
|
||||
|
||||
Example of too high of a threshold:
|
||||
{% include custom/images/image_2.html url="https://i.imgur.com/ZjpKfCV.png" max-width="500" caption="" alt="" %}
|
||||
|
||||
Example of a good threshold:
|
||||
{% include custom/images/image_2.html url="https://i.imgur.com/KPUn8S1.png" max-width="500" caption="" alt="" %}
|
||||
|
||||
Repeat everything in this step for your left eye.
|
||||
|
||||
## Step 5: Calibrating your eyes.
|
||||
|
||||
Once your eye is trackable by the software we need to calibrate it.
|
||||
|
||||
Press the `Restart Calibration` button and look around.
|
||||
The important part is that you look to all extremes, all the way up, left, etc.
|
||||
Once you have done so, wait for the `Mode` to say `Tracking`
|
||||
|
||||
The next step is to center your eye.
|
||||
|
||||
Look straight forward and press the `Recenter Eye` button.
|
||||
|
||||
Your eye is now fully calibrated.
|
||||
|
||||
Repeat for your other eye.
|
||||
{% include custom/alerts/Note.html content=" To best center both eyes, look at one spot and hit the 'Recenter Eye' button for each eye without moving your eyes." %}
|
||||
|
||||
|
||||
## See anything outdated on this guide? Let me know! `Prohurtz#0001`
|
||||
# How to install, setup, and build from source the EyeTrackApp.
|
||||
Loading…
Reference in New Issue
Block a user