Difference between revisions of "Eyesis4Pi data structure"

From ElphelWiki
Jump to: navigation, search
Line 95: Line 95:
 
* Put [http://eyesisbox.elphel.com/post-processing/ImageJ/plugins/tiff_tags.jar tiff_tags.jar] into '''ImageJ/plugins/'''.
 
* Put [http://eyesisbox.elphel.com/post-processing/ImageJ/plugins/tiff_tags.jar tiff_tags.jar] into '''ImageJ/plugins/'''.
 
* [http://hugin.sourceforge.net/ Hugin tools] - enblend.
 
* [http://hugin.sourceforge.net/ Hugin tools] - enblend.
* Download calibration kernels for the current Eyesis4Pi. Example kernels and sensor files can be found [http://community.elphel.com/files/eyesis4pi/imagej/ here]('''~35GB''').
+
* Download calibration kernels for the current Eyesis4Pi. Example kernels and sensor files can be found [http://eyesisbox.elphel.com/post-processing/calibration/ here]('''~78GB''', download everything).
* Download default.corr-xml from the same [http://community.elphel.com/files/eyesis4pi/imagej/ location].
+
* Download default-config.corr-xml from the same [http://eyesisbox.elphel.com/post-processing/calibration/ location].
 +
* Download footage samples from [http://eyesisbox.elphel.com/post-processing/post-processing/src/ here].
  
 
====Instructions(subject to changes soon)====
 
====Instructions(subject to changes soon)====
Line 104: Line 105:
 
|[[File:Eyesis_corrections_plugin.jpeg|thumb|800px|Eyesis corrections plugin interface]]
 
|[[File:Eyesis_corrections_plugin.jpeg|thumb|800px|Eyesis corrections plugin interface]]
 
|}
 
|}
* '''Restore''' button -> browse for default.corr-xml.
+
* '''Restore''' button -> browse for default_config.corr-xml.
* '''Configure correction''' button - make sure that the following paths are set correctly:
+
* '''Configure correction''' button - make sure that the following paths are set correctly (if not - mark the checkboxes - a dialog for each path will pop up):
 
<font size='2'>
 
<font size='2'>
 
  '''Source files directory'''                - directory with the footage images
 
  '''Source files directory'''                - directory with the footage images
  '''Sensor calibration directory'''          - [YOUR-PATH]/sensor_calibration_files
+
  '''Sensor calibration directory'''          - [YOUR-PATH]/calibration/sensors
  '''Aberration kernels (sharp) directory'''  - [YOUR-PATH]/kernels/sharp
+
  '''Aberration kernels (sharp) directory'''  - [YOUR-PATH]/calibration/aberration_kernels/sharp
  '''Aberration kernels (smooth) directory''' - [YOUR-PATH]/kernels/smooth
+
  '''Aberration kernels (smooth) directory''' - [YOUR-PATH]/calibration/aberration_kernels/smooth
  '''Equirectangular maps directory(may be empty)''' - [YOUR-PATH]/kernels/eqr (it should be created automatically if the w/r rights of [YOUR-PATH]/kernels allow)
+
  '''Equirectangular maps directory(may be empty)''' - [YOUR-PATH]/calibration/equirectangular_maps (it should be created automatically if the w/r rights of [YOUR-PATH]/calibration allow)
 
</font>
 
</font>
* '''Configure warping''' -> rebuild map files - this will create maps in [YOUR-PATH]/kernels/eqr. Will take ~5-10 minutes.
+
* '''Configure warping''' -> rebuild map files - this will create maps in [YOUR-PATH]/calibration/equirectangular_maps. Will take ~5-10 minutes.
 
* '''Select source files''' -> select all the footage files to be processed.
 
* '''Select source files''' -> select all the footage files to be processed.
 
* '''Process files''' to start the processing. Depending on the PC power can take ~30 minutes for a panorama of 19 images.
 
* '''Process files''' to start the processing. Depending on the PC power can take ~30 minutes for a panorama of 19 images.

Revision as of 17:26, 23 July 2012

Intro

Eyesis4Pi stores images and gps/imu logs independently.

Data Stored on Comments
Images Host PC or (9x) internal SSDs (if equipped)
IMU/GPS logs Internal Compact Flash cards (2x16GB)



IMU/GPS logs

Description

A sensor's log is a list of registered events from various sources:

  • Trigger for starting image exposure (fps)
  • IMU sentence received (2460 samples per second)
  • GPS sentence received (5 samples per second) - in NMEA or other configured format.

Logs are stored in a binary format to have smaller size. Also, there's a file size limit - when it's reached a new file with an auto-incremented index will be started.

Raw logs examples

All the raw *.log files are found here

Parsed log example

parsed_log_example.txt (41.3MB) at the same location

[localTimeStamp,usec]: IMU: [gyroX] [gyroY] [gyroZ] [angleX] [angleY] [angleZ] [accelX] [accelY] [accelZ] [veloX] [veloY] [veloZ] [temperature]

[localTimeStamp,usec]: GPS: $GPRMC,231112.8,A,4043.36963,N,11155.90617,W,000.00,089.0,250811,013.2,E

[localTimeStamp,usec]: SRC: [masterTimeStamp,usec]=>1314335482848366 [localTimeStamp,usec]=>1314335474855775

Tools for parsing logs

Download one of the raw logs.




Images

Samples

Footage samples

Description

The pictures from each image sensor are stored in 8 triplets (because 3 sensors are connected to a single system board for the 24-sensor equipped camera) in the RAW JP4 format. ImageJ plugin deals with the triplet structure and does all reorientation automatically.

JP4 file opened as JPEG - sample from the master camera.
Download original JP4
Open in an online EXIF reader
JP4 converted to JPEG - sample from the master camera
Each triplet is a vertical segment
Eyesis4Pi images set and their location on the result panorama


File names

Image filename is a timestamp of when it was taken plus the index of the camera (seconds_microseconds_index.jp4):

1334548426_780764_1.jp4
1334548426_780764_2.jp4
...
1334548426_780764_9.jp4


EXIF headers

The JP4 images from the 1st (master) camera have a standard EXIF header which contains all the image taking related information and is geotagged. So the GPS coordinates are present in both the GPS/IMU log and the EXIF header of the 1st camera images. Images from other cameras are not geotagged.



Post-Processing

Requirements

Instructions(subject to changes soon)

  • Launch ImageJ -> Plugins -> Compile & Run. Find and select EyesisCorrection.java.
Eyesis corrections plugin interface
  • Restore button -> browse for default_config.corr-xml.
  • Configure correction button - make sure that the following paths are set correctly (if not - mark the checkboxes - a dialog for each path will pop up):

Source files directory                - directory with the footage images
Sensor calibration directory          - [YOUR-PATH]/calibration/sensors
Aberration kernels (sharp) directory  - [YOUR-PATH]/calibration/aberration_kernels/sharp
Aberration kernels (smooth) directory - [YOUR-PATH]/calibration/aberration_kernels/smooth
Equirectangular maps directory(may be empty) - [YOUR-PATH]/calibration/equirectangular_maps (it should be created automatically if the w/r rights of [YOUR-PATH]/calibration allow)

  • Configure warping -> rebuild map files - this will create maps in [YOUR-PATH]/calibration/equirectangular_maps. Will take ~5-10 minutes.
  • Select source files -> select all the footage files to be processed.
  • Process files to start the processing. Depending on the PC power can take ~30 minutes for a panorama of 19 images.
  • After processing is done there is only the blending step - enblend can be used from the command line (cd to the directory with the results), example:

enblend -o pano-1334546768_780764_16bit.tiff 1334546768_780764-*_EQR.tiff
convert pano-1334546768_780764_16bit.tiff -level 0%,25%,1 pano-1334546768_780764_16bit-0-25-1.jpeg

Previewer

Note: This step is done independently from the processing and is not necessary if all the footage is to be post-processed. Just needs a KML file generated from the footage.

Here's an example of previewing the footage (works better in Firefox). If used on a local PC requires these tools to be installed.

Previewer snapshot. A 16-eyed camera with extra 3 added




Stitched panoramas Editor/Viewer

Stitched results WebGL Editor/Viewer snapshot


Links