Difference between revisions of "Eyesis4Pi"

From ElphelWiki
Jump to: navigation, search
(Camera Software)
(Status)
 
(46 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 
== [[Image:hp_banner_eyesis.png]]<br> ==
 
== [[Image:hp_banner_eyesis.png]]<br> ==
 +
 +
==Status==
 +
<font style="font-size:1em;color:black">Production</font>
 +
 +
The newer version [[Eyesis4Pi_393|<font style='font-size:1.5em;color:red'><b>EYESIS4PI-393</b></font>]] is <font style='font-size:1em;color:red'><b>available</b></font>. Jump to [[Eyesis4Pi_393|Eyesis4Pi-393 article]].
 +
 +
Features:
 +
* new [[10393]] system boards
 +
** faster recording
 +
** more powerful
 +
* more compact - the pole is 2 times shorter
 +
Compare 3D models:
 +
{|
 +
|
 +
{| border="0" cellpadding="3" style="border:1px solid lightgray;border-collapse:collapse;"
 +
|-
 +
| <span class="plainlinks" title="View model in the Web X3D Viewer">[http://community.elphel.com/x3d/index.html?nobuttons&animate&model=/x3d/x3d_model_files/x3d/EYESIS4PI-26-393-ASSY.x3d http://community.elphel.com/pictures/eyesis4pi/EYESIS4PI-26-393_resized_2.jpeg]</span>
 +
|-
 +
| <font style='color:red'><b>NEW</b></font> [http://community.elphel.com/x3d/index.html?nobuttons&animate&model=/x3d/x3d_model_files/x3d/EYESIS4PI-26-393-ASSY.x3d Eyesis4PI-26-393 3D]
 +
|}
 +
|
 +
{| border="0" cellpadding="3" style="border:1px solid lightgray;border-collapse:collapse;"
 +
| <span class="plainlinks" title="View model in the Web X3D Viewer">[http://community.elphel.com/x3d/index.html?nobuttons&animate&model=/x3d/x3d_model_files/x3d/EYESIS4PI-26-ASSY.x3d http://community.elphel.com/pictures/eyesis4pi/EYESIS4PI-26_resized_2.jpeg]</span>
 +
|-
 +
| [http://community.elphel.com/x3d/index.html?nobuttons&animate&model=/x3d/x3d_model_files/x3d/EYESIS4PI-26-ASSY.x3d Eyesis4PI-26 3D]
 +
|}
 +
|}
  
 
== Overview
  ==
 
== Overview
  ==
  
Elphel Eyesis4Pi is high resolution full sphere stereophotogrammetric camera. <!--360*180 panoramic camera... or less<sup>***</sup>view angle.<sup>*</sup> The camera is also designed to be a measurement tool for [http://en.wikipedia.org/wiki/Photogrammetry photogrammetry] and to allow future [http://en.wikipedia.org/wiki/3D_reconstruction_from_multiple_images 3D reconstruction] of the scenes. --> Camera is [http://blogs.elphel.com/2010/11/zoom-in-now-enhance/ calibrated] to compensate for optical aberrations allowing to preserve full sensor resolution over the camera FOV. [http://blog.elphel.com/2011/10/subpixel-registration-and-distrortion-measurement/ Distortion calibration] is performed for precise pixel-mapping to automatically stitch images into panoramas, and also for [http://en.wikipedia.org/wiki/Photogrammetry photogrammetry]and [http://en.wikipedia.org/wiki/3D_reconstruction_from_multiple_images 3D reconstruction]. <!--due to precise optical calibration of sensor+lens modules and pixel-mapping. Eyesis4Pi can be used for panorama capturing and allow to get high quality final images of the panoramas which no other cameras available on the market can produce. -->&nbsp;
+
Elphel Eyesis4Pi is high resolution full sphere panoramic and stereophotogrammetric camera. <!--360*180 panoramic camera... or less<sup>***</sup>view angle.<sup>*</sup> The camera is designed to be a measurement tool for [http://en.wikipedia.org/wiki/Photogrammetry photogrammetry] and to allow future [http://en.wikipedia.org/wiki/3D_reconstruction_from_multiple_images 3D reconstruction] of the scenes. --> Camera is [http://blogs.elphel.com/2010/11/zoom-in-now-enhance/ calibrated] to compensate for optical aberrations allowing to preserve full sensor resolution over the camera FOV. [http://blog.elphel.com/2011/10/subpixel-registration-and-distrortion-measurement/ Distortion calibration] is performed for precise pixel-mapping to automatically stitch images into panoramas, and also for [http://en.wikipedia.org/wiki/Photogrammetry photogrammetry]and [http://en.wikipedia.org/wiki/3D_reconstruction_from_multiple_images 3D reconstruction]. <!--due to precise optical calibration of sensor+lens modules and pixel-mapping. Eyesis4Pi can be used for panorama capturing and allow to get high quality final images of the panoramas which no other cameras available on the market can produce. -->&nbsp;
  
 
There are 24 x 5MPix sensors in the camera head, resulting in 120 MPix image acquisition. Panorama image resolution after stitching is 64 MPix.
 
There are 24 x 5MPix sensors in the camera head, resulting in 120 MPix image acquisition. Panorama image resolution after stitching is 64 MPix.
High-precision Inertial Measurement Unit IMU (ADIS 16375, 2400 samples per second) is integrated with the camera, as well as 5Hz GPS () to provide precise position and orientation of the camera. Images, synchronized with IMU and GPS data, are recorded to internal Solid State Drives (SSD) or to an external computer over the network.
+
High-precision Inertial Measurement Unit IMU (ADIS 16375, 2400 samples per second) is integrated with the camera, as well as 5Hz GPS (Locosys LS20031) to provide precise position and orientation of the camera. Images, synchronized with IMU and GPS data, are recorded to internal Solid State Drives (SSD) or to an external computer over the network.
 
Eyesis4Pi camera system includes Eyesis computer for image downloading and post-processing with pre-installed SDK and Free and Open Source Software for camera calibration, image acquisition and panorama stitching.
 
Eyesis4Pi camera system includes Eyesis computer for image downloading and post-processing with pre-installed SDK and Free and Open Source Software for camera calibration, image acquisition and panorama stitching.
  
Line 14: Line 41:
 
== Main Features ==
 
== Main Features ==
  
* 64 MPix total resolution after stitching
+
* 4*π (360x180) coverage
* 2 FPS - recommended frame rate  
+
* 64 MPix panoramic image resolution after stitching
 +
* 0.05 Pix stitching precision
 +
* Calibrated fixed lens to compensate for the lenses distortions
 +
**10" (0.1 pix) in the center 80% x 80% area
 +
**30" (0.3 pix) maximal error over the full FoV
 +
**<0.03um/° thermal expansion
 +
* 5 FPS - maximum frame rate  
 
* Integrated high-precision IMU and GPS
 
* Integrated high-precision IMU and GPS
 
* Recording to internal SSDs
 
* Recording to internal SSDs
Line 24: Line 57:
  
 
*Eyesis4Pi
 
*Eyesis4Pi
24 x 5MPix sensors in the camera head plus 2*5MPix sensors positioned in the camera pole. This camera is better suitable for photogrammetry and 3D reconstruction.
+
24 x 5MPix sensors in the camera head plus 2 x 5MPix sensors positioned in the camera pole. This camera is better suitable for photogrammetry and 3D reconstruction.
  
 
*Eyesis4Pi-16
 
*Eyesis4Pi-16
Line 38: Line 71:
 
*the highest resolution of the source images: 5Mpx*24 = 120 MPx before stitching<br>
 
*the highest resolution of the source images: 5Mpx*24 = 120 MPx before stitching<br>
 
*Good autoexposure management, including light and shadows control
 
*Good autoexposure management, including light and shadows control
 
 
  
 
The post processing method base on precice camera hardware calibration
 
The post processing method base on precice camera hardware calibration
Line 46: Line 77:
 
*Pixel-mapping
 
*Pixel-mapping
 
*...
 
*...
 
 
<br>
 
<br>
  
 
But, please note, <br>
 
But, please note, <br>
  
*it doesn't allow to get final image on the fly. To get final 64Mpx panorama takes ~30m of post processing which includes abberation cоrrection (90% of the time) and pixel mapping (about 1min).<br>
+
*it doesn't allow to get final image on the fly. To get final 64Mpx panorama takes ~30m of post processing which includes aberration cоrrection (90% of the time) and pixel mapping (about 1min).<br>
 
*it doesn't allow to get streem video. The highest recording speed to get high quality panoramas is 2.5 FPS. Maximum speed is 5&nbsp;FPS.<br>  
 
*it doesn't allow to get streem video. The highest recording speed to get high quality panoramas is 2.5 FPS. Maximum speed is 5&nbsp;FPS.<br>  
 
*
 
*
Line 101: Line 131:
  
 
== Camera Parameters ==  
 
== Camera Parameters ==  
 +
{|
 +
|- valign="top"
 +
|[[File:Eyesis4pi3d-dimensions-web.jpg | thumb | 80px | Dimensions (mm) ]]
 +
|[[File:Eyesis4pi3d-24-illustration.jpg | thumb |360px | Head Contents Schematic ]]
 +
|[[File:Eyesis4pi-internals-overview.jpg | thumb | 130px | Pole Contents Schematic ]]
 +
|[[File:Eyesis4pi assembly drawing scaled.jpeg|430px|thumb|Assembly Drawing, Download [http://community.elphel.com/pictures/eyesis4pi/eyesis4pi_assembly_drawing.jpeg JPEG-12.2MB],[http://community.elphel.com/pictures/eyesis4pi/eyesis4pi_assembly_drawing.pdf PDF-662MB]|link=http://community.elphel.com/pictures/eyesis4pi/eyesis4pi_assembly_drawing.jpeg]]
 +
|[[File:Eyesis4pi-fov.jpg | thumb | 200px | FOV of sub-cameras in Eyesis4Pi, color shows time of acquisition (from red to blue):1-8 horizontal sensors; 1t-8t top sensors;1b-8b bottom sensors]]
 +
 +
|}
  
 
'''24 High Resolution Sensor Front Ends'''
 
'''24 High Resolution Sensor Front Ends'''
 
*5 MPix  sensor (Aptina MT9P006)
 
*5 MPix  sensor (Aptina MT9P006)
*Lenses ()
+
*Lens (BL-04518MP125-IRCLD)
are adjusted to reduce aberration. Compact Optical Layout achieves lesser parallax.
+
are centered and adjusted to reduce aberration. Compact Optical Layout achieves lesser parallax.
  
 
'''Data Storage:'''
 
'''Data Storage:'''
Line 112: Line 151:
  
 
'''Position and Orientation Measurement:'''
 
'''Position and Orientation Measurement:'''
*Inertial Measurement Unit (IMU) - ADIS 16375: 2560 recorded measurements per second
+
*Inertial Measurement Unit, IMU - (ADIS 16375): 2560 recorded measurements per second
 
*GPS receiver (Locosys LS20031): 5-10 Hz update rate
 
*GPS receiver (Locosys LS20031): 5-10 Hz update rate
 
*Odometer / Pedometer Input Interface
 
*Odometer / Pedometer Input Interface
Line 121: Line 160:
 
*Weight 10 Kg
 
*Weight 10 Kg
 
*Size 230 x 1350 mm
 
*Size 230 x 1350 mm
*Power Consumption 50W
+
*Power Consumption - 50W
 
*Weatherproof  
 
*Weatherproof  
  
 
'''Image Capturing Recording Speed:'''
 
'''Image Capturing Recording Speed:'''
*2.5 FPS (Frames per Second) recommended for final panorama image quality
+
*2.5 FPS (Frames per Second) recommended for best panorama image quality
 
*5 FPS maximum recording speed  
 
*5 FPS maximum recording speed  
  
 
'''Recording Time:'''
 
'''Recording Time:'''
*11 hours at 2.5 FPS, to 8*128 GB SSDs internal storage.  
+
*3 hours at 2.5 FPS, to 8*128 GB SSDs internal storage.  
  
 
'''Recording Image Format:'''
 
'''Recording Image Format:'''
*JP4 (RAW format), recommended for higher quality
+
*[[Eyesis4Pi_data_structure#Description|JP4 (RAW format)]], recommended for higher quality
 
*JPEG  
 
*JPEG  
  
 
'''Recording Controls:'''
 
'''Recording Controls:'''
*Web based Graphical User Interface (GUI).
+
* [[Eyesis4Pi_User_Guide_-_Recording#System_Tests|Web based Graphical User Interface (GUI)]].
  
 
== Camera Software ==  
 
== Camera Software ==  
Line 144: Line 183:
  
 
'''Host computer software:'''
 
'''Host computer software:'''
*Eyesis GUI for recording: Post-Processing Tools for creating panoramas:  
+
* [[Eyesis4Pi_workflow#WebGUI_.28recording.29|Eyesis GUI for recording]]
 +
*  [[Eyesis4Pi_workflow#Post-Processing|Post-Processing Tools for creating panoramas]]
 +
 
 +
All software is FOSS (Free and Open Source Software). It is experimental software that is used to test the camera performance, and it continues to be developed. All updates are available for download from git repository at SorceForge. Software may require integration with customer software depending upon camera hardware configuration and application.
 +
 
 +
== Comparison between models: Eyesis4π-16, Eyesis4π-24 and Eyesis4π ==
 +
 
 +
{| width="800" cellspacing="1" cellpadding="1" border="1"
 +
|-
 +
! scope="col" | Parameter
 +
! scope="col" | Eyesis4Pi-16
 +
! scope="col" | Eyesis4Pi-24 
 +
! scope="col" | Eyesis4Pi 
 +
! scope="col" | Notes
 +
|-
 +
| Combined field of view (steradians)
 +
| 3*π
 +
| 4*π
 +
| 4*π
 +
|
 +
|-
 +
| Number of image sensors
 +
| 16
 +
| 24 
 +
| 26
 +
|
 +
|-
 +
| Angular resolution +/-30° from the horizon
 +
| ≥4.2Mpix/steradian
 +
| ≥4.2Mpix/steradian
 +
| ≥4.2Mpix/steradian
 +
| 1
 +
|-
 +
| Angular resolution +30° to +90°(zenith)
 +
| ≥4.2Mpix/steradian
 +
| ≥4.2Mpix/steradian
 +
| ≥4.2Mpix/steradian
 +
| 1
 +
|-
 +
| Angular resolution -30° to -90°(nadir)
 +
| none
 +
| ≥4.2Mpix/steradian
 +
| ≥4.2Mpix/steradian
 +
| 1
 +
|-
 +
| Combined megapixels
 +
| 80.0
 +
| 120.0
 +
| 130.0
 +
|
 +
|-
 +
| Combined megapixels (w/o overlapping<br/>areas)
 +
| 48.0
 +
| 64.0
 +
| 64.0
 +
| 2
 +
|-
 +
| Combined megapixels (w/o overlapping<br/>areas, worst case resolution)
 +
| 39.6
 +
| 52.8
 +
| 52.8
 +
| 1, 2
 +
|-
 +
| Additional sensors<br/>for camera egomotion measurement
 +
| No
 +
| No
 +
| Yes
 +
| 3
 +
|-
 +
| Distance between entrance pupils<br/>of adjacent horizontal lenses
 +
| 46.5mm
 +
| 46.5mm
 +
| 46.5mm
 +
|
 +
|-
 +
| Distance between entrance pupils<br/>of horizontal and top/bottom lenses
 +
| 50mm
 +
| 50mm
 +
| 50mm
 +
| 3
 +
|-
 +
| Maximal frame rate
 +
| 5fps
 +
| 5fps
 +
| 5fps
 +
| 4
 +
|-
 +
| Maximal recording data rate
 +
| 128MB/s
 +
| 128MB/s
 +
| 144MB/s
 +
|
 +
|-
 +
| Maximal direct network data rate
 +
| 60MB/s
 +
| 80MB/s
 +
| 90MB/s
 +
|
 +
|-
 +
| GPS receiver
 +
| Locosys LS20031
 +
| Locosys LS20031
 +
| Locosys LS20031
 +
|
 +
|-
 +
| GPS pulse-per-second input
 +
| yes
 +
| yes
 +
| yes
 +
|
 +
|-
 +
| IMU
 +
| ADIS163xx
 +
| ADIS163xx
 +
| ADIS163xx
 +
|
 +
|-
 +
| Data unload
 +
| eSATAx2 
 +
| eSATAx2
 +
| eSATAx2
 +
|
 +
|-
 +
| Storage devices type
 +
| 1.8"SSD
 +
| 1.8″SSD
 +
| 1.8″SSD
 +
|
 +
|-
 +
| Number of storage devices
 +
| 8
 +
| 8
 +
| 9 
 +
|
 +
|}
 +
Notes:  
  
All software is FOSS (Free and Open Source Software). It is experimental software that used to test the camera performance, and it continues to be developed. All updates are available for download from git repository at SorceForge. Software may require integration with customer software depending upon camera hardware configuration and application.  
+
#Angular resolution per pixel differs in the sub-camera FOV, minimal resolution is used.<br/>
 +
#Megapixels of 2 additional lenses are not included in total panoramic image size.<br/>
 +
#Additional pair of sub-cameras mounted one meter below the main 24 sensors. These camera images may be used to measure distances to some objects (not the full sphere), and then this data can be used to improve precision of the IMU-based measurements of the camera egomotion. <br/>
 +
#Frame rate may be limited by the recording (or network if the SSD are not used) datarate for high compression quality (&gt;0.3 bytes/pixel), required for the aberration correction.<br/><br/>
  
 
== Camera Operation Workflow ==
 
== Camera Operation Workflow ==
(table with minuts) (example: 100 panoramas = 50 hours ):
 
  
Starting the camera: Turn on PoE Switch  
+
Step by step [http://wiki.elphel.com/index.php?title=Eyesis4Pi_workflow workflow] starting from setting the camera controls during recording and footage acquisition to post-processing of the recorded data and final panorama output.
 +
 
 +
<!-- (table with minuts) (example: 100 panoramas = 50 hours ):
 +
 
 +
Starting the camera: Turn on the Switch  
  
 
Run system tests: Setup parameters for recording: define data storage paths; select shooting settings: FPS, whiteballance, autoexposure parameters, mode Start Recording Stop Recording  
 
Run system tests: Setup parameters for recording: define data storage paths; select shooting settings: FPS, whiteballance, autoexposure parameters, mode Start Recording Stop Recording  
Line 165: Line 345:
 
Image Enhancement (ImageJ): Applying pixel mapping information Aberration correction Distortion correction Vignetting correction Color correction Denoising Sharpening  
 
Image Enhancement (ImageJ): Applying pixel mapping information Aberration correction Distortion correction Vignetting correction Color correction Denoising Sharpening  
  
<br> Creating panoramas: Stitching enhanced images into panorama; Splitting into for WebGL Viewer/Editor FAQs:  
+
<br> Creating panoramas: Stitching enhanced images into panorama; Splitting into for WebGL Viewer/Editor FAQs: -->
  
Eyesis4Pi System Sales Kit: Eyesis4Pi camera; Computer* with Post-processing tools and SDK: Small form factor Shuttle PC; Intel Core i7-950 Quad-Core Processor; 16 GB DDR3 RAM; GeForce GTX 465 (Fermi) 1GB; 2 TB HDD; Ethernet switch ( ) Shipping and storying case*: 52”x15”x18” ( heavy-duty plastic case for safe shipping) ( photo)
+
== Eyesis4Pi System Sales Kit ==
  
*configuration is subject to change
+
*Eyesis4Pi camera
 +
*Computer* with Post-processing tools and SDK
 +
Small form factor Shuttle PC;
 +
Intel Core i7-950 Quad-Core Processor;
 +
16 GB DDR3 RAM;
 +
GeForce GTX 465 (Fermi) 1GB;
 +
2 TB HDD;
 +
*Ethernet switch ( )
 +
*Shipping and storying case*: 52”x15”x18” ( heavy-duty plastic case for safe shipping) ( photo)
  
List Prices:
+
<sup>* Configuration is subject to change</sup><br>
  
Eyesis4Pi 95,000 USD; Eyesis4Pi-24 75,000 USD; Eyesis4Pi-16 60,000 USD;
+
== List Prices ==
  
GPL and Volume discounts are available.
+
*Eyesis4Pi '''95,000 USD'''
 +
*Eyesis4Pi-24 '''75,000 USD'''
 +
*Eyesis4Pi-16 '''60,000 USD'''
  
<br> How to buy:
+
GPL and Volume discounts are available.
 +
 
 +
== How to buy ==
  
 
We are directly accepting orders and ship worldwide. Please contact Elphel for Lead Time and Quotes:  
 
We are directly accepting orders and ship worldwide. Please contact Elphel for Lead Time and Quotes:  
  
<br>
+
*Email (Sales Inquiry): sales@elphel.com
 +
*Phone: (801) 783-5555 x 107
 +
*Toll-free: (888) 3 ELPHEL
 +
*Fax: (801) 812-8267
 +
 
 +
 
 +
== FAQs ==
 +
 
 +
* What software do I need on my laptop/computer to control Eyesis?
 +
 
 +
Eyesis GUI requires a locally running webserver (apache2 + PHP5) and the [[Eyesis4Pi_User_Guide | Eyesis4Pi User Guide]] software.
 +
 
 +
* How do I connect my laptop/computer to Eyesis and how do I control image recording?
 +
 
 +
The Eyesis4Pi hosts a Gigabit Ethernet switch so all you need is one Ethernet cable from the camera pole hose to your laptop/computer.
 +
 
 +
The Eyesis GUI is completely browser based so after you connected to the network you just start a browser type in the correct URL and you are ready to go.
 +
 
 +
See [[Eyesis4Pi_User_Guide | Eyesis4Pi User Guide]]
 +
 
 +
* How do I unload the data from Eyesis4Pi?
 +
 
 +
The camera pole has 2 eSATA ports in a weatherproof sealed connector. With this connector you can connect to the SSDs inside the camera pole like to any external hard-drive with any laptop/computer.
 +
 
 +
* Why are there 9 SSDs and not just a single bigger one?
 +
 
 +
There are 26 sensor-front-ends. There are 9 system boards each connected to 3 sensor-front-ends and a one SSD. The shots of a single panorama are split up on 9 SSDs. 3 images to SSD1, 3 images to SSD2, 3 images to SSD3... and the last 2 - to SSD9
 +
*Can I also use Eyesis4Pi with HDDs instead of SSDs?
 +
 
 +
We initially tested the system with HDDs but due to strong vibrations when using Eyesis mounted to a car roof we experience massive write-rate drops with HDDs. After we switched to SSDs all these problems were gone. If your Eyesis application does not involve bumby roads or vibrations HDDs should work just fine though.
 +
 
 +
* Does the camera need regular calibration?
 +
 
 +
The camera needs to be calibrated once when we assemble it and each camera has it's unique set of calibration files, needed for post-processing of the images.
 +
 
 +
* Is the camera easy to work with or do we need some special training?
 +
 
 +
We would recommend some training (either visit us at Elphel for 2-3 days, or have our engineer visit your company). Although we offer technical support on public mailing list and we can help you to get started as well as answer questions about camera operation and post-processing.
 +
 
 +
* The product named as stereophotogrammetric camera however we couldn't find any information about stereo feature. We appreciate if you can give us further information about availability of this
 +
feature.
 +
 
 +
"stereophotogrammetric" means that camera uses multiple images acquired from different locations in 3d space to measure object geometrical properties. In a single shot (image set) the camera provides accurate angular measurement of the acquired images, or to be precise - maps pixels in the images to particular lines in space in the camera coordinate system, because each of the camera lenses has different coordinates and just angular coordinates are not sufficient for mapping. The angular precision of the measurements is better than 1 angular minute in each direction.
 +
 
 +
Most useful way to do a 3d reconstruction is to use at least 2 image sets (each covering full sphere) acquired from different locations, but that requires precise knowledge of the camera positions and orientations in these points (camera egomotion). Eyesis camera hardware is designed to acquire the following data to provide this information:
 +
- high resolution ("near tactical grade" ADIS16375- "tactical grade" ADIS16485 also available) inertial measurement unit that acquires and logs data at 2.5 thousand samples per second.
 +
- Additional pair of sub-cameras mounted one meter below the main 24 sensors. These camera images may be used to measure distances to some objects (not the full sphere), and then this data can be used to improve precision of the IMU-based measurements of the camera egomotion.
  
Email (Sales Inquiry): sales@elphel.com Phone: (801) 783-5555 x 107 Toll-free: (888) 3 ELPHEL Fax: (801) 812-8267
+
* With the open source software provided is it possible to do measurement from the images gathered by the camera?
  
<br> Photogrammetry and 3D reconstruction (links to blog) Reference List and Terms List (links to terms, like WebGL, IMU, SDK etc.)
+
All the software we develop/use is immediately available online. The code itself is hosted at Sourceforge.net, documentation - on our wiki. The software that we currently developed is intended to provide accurate mapping of the pixels to the lines in space. Among others it includes lens distortion calibration and correction and measurement of each camera sub-module location and orientation. This software DOES NOT yet include any measurements of the acquired objects - currently this has to be done with one of the existent software packages.
  
<br>
+
== More Information  ==
  
<br>
+
'''Wiki:'''
 +
* [[Eyesis4Pi_workflow|Workflow]]
 +
* [[Eyesis4Pi_User_Guide|User Guide - Recording]]
 +
* [[Eyesis4Pi_Footage_Procedures_page|User Guide - Post-Processing: Footage Procedures]]
 +
* [[Eyesis4pi_Post-Processing|User Guide - Post-processing: ImageJ]]
 +
* [[Eyesis4Pi_data_structure|Data Structure Description]]
 +
* [[Eyesis4Pi_Calibration|Calibration Process]]
  
Post-Processing Tools for creating panoramas: Image Extraction and Indexing: splitmov.php plugin for ImageJ or movie2dng Technical Specifications Table
+
'''Elphel Development Blog:'''
 +
*[http://blog.elphel.com/2011/02/eyesis-4pi/ Current state of the Eyesis project Introdcution of Eyesis4Pi]
 +
*[http://blogs.elphel.com/2010/11/zoom-in-now-enhance/ “Zoom in. Now… enhance.” – a practical implementation of the aberration measurement and correction in a digital camera]
 +
*[http://blogs.elphel.com/2010/12/zoom-in-now-enhance-results/ “Zoom in. Now… enhance.” Results]
 +
*[http://blogs.elphel.com/2010/06/elphel-eyesis-camera-optics-and-lens-focus-adjustment/ Elphel Eyesis camera optics and lens focus adjustment]
 +
*[http://blogs.elphel.com/2010/07/elphel-eyesis-assembled/ Elphel-Eyesis, assembled]
 +
*[http://blogs.elphel.com/2010/06/elphel-eyesis-progress/ Elphel-Eyesis Progress]
 +
*[http://blogs.elphel.com/2010/03/first-elphel-eyesis-prototype-assembled/ First Elphel Eyesis Prototype assembled]
  
<br>
 
  
<br>
 
  
<br>  
+
<!-- <br> Photogrammetry and 3D reconstruction (links to blog) Reference List and Terms List (links to terms, like WebGL, IMU, SDK etc.)
  
 
<br>  
 
<br>  
Line 203: Line 452:
 
<br>  
 
<br>  
  
<br>
+
Post-Processing Tools for creating panoramas: Image Extraction and Indexing: splitmov.php – plugin for ImageJ or movie2dng Technical Specifications Table -->

Latest revision as of 13:45, 22 December 2016

Hp banner eyesis.png

Status

Production

The newer version EYESIS4PI-393 is available. Jump to Eyesis4Pi-393 article.

Features:

  • new 10393 system boards
    • faster recording
    • more powerful
  • more compact - the pole is 2 times shorter

Compare 3D models:

http://community.elphel.com/pictures/eyesis4pi/EYESIS4PI-26-393_resized_2.jpeg
NEW Eyesis4PI-26-393 3D
http://community.elphel.com/pictures/eyesis4pi/EYESIS4PI-26_resized_2.jpeg
Eyesis4PI-26 3D

Overview


Elphel Eyesis4Pi is high resolution full sphere panoramic and stereophotogrammetric camera. Camera is calibrated to compensate for optical aberrations allowing to preserve full sensor resolution over the camera FOV. Distortion calibration is performed for precise pixel-mapping to automatically stitch images into panoramas, and also for photogrammetryand 3D reconstruction.  

There are 24 x 5MPix sensors in the camera head, resulting in 120 MPix image acquisition. Panorama image resolution after stitching is 64 MPix. High-precision Inertial Measurement Unit IMU (ADIS 16375, 2400 samples per second) is integrated with the camera, as well as 5Hz GPS (Locosys LS20031) to provide precise position and orientation of the camera. Images, synchronized with IMU and GPS data, are recorded to internal Solid State Drives (SSD) or to an external computer over the network. Eyesis4Pi camera system includes Eyesis computer for image downloading and post-processing with pre-installed SDK and Free and Open Source Software for camera calibration, image acquisition and panorama stitching.

Eyesis4Pi can be mounted on a car for outdoor panoramic applications or carried by a person, which lets successfully create panoramas of small and narrow spaces.**
Automated panoramic imagery and 3-dimensional panoramas are 2 main applications of Eyesise4Pi camera.

Main Features

  • 4*π (360x180) coverage
  • 64 MPix panoramic image resolution after stitching
  • 0.05 Pix stitching precision
  • Calibrated fixed lens to compensate for the lenses distortions
    • 10" (0.1 pix) in the center 80% x 80% area
    • 30" (0.3 pix) maximal error over the full FoV
    • <0.03um/° thermal expansion
  • 5 FPS - maximum frame rate
  • Integrated high-precision IMU and GPS
  • Recording to internal SSDs
  • Web Based GUI
  • Free Software and Open Hardware

Camera models

  • Eyesis4Pi

24 x 5MPix sensors in the camera head plus 2 x 5MPix sensors positioned in the camera pole. This camera is better suitable for photogrammetry and 3D reconstruction.

  • Eyesis4Pi-16

360*120’ panoramic camera with 16 image sensors. Does not cover nadir.

  • Eyesis4Pi-24

360*180’ panoramic camera with 24 image sensors No sensors in the camera pole;

Other configurations are possible upon request.


** Car and backpack mounts are not included


Image Samples

Panorama Image Samples are available.

There are several ways to view panoramas made Eyesis4Pi:

  • WebGL viewer: spherical view, which can be rotated around you as an observer. This viewer requires a browser supporting WebGL like Firefox4 or Chrome
  • Equarectangular projection of spherical panorama (link to wikipedia) allows to see Jpeg image made for WebGL viewer.
  • Screenshot images of panorama in WebGL viewer.



Camera Parameters

Dimensions (mm)
Head Contents Schematic
Pole Contents Schematic
Assembly Drawing, Download JPEG-12.2MB,PDF-662MB
FOV of sub-cameras in Eyesis4Pi, color shows time of acquisition (from red to blue):1-8 horizontal sensors; 1t-8t top sensors;1b-8b bottom sensors

24 High Resolution Sensor Front Ends

  • 5 MPix sensor (Aptina MT9P006)
  • Lens (BL-04518MP125-IRCLD)

are centered and adjusted to reduce aberration. Compact Optical Layout achieves lesser parallax.

Data Storage:

  • internal: 8*128 GB SSDs (Solid State Drives)
  • external: over the Network

Position and Orientation Measurement:

  • Inertial Measurement Unit, IMU - (ADIS 16375): 2560 recorded measurements per second
  • GPS receiver (Locosys LS20031): 5-10 Hz update rate
  • Odometer / Pedometer Input Interface
  • Images are synchronized with IMU and GPS with 1Mu/s resolution
  • GPS powered geo-tagging

Physical Characteristics:

  • Weight 10 Kg
  • Size 230 x 1350 mm
  • Power Consumption - 50W
  • Weatherproof

Image Capturing Recording Speed:

  • 2.5 FPS (Frames per Second) recommended for best panorama image quality
  • 5 FPS maximum recording speed

Recording Time:

  • 3 hours at 2.5 FPS, to 8*128 GB SSDs internal storage.

Recording Image Format:

Recording Controls:

Camera Software

Camera Internal Software (Firmware):

  • SDK for internal camera software customization: shared with 10353E system board SDK;

Host computer software:

All software is FOSS (Free and Open Source Software). It is experimental software that is used to test the camera performance, and it continues to be developed. All updates are available for download from git repository at SorceForge. Software may require integration with customer software depending upon camera hardware configuration and application.

Comparison between models: Eyesis4π-16, Eyesis4π-24 and Eyesis4π

Parameter Eyesis4Pi-16 Eyesis4Pi-24 Eyesis4Pi Notes
Combined field of view (steradians) 3*π 4*π 4*π
Number of image sensors 16 24 26
Angular resolution +/-30° from the horizon ≥4.2Mpix/steradian ≥4.2Mpix/steradian ≥4.2Mpix/steradian 1
Angular resolution +30° to +90°(zenith) ≥4.2Mpix/steradian ≥4.2Mpix/steradian ≥4.2Mpix/steradian 1
Angular resolution -30° to -90°(nadir) none ≥4.2Mpix/steradian ≥4.2Mpix/steradian 1
Combined megapixels 80.0 120.0 130.0
Combined megapixels (w/o overlapping
areas)
48.0 64.0 64.0 2
Combined megapixels (w/o overlapping
areas, worst case resolution)
39.6 52.8 52.8 1, 2
Additional sensors
for camera egomotion measurement
No No Yes 3
Distance between entrance pupils
of adjacent horizontal lenses
46.5mm 46.5mm 46.5mm
Distance between entrance pupils
of horizontal and top/bottom lenses
50mm 50mm 50mm 3
Maximal frame rate 5fps 5fps 5fps 4
Maximal recording data rate 128MB/s 128MB/s 144MB/s
Maximal direct network data rate 60MB/s 80MB/s 90MB/s
GPS receiver Locosys LS20031 Locosys LS20031 Locosys LS20031
GPS pulse-per-second input yes yes yes
IMU ADIS163xx ADIS163xx ADIS163xx
Data unload eSATAx2 eSATAx2 eSATAx2
Storage devices type 1.8"SSD 1.8″SSD 1.8″SSD
Number of storage devices 8 8 9

Notes:

  1. Angular resolution per pixel differs in the sub-camera FOV, minimal resolution is used.
  2. Megapixels of 2 additional lenses are not included in total panoramic image size.
  3. Additional pair of sub-cameras mounted one meter below the main 24 sensors. These camera images may be used to measure distances to some objects (not the full sphere), and then this data can be used to improve precision of the IMU-based measurements of the camera egomotion.
  4. Frame rate may be limited by the recording (or network if the SSD are not used) datarate for high compression quality (>0.3 bytes/pixel), required for the aberration correction.

Camera Operation Workflow

Step by step workflow starting from setting the camera controls during recording and footage acquisition to post-processing of the recorded data and final panorama output.


Eyesis4Pi System Sales Kit

  • Eyesis4Pi camera
  • Computer* with Post-processing tools and SDK

Small form factor Shuttle PC; Intel Core i7-950 Quad-Core Processor; 16 GB DDR3 RAM; GeForce GTX 465 (Fermi) 1GB; 2 TB HDD;

  • Ethernet switch ( )
  • Shipping and storying case*: 52”x15”x18” ( heavy-duty plastic case for safe shipping) ( photo)

* Configuration is subject to change

List Prices

  • Eyesis4Pi 95,000 USD
  • Eyesis4Pi-24 75,000 USD
  • Eyesis4Pi-16 60,000 USD

GPL and Volume discounts are available.

How to buy

We are directly accepting orders and ship worldwide. Please contact Elphel for Lead Time and Quotes:

  • Email (Sales Inquiry): sales@elphel.com
  • Phone: (801) 783-5555 x 107
  • Toll-free: (888) 3 ELPHEL
  • Fax: (801) 812-8267


FAQs

  • What software do I need on my laptop/computer to control Eyesis?

Eyesis GUI requires a locally running webserver (apache2 + PHP5) and the Eyesis4Pi User Guide software.

  • How do I connect my laptop/computer to Eyesis and how do I control image recording?

The Eyesis4Pi hosts a Gigabit Ethernet switch so all you need is one Ethernet cable from the camera pole hose to your laptop/computer.

The Eyesis GUI is completely browser based so after you connected to the network you just start a browser type in the correct URL and you are ready to go.

See Eyesis4Pi User Guide

  • How do I unload the data from Eyesis4Pi?

The camera pole has 2 eSATA ports in a weatherproof sealed connector. With this connector you can connect to the SSDs inside the camera pole like to any external hard-drive with any laptop/computer.

  • Why are there 9 SSDs and not just a single bigger one?

There are 26 sensor-front-ends. There are 9 system boards each connected to 3 sensor-front-ends and a one SSD. The shots of a single panorama are split up on 9 SSDs. 3 images to SSD1, 3 images to SSD2, 3 images to SSD3... and the last 2 - to SSD9

  • Can I also use Eyesis4Pi with HDDs instead of SSDs?

We initially tested the system with HDDs but due to strong vibrations when using Eyesis mounted to a car roof we experience massive write-rate drops with HDDs. After we switched to SSDs all these problems were gone. If your Eyesis application does not involve bumby roads or vibrations HDDs should work just fine though.

  • Does the camera need regular calibration?

The camera needs to be calibrated once when we assemble it and each camera has it's unique set of calibration files, needed for post-processing of the images.

  • Is the camera easy to work with or do we need some special training?

We would recommend some training (either visit us at Elphel for 2-3 days, or have our engineer visit your company). Although we offer technical support on public mailing list and we can help you to get started as well as answer questions about camera operation and post-processing.

  • The product named as stereophotogrammetric camera however we couldn't find any information about stereo feature. We appreciate if you can give us further information about availability of this

feature.

"stereophotogrammetric" means that camera uses multiple images acquired from different locations in 3d space to measure object geometrical properties. In a single shot (image set) the camera provides accurate angular measurement of the acquired images, or to be precise - maps pixels in the images to particular lines in space in the camera coordinate system, because each of the camera lenses has different coordinates and just angular coordinates are not sufficient for mapping. The angular precision of the measurements is better than 1 angular minute in each direction.

Most useful way to do a 3d reconstruction is to use at least 2 image sets (each covering full sphere) acquired from different locations, but that requires precise knowledge of the camera positions and orientations in these points (camera egomotion). Eyesis camera hardware is designed to acquire the following data to provide this information: - high resolution ("near tactical grade" ADIS16375- "tactical grade" ADIS16485 also available) inertial measurement unit that acquires and logs data at 2.5 thousand samples per second. - Additional pair of sub-cameras mounted one meter below the main 24 sensors. These camera images may be used to measure distances to some objects (not the full sphere), and then this data can be used to improve precision of the IMU-based measurements of the camera egomotion.

  • With the open source software provided is it possible to do measurement from the images gathered by the camera?

All the software we develop/use is immediately available online. The code itself is hosted at Sourceforge.net, documentation - on our wiki. The software that we currently developed is intended to provide accurate mapping of the pixels to the lines in space. Among others it includes lens distortion calibration and correction and measurement of each camera sub-module location and orientation. This software DOES NOT yet include any measurements of the acquired objects - currently this has to be done with one of the existent software packages.

More Information

Wiki:

Elphel Development Blog: