Implementation of a feature extraction method

The aim of the workshop is to familiarize students with basic image processing, feature detection, and feature extraction methods applied to EUSO-SPB1 data. As a part of the practical activity, students will implement their simple feature extraction method, which they will then utilize to process a dataset of EUSO-SPB1 data (simulations and noise).

The Air Shower Pattern Recognition summer school consists of the following five workshops:

  1. Introduction to the JEM-EUSO and running air shower event simulations
  2. Reading the detector data
  3. Implementation of a feature extraction method
  4. Classification of the data through the extracted features
  5. Classification of the data using a convolutional neural network

Slides

Practical activity

  1. Review of image filtration methods applied to EUSO-SPB1 simulations (jupyter)
  2. Review of thresholding methods applied to EUSO-SPB1 simulations (jupyter)
  3. Implementation of a simple feature extraction method (py)
  4. Running the feature extraction procedure.

#3 Implementation of a simple feature extraction method (py)

Feature extraction code in the workshop

Modules/Files of the project
  • process_acquisitions.py – Batch processing of acquisition/simulation files 
  • feature_extraction.py – Processing of a single numpy or ROOT file
    • Depends on event reader (AcqL1EventReader, NpyL1EventReader, NpyconvEventReader)
  • event_processing_workshop.py
    • Implementation of the feature extraction procedure for this workshop
    • Class EventProcessingWorkshop (base_classes.BaseEventProcessing)
      • Method process_event() returns event of class EventAnalysisRecordWorkshop
  • event_analysis_record_workshop.py
    • Class EventAnalysisRecordWorkshop(EventAnalysisRecordV3Base) 
  • tsv_event_storage.py 
    • Management of output into tsv files
  • processing_functions.pyx – various algorithms, Cython
Feature extraction procedure skeleton
  • Classes
    • EventProcessingWorkshop – main class
    • EventProcessingParamsWorkshop  – parameters of the procedure
    • VisualizationOptions  – interactive visualization options 
    • SavefigOptions  – plotting related options
  • get_attr_numbering_dict() – information about generated features for event storage (mainly for SQL CREATE)
  1. process_event() – feature extraction procedure wrapper
    1. Parsing of the arguments
    2. Construction of the frames sequence(s)
    3. process_pdm() loop
  2. process_pdm() – handling of the feature extraction per PDM
    1. Calibration map
    2. Background subtraction
    3. Projection images construction
    4. process_single_projection() loop
  3. process_single_projection() 
    1. Filtration, Thresholding, …
    2. Hough transform
    3. Line orientation
    4. Output