Difference between revisions of "Eyesis workflow"

From ElphelWiki
Jump to: navigation, search
m (Reverted edits by Oleg (talk) to last revision by Olga)
 
(27 intermediate revisions by 2 users not shown)
Line 2: Line 2:
 
The following page describes the Eyesis camera post-processing procedures.
 
The following page describes the Eyesis camera post-processing procedures.
  
==Camera Output==
+
==Eyesis Output==
 
[[Image:Eyesis_frames.jpg|thumb|500px|Fig.1 Eyesis frames]]
 
[[Image:Eyesis_frames.jpg|thumb|500px|Fig.1 Eyesis frames]]
* 3x 500GB HDDs, each containing *.mov files from 3x 3-sensor cameras (a single HDD is connected to a camera).
+
* 3x HDDs, each containing *.mov files from 3x 3-sensor modules (a single HDD is connected to an individual camera module).
* Each frame in a *.mov file is a combination of frames from 3 sensors glued vertically.
+
* Each frame in a *.mov file is a combination of frames from 3 sensors glued vertically - triplet.
* The cameras are numbered - 1,2,3. The sub images are [1.1, 1.2, 1.3], [2.1, 2.2, 2.3], [3.1, 3.2, 3.3]. 3.1 is the fisheye image.
+
* The modules are numbered - 1,2,3 - having individual ip address:
 +
192.168.0.221
 +
192.168.0.222
 +
192.168.0.223
 +
* The sub images are [1.1, 1.2, 1.3], [2.1, 2.2, 2.3], [3.1, 3.2, 3.3]. 3.1 is the fisheye image.
 
* The frames in *.movs are indexed.
 
* The frames in *.movs are indexed.
* Single frame format is JP4.
+
* A single image format is JP4 (a raw format with a higher quality and frame rate against *.jpeg).
 
* Corresponding frames have the same time stamps generated by the 1st camera.
 
* Corresponding frames have the same time stamps generated by the 1st camera.
 
* The 1st camera frames are geotagged.
 
* The 1st camera frames are geotagged.
  
 
==Post-Processing Setup==
 
==Post-Processing Setup==
* HDDs are connected to a processing PC with SATA cables
+
* HDDs are put into a processing PC and the data is copied.
  
 
==Workflow==
 
==Workflow==
====1. Building the Frames Index====
+
 
* As the frames' index is stored in each corresponding *.mov, it is read and used for building the index of all the frames on 3x drives.
+
==== Elpehl-Eyesis GUI (Graphical User Interface)====
====2. Processing Panorama====
+
 
* By index the 3 corresponding JP4 frames are copied from HDDs.
+
Elpehl-Eyesis GUI is installed on the laptop and used for controlling the Eyesis camera.
* JP4 -> DNG (or openEXR).
+
 
* Some Image Processing.
+
* [http://wiki.elphel.com/index.php?title=Eyesis_gui elphel-eyesis-gui] - camera GUI
* Each frame is cut on 3 separate subframes - 9 images is the resulting array before stitching.
+
 
* Then goes stitching (of JPGs? each individual Eyesis has its constant gluepoints?) and the output is a panorama image.
+
==== Elphel Eyesis SDK software (pre-installed), for post-processing:====
 +
 
 +
* [http://wiki.elphel.com/index.php?title=Movie2dng Movie2DNG] - extracting JP4 (JP4 is the Elphel raw image format) images from *.MOVs.
 +
* [http://rsbweb.nih.gov/ij/ ImageJ] (by 3rd party) - ImageJ with Elphel plugins (image quality enhancement, color balance) for processing JP4s to create TIFF/JPEG output;
 +
* [http://hugin.sourceforge.net/ Hugin tools] (by 3rd party), with Elphel PHP scripts for automatic work  is used for panorama stitching;
 +
* [http://www.imagemagick.org/script/index.php ImageMagick] #  (by 3rd party), also with a PHP scrip by Elphel is used for converting/modifying panorama JPEGs - scaling for WebGL panorama viewer;
 +
# other pre-installed PHP scripts:
 +
** exif2kml.php - extract the GPS data from images and put it all to a KML file of the route.
 +
** create_links_xml_file.php - read the KML file and create file with records-links of the route points. It is used in [http://eyesisbox.elphel.net/webgl-pano/geo_tests.html Elphel WebGL Viewer]
 +
 
 +
other:
 +
* [http://ufraw.sourceforge.net/ Ufraw] (by 3rd party) - to view/process DNG/TIFF
 +
* [http://www.cybercom.net/~dcoffin/dcraw/ Dcraw] (by 3rd party) - for converting JPEGs
 +
 
 +
==== Processing panorama possible steps====
 +
 
 +
* A stitching template *.pto should be created in [http://hugin.sourceforge.net/ Hugin] It is created once and reused later for every panorama. Elphel is providing a sample template with the camera (individual for each camera).
 +
 
 +
* Copy all the *.mov files to certain locations (folders must have the r/w rights enabled for everyone):
 +
Currently:
 +
hdd1: /data/disk/<footage_name>/
 +
hdd2: /data/disk-1/<footage_name>/
 +
hdd3: /data/disk-2/<footage_name>/
 +
 
 +
* '''<nowiki>http://127.0.0.1/scripts/split_mov.php?dir=<footage_name></nowiki>''' - (usage TBA) - it applies [http://wiki.elphel.com/index.php?title=Movie2dng Movie2DNG] to all the footage files. The output is JP4 files.
 +
* '''<nowiki>http://127.0.0.1/scripts/exif2kml.php?dir=<footage_name></nowiki>''' - it extracts the GPS data from images and puts it all to a KML file of the route. The output is a KML file.
 +
* Launch [http://rsbweb.nih.gov/ij/ ImageJ] and process the files. The output is JPEGs (optionally TIFFs). (This step can be skipped, but some other way of converting files to JPEGs is required); after that run movie2dng+dcraw, for example.
 +
* '''<nowiki>http://127.0.0.1/scripts/stitch.php?dir=<dir_name></nowiki>''' - stitch the images processed in ImageJ using [http://hugin.sourceforge.net/ Hugin tools].
 +
* '''<nowiki>http://127.0.0.1/scripts/convert_images_for_webgl.php?dir=<results_dir></nowiki>''' - rescale results using [http://www.imagemagick.org/script/index.php ImageMagick].

Latest revision as of 14:35, 26 March 2012

Preface

The following page describes the Eyesis camera post-processing procedures.

Eyesis Output

Fig.1 Eyesis frames
  • 3x HDDs, each containing *.mov files from 3x 3-sensor modules (a single HDD is connected to an individual camera module).
  • Each frame in a *.mov file is a combination of frames from 3 sensors glued vertically - triplet.
  • The modules are numbered - 1,2,3 - having individual ip address:
192.168.0.221 
192.168.0.222
192.168.0.223
  • The sub images are [1.1, 1.2, 1.3], [2.1, 2.2, 2.3], [3.1, 3.2, 3.3]. 3.1 is the fisheye image.
  • The frames in *.movs are indexed.
  • A single image format is JP4 (a raw format with a higher quality and frame rate against *.jpeg).
  • Corresponding frames have the same time stamps generated by the 1st camera.
  • The 1st camera frames are geotagged.

Post-Processing Setup

  • HDDs are put into a processing PC and the data is copied.

Workflow

Elpehl-Eyesis GUI (Graphical User Interface)

Elpehl-Eyesis GUI is installed on the laptop and used for controlling the Eyesis camera.

Elphel Eyesis SDK software (pre-installed), for post-processing:

  • Movie2DNG - extracting JP4 (JP4 is the Elphel raw image format) images from *.MOVs.
  • ImageJ (by 3rd party) - ImageJ with Elphel plugins (image quality enhancement, color balance) for processing JP4s to create TIFF/JPEG output;
  • Hugin tools (by 3rd party), with Elphel PHP scripts for automatic work is used for panorama stitching;
  • ImageMagick # (by 3rd party), also with a PHP scrip by Elphel is used for converting/modifying panorama JPEGs - scaling for WebGL panorama viewer;
  1. other pre-installed PHP scripts:
    • exif2kml.php - extract the GPS data from images and put it all to a KML file of the route.
    • create_links_xml_file.php - read the KML file and create file with records-links of the route points. It is used in Elphel WebGL Viewer

other:

  • Ufraw (by 3rd party) - to view/process DNG/TIFF
  • Dcraw (by 3rd party) - for converting JPEGs

Processing panorama possible steps

  • A stitching template *.pto should be created in Hugin It is created once and reused later for every panorama. Elphel is providing a sample template with the camera (individual for each camera).
  • Copy all the *.mov files to certain locations (folders must have the r/w rights enabled for everyone):
Currently:
hdd1: /data/disk/<footage_name>/
hdd2: /data/disk-1/<footage_name>/
hdd3: /data/disk-2/<footage_name>/
  • http://127.0.0.1/scripts/split_mov.php?dir=<footage_name> - (usage TBA) - it applies Movie2DNG to all the footage files. The output is JP4 files.
  • http://127.0.0.1/scripts/exif2kml.php?dir=<footage_name> - it extracts the GPS data from images and puts it all to a KML file of the route. The output is a KML file.
  • Launch ImageJ and process the files. The output is JPEGs (optionally TIFFs). (This step can be skipped, but some other way of converting files to JPEGs is required); after that run movie2dng+dcraw, for example.
  • http://127.0.0.1/scripts/stitch.php?dir=<dir_name> - stitch the images processed in ImageJ using Hugin tools.
  • http://127.0.0.1/scripts/convert_images_for_webgl.php?dir=<results_dir> - rescale results using ImageMagick.