Skip to content

csps elphel decompose_v0.2

Nils Hamel edited this page Mar 3, 2015 · 1 revision

Overview

The csps-elphel-decompose software allows to parse logs-files coming from Elphel camera devices in order to detect IMU-events based event-logger timestamp anomalous intervals. As anomaly is detected, the software creates different files to separates the content of the considered logs-file.

This software, because of its implemented algorithm, allows to detect bad formated logs-file records that appear with inconsistant timestamps. As a results, the records that carry such anomalies are naturally separated from the valid records.

Usage

The csps-elphel-decompose software expects the following arguments and parameters. Starting with the stream arguments and parameters :

--source -s

Path to the directory that contains the logs-files to decompose.

--destination -d

Path to the directory that recieves the logs-files resulting from
decomposition process.

The splitting configuration is made through the following arguments and parameters :

--interval -i

Minimal interval duration, in floating point seconds, between two
IMU-events timestamps that trigger a decomposition.

Demonstration

Considering logs-files coming from and eyesis4pi camera device, the software output is given by :

Decomposing : log-source.log-00001
    log-container.log-00001
    log-container.log-00002 - 0 event loss(es)
    log-container.log-00003 - 0 event loss(es)
    log-container.log-00004 - 0 event loss(es)
    log-container.log-00005 - 0 event loss(es)
    log-container.log-00006 - 0 event loss(es)
    log-container.log-00007 - 0 event loss(es)
    log-container.log-00008 - 0 event loss(es)
    log-container.log-00009 - 0 event loss(es)
    log-container.log-00010 - 0 event loss(es)
    log-container.log-00011 - 0 event loss(es)
    log-container.log-00012 - 0 event loss(es)
Decomposing : log-source.log-00002
    log-container.log-00013
    log-container.log-00014 - 0 event loss(es)
    log-container.log-00015 - 0 event loss(es)
    log-container.log-00016 - 0 event loss(es)
    log-container.log-00017 - 0 event loss(es)
    log-container.log-00018 - 0 event loss(es)
    log-container.log-00019 - 0 event loss(es)
Decomposing : log-source.log-00003
    log-container.log-00020

On this example, the first source logs-file is splitted in 12 segments due to IMU-events interval that trigger the splitting condition. The second source logs-file is splitted in 7 segments when the last one remains the same in the output directory as if a copy was performed.

Because splitting condition is based on IMU-events, it is possible that an other event, like GPS or master, occurs just between the two IMU-events that define a split. In this case, the event is simply discarded. This is indicated by the event loss counter on the software output.

Compilation

The software binary can be build using its specific makefile by simply typing in its base directory :

$ make clean && make build [OPENMP=false]

The binary is placed in the local bin directory and is not copied in the csps-suite main bin directory. To generate the documentation, use the command :

$ make clean-documentation && make documentation

To install or uninstall the binaries on the local computer, use the commands :

# make install
# make uninstall

Clone this wiki locally