Difference between revisions of "Eyesis4Pi Footage Procedures page"
From ElphelWiki
m (→Step 1) |
(→Links) |
||
(30 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
<br/><br/> | <br/><br/> | ||
==Procedures== | ==Procedures== | ||
+ | * This will work if dealing with few panoramas. For many the best option is to use scripts w/o ui. | ||
* Copying images before processing. | * Copying images before processing. | ||
* Extracting GPS coordinates from the images' EXIF headers. | * Extracting GPS coordinates from the images' EXIF headers. | ||
− | * Stitching the panorama sets processed in ImageJ | + | * Stitching the panorama sets processed in ImageJ into equirectangular projection format. |
* Formatting/resizing the results. | * Formatting/resizing the results. | ||
− | ==WebGUI | + | ==WebGUI screenshot== |
− | Note: ImageJ is not included into | + | '''Note:''' ''ImageJ is not included into the WebGUI at the moment because it's not yet modified for launching from a browser.'' |
{| | {| | ||
|[[File:Footage procedures.png|thumb|400px|Footage procedures WebGUI]] | |[[File:Footage procedures.png|thumb|400px|Footage procedures WebGUI]] | ||
Line 15: | Line 16: | ||
* Linux OS ([http://www.kubuntu.org/ Kubuntu] preferably). | * Linux OS ([http://www.kubuntu.org/ Kubuntu] preferably). | ||
* [http://www.apache.org/ Apache2] web server. | * [http://www.apache.org/ Apache2] web server. | ||
+ | * [http://php.net/ PHP] | ||
* [http://www.imagemagick.org/script/index.php ImageMagick] - ''convert''. | * [http://www.imagemagick.org/script/index.php ImageMagick] - ''convert''. | ||
− | |||
* [[movie2dng|Movie2dng]] | * [[movie2dng|Movie2dng]] | ||
− | |||
− | |||
* [http://hugin.sourceforge.net/ Hugin tools] - ''enblend''. | * [http://hugin.sourceforge.net/ Hugin tools] - ''enblend''. | ||
− | == | + | ==Download== |
− | Available for direct downloading from the [http://elphel.git.sourceforge.net/git/gitweb.cgi?p=elphel/footage_procedures;a=tree SourceForge.net] or from a terminal window provided GIT | + | Available for direct downloading from the [http://elphel.git.sourceforge.net/git/gitweb.cgi?p=elphel/footage_procedures;a=tree SourceForge.net] or from a terminal window provided the GIT is installed: |
<font size='2'> | <font size='2'> | ||
− | git clone git:// | + | git clone git://git.code.sf.net/p/elphel/footage_procedures |
</font> | </font> | ||
Line 31: | Line 30: | ||
* Download the source files. | * Download the source files. | ||
* Install the required software. | * Install the required software. | ||
− | * Create a link from the web server root path to the source folder. | + | * Create a link from the web server root path to the source folder. Terminal window example: |
+ | <font size="2"> | ||
+ | sudo ln -sf /<PATH_TO_FOOTAGE_PROCEDURES>/footage_procedures /<WEB_SERVER_ROOT_DIR>/footage_procedures | ||
+ | </font> | ||
* It is assumed that the footage series are located at: | * It is assumed that the footage series are located at: | ||
<font size='2'> | <font size='2'> | ||
Line 38: | Line 40: | ||
... | ... | ||
</font> | </font> | ||
− | ==Step 1== | + | |
+ | ==Working== | ||
+ | ===Step 1=== | ||
{| | {| | ||
|[[File:Fpstep1.jpeg|thumb|820px|Step 1]] | |[[File:Fpstep1.jpeg|thumb|820px|Step 1]] | ||
Line 45: | Line 49: | ||
* '''Processing folder'''-input | * '''Processing folder'''-input | ||
A folder at "/data/footage" with the acquired images in the indexed subfolders. | A folder at "/data/footage" with the acquired images in the indexed subfolders. | ||
+ | * '''Split All *.movs'''-button ('''If equipped with internal SSDs''') | ||
+ | Splits all '''*.mov''' files in '''/data/footage/FOOTAGE1/mov/N/''', where directory N contains *.movs from the N-th camera starting from 1 -> | ||
+ | N=1..9 for Eyesis4Pi-26 model. The results are placed into '''/data/footage/FOOTAGE1/0''' as if the footage was recorded onto PC. | ||
* '''Filter Out Images with Non-Matching Timestamps'''-button | * '''Filter Out Images with Non-Matching Timestamps'''-button | ||
Filters out uncomplete panoramas (missing files). | Filters out uncomplete panoramas (missing files). | ||
* '''Generate KML'''-button | * '''Generate KML'''-button | ||
− | Creates a KML file (map_points.kml in the ''' | + | Creates a KML file (map_points.kml in the '''/data/footage/FOOTAGE1''') for the '''Eyesis Panorama Previewer'''. |
+ | '''Note:''' '''''/data/footage/FOOTAGE1''' directory should have r/w rights for the map could be saved in there.'' | ||
+ | * '''Copy All'''-button | ||
+ | Copies all the images into the specified directory for further processing in ImageJ. The source images can be selected for processing right at | ||
+ | their own directory w/o copiying. | ||
+ | * '''[[Eyesis4Pi_Panorama_Previewer|Eyesis Panorama Previewer]]'''-link | ||
+ | Alternatively to '''Copy All''' allows to preview and copy selected panoramas for processing | ||
</font> | </font> | ||
− | |||
<br/><br/> | <br/><br/> | ||
− | ==Step 2== | + | ===Step 2=== |
{| | {| | ||
|[[File:Fpstep2.jpeg|thumb|820px|Step 2]] | |[[File:Fpstep2.jpeg|thumb|820px|Step 2]] | ||
Line 82: | Line 94: | ||
--> | --> | ||
<br/><br/> | <br/><br/> | ||
− | ==Step 3== | + | ===Step 3=== |
{| | {| | ||
|[[File:Fpstep3.jpeg|thumb|820px|Step 3]] | |[[File:Fpstep3.jpeg|thumb|820px|Step 3]] | ||
Line 96: | Line 108: | ||
A folder with the ImageJ plugin post-processing results to be stitched. | A folder with the ImageJ plugin post-processing results to be stitched. | ||
− | * '''Stitch'''-button | + | * '''Stitch'''-button (~3min/set) |
Launches "enblend" from a stitch.php script for all panoramas in '''ImageJ-processed subfolder''': | Launches "enblend" from a stitch.php script for all panoramas in '''ImageJ-processed subfolder''': | ||
''enblend -l 10 --no-optimize --fine-mask -a -v -w -o result.tif 1334546768_780764-*_EQR.tiff 1334546768_780764-*_EQR-*.tiff'' | ''enblend -l 10 --no-optimize --fine-mask -a -v -w -o result.tif 1334546768_780764-*_EQR.tiff 1334546768_780764-*_EQR-*.tiff'' | ||
− | * Split images for WebGL Editor | + | * Split images for WebGL Editor (<1min/set) |
Cuts stitched panoramas into 8 pieces for the WebGL Editor. | Cuts stitched panoramas into 8 pieces for the WebGL Editor. | ||
{| | {| | ||
Line 106: | Line 118: | ||
|} | |} | ||
− | * '''Compress images for Google Earth'''-button | + | * '''Compress images for Google Earth'''-button (~5sec/set) |
Creates rescaled low resolution panoramas - so the KML file could be opened from Google Earth. | Creates rescaled low resolution panoramas - so the KML file could be opened from Google Earth. | ||
− | * '''Generate KML for the WebGL Editor'''-button | + | * '''Generate KML for the WebGL Editor'''-button (quick) |
Scans all the source images in the '''Sources subfolder''' and creates a KML file with the GPS data. The file is saved into the '''Processing root folder''' | Scans all the source images in the '''Sources subfolder''' and creates a KML file with the GPS data. The file is saved into the '''Processing root folder''' | ||
* '''Path prefix inside KML'''-input | * '''Path prefix inside KML'''-input | ||
Adds this prefix to the file name to make the final http link. | Adds this prefix to the file name to make the final http link. | ||
+ | '''Note''': "published" images should be accessible at this path (locally '''/<web_server_root>/panoramas/''' = '''/<webgl-editor-path>/images/''') | ||
* '''Visibility'''-input | * '''Visibility'''-input | ||
Line 120: | Line 133: | ||
* '''Starting Index'''-input | * '''Starting Index'''-input | ||
KML records names. | KML records names. | ||
+ | |||
+ | * After images are split and KML is generated the results will be in the '''Processing root folder''' ready to be copied to the WebGL editor. | ||
+ | 1. map.kml -> '''/<webgl_editor_path>/kml_files/''' | ||
+ | 2. Splitted images -> '''/<webgl_editor_path>/images/''' | ||
+ | 3. In the browser go to <webgl_editor_web_path>/pano_index.html | ||
+ | 4. Don't forget to set up the database for the WebGL Editor - [[Eyesis_Panorama_Database|guide]]. | ||
+ | |||
</font> | </font> | ||
+ | |||
+ | == Links == | ||
+ | |||
+ | *[[Eyesis4Pi_393|Eyesis4Pi 393 Main Article]] | ||
+ | *[[Eyesis4Pi_393_workflow|Workflow]] | ||
+ | *[[Eyesis4Pi_393_User_Guide_-_Recording|User Guide: Recording]] | ||
+ | *[[Eyesis4Pi_393_Downloading_footage|User Guide: Downloading footage]] | ||
+ | *[[Eyesis4Pi Footage Procedures page|User Guide: Post-Processing selected few panoramas]] | ||
+ | *[[Eyesis4pi Post-Processing|User Guide - Post-processing: ImageJ]] | ||
+ | <!-- | ||
+ | *[[Eyesis4Pi data structure|Data Structure Description]] | ||
+ | *[[Eyesis4Pi Calibration|Calibration Process]] | ||
+ | --> | ||
+ | [[Category:Eyesis4Pi393]] | ||
+ | [[Category:User Guide]] |
Latest revision as of 15:59, 24 April 2017
Contents
Procedures
- This will work if dealing with few panoramas. For many the best option is to use scripts w/o ui.
- Copying images before processing.
- Extracting GPS coordinates from the images' EXIF headers.
- Stitching the panorama sets processed in ImageJ into equirectangular projection format.
- Formatting/resizing the results.
WebGUI screenshot
Note: ImageJ is not included into the WebGUI at the moment because it's not yet modified for launching from a browser.
System requirements
- Linux OS (Kubuntu preferably).
- Apache2 web server.
- PHP
- ImageMagick - convert.
- Movie2dng
- Hugin tools - enblend.
Download
Available for direct downloading from the SourceForge.net or from a terminal window provided the GIT is installed:
git clone git://git.code.sf.net/p/elphel/footage_procedures
Installation
- Download the source files.
- Install the required software.
- Create a link from the web server root path to the source folder. Terminal window example:
sudo ln -sf /<PATH_TO_FOOTAGE_PROCEDURES>/footage_procedures /<WEB_SERVER_ROOT_DIR>/footage_procedures
- It is assumed that the footage series are located at:
/data/footage/FOOTAGE1 /data/footage/FOOTAGE2 ...
Working
Step 1
- Processing folder-input
A folder at "/data/footage" with the acquired images in the indexed subfolders.
- Split All *.movs-button (If equipped with internal SSDs)
Splits all *.mov files in /data/footage/FOOTAGE1/mov/N/, where directory N contains *.movs from the N-th camera starting from 1 -> N=1..9 for Eyesis4Pi-26 model. The results are placed into /data/footage/FOOTAGE1/0 as if the footage was recorded onto PC.
- Filter Out Images with Non-Matching Timestamps-button
Filters out uncomplete panoramas (missing files).
- Generate KML-button
Creates a KML file (map_points.kml in the /data/footage/FOOTAGE1) for the Eyesis Panorama Previewer.
Note: /data/footage/FOOTAGE1 directory should have r/w rights for the map could be saved in there.
- Copy All-button
Copies all the images into the specified directory for further processing in ImageJ. The source images can be selected for processing right at their own directory w/o copiying.
Alternatively to Copy All allows to preview and copy selected panoramas for processing
Step 2
- N/A means only that it's not available in the WebGUI
- Please read an article about Post-Processing in ImageJ.
Step 3
- Processing root folder-input
A root folder for post-processing - absolute path
- Sources subfolder-input
A folder with the JP4 source images in the Processing root folder - the sources are used for GPS data extraction.
- ImageJ-processed subfolder-input
A folder with the ImageJ plugin post-processing results to be stitched.
- Stitch-button (~3min/set)
Launches "enblend" from a stitch.php script for all panoramas in ImageJ-processed subfolder: enblend -l 10 --no-optimize --fine-mask -a -v -w -o result.tif 1334546768_780764-*_EQR.tiff 1334546768_780764-*_EQR-*.tiff
- Split images for WebGL Editor (<1min/set)
Cuts stitched panoramas into 8 pieces for the WebGL Editor.
- Compress images for Google Earth-button (~5sec/set)
Creates rescaled low resolution panoramas - so the KML file could be opened from Google Earth.
- Generate KML for the WebGL Editor-button (quick)
Scans all the source images in the Sources subfolder and creates a KML file with the GPS data. The file is saved into the Processing root folder
- Path prefix inside KML-input
Adds this prefix to the file name to make the final http link. Note: "published" images should be accessible at this path (locally /<web_server_root>/panoramas/ = /<webgl-editor-path>/images/)
- Visibility-input
Tag inside the KML telling the Editor whether to show the panorama as a camera model ("1") or not ("0"). Use "1".
- Starting Index-input
KML records names.
- After images are split and KML is generated the results will be in the Processing root folder ready to be copied to the WebGL editor.
1. map.kml -> /<webgl_editor_path>/kml_files/ 2. Splitted images -> /<webgl_editor_path>/images/ 3. In the browser go to <webgl_editor_web_path>/pano_index.html 4. Don't forget to set up the database for the WebGL Editor - guide.
Links
- Eyesis4Pi 393 Main Article
- Workflow
- User Guide: Recording
- User Guide: Downloading footage
- User Guide: Post-Processing selected few panoramas
- User Guide - Post-processing: ImageJ