QuakeLabeler is a Python package to create and manage your seismic training data, processes, and visualization in a single place — so you can focus on building the next big thing.

Overview

QuakeLabeler

Quake Labeler was born from the need for seismologists and developers who are not AI specialists to easily, quickly, and independently build and visualize their training data set.

Introduction

QuakeLabeler is a Python package to customize, build and manage your seismic training data, processes, and visualization in a single place — so you can focus on building the next big thing. Current functionalities include retrieving waveforms from data centers, customizing seismic samples, auto-building datasets, preprocessing and augmenting for labels, and visualizing data distribution. The code helps all levels of AI developers and seismology researchers for querying and building their own earthquake datasets and can be used through an interactive command-line interface with little knowledge of Python.

Installation, Usage, documentation and scripts are described at https://maihao14.github.io/QuakeLabeler/

Author: Hao Mai(Developer and Maintainer) & Pascal Audet (Developer and Maintainer)

Installation

Conda environment

We recommend creating a custom conda environment where QuakeLabeler can be installed along with its dependencies.

  • Create a environment called ql and install pygmt:
conda create -n ql python=3.8 pygmt -c conda-forge
  • Activate the newly created environment:
conda activate ql

Installing from source

Download or clone the repository:

git clone https://github.com/maihao14/QuakeLabeler.git
cd QuakeLabeler
pip install .

If you work in development mode, use the -e argument as pip install -e .

Running the scripts

Create a work folder where you will run the scripts that accompany QuakeLabeler. For example:

mkdir ~/WorkFolder
cd WorkFolder

Run QuakeLabeler. Input QuakeLabeler to macOS terminal or Windows consoles:

QuakeLabeler

Or input quakelabeler also works:

quakelabeler

A QuakeLabeler welcome interface will be loading:

(ql) [email protected] QuakeLabeler % QuakeLabeler
Welcome to QuakeLabeler----Fast AI Earthquake Dataset Deployment Tool!
QuakeLabeler provides multiple modes for different levels of Seismic AI researchers

[Beginner] mode -- well prepared case studies;
[Advanced] mode -- produce earthquake samples based on Customized parameters.

Contributing

All constructive contributions are welcome, e.g. bug reports, discussions or suggestions for new features. You can either open an issue on GitHub or make a pull request with your proposed changes. Before making a pull request, check if there is a corresponding issue opened and reference it in the pull request. If there isn't one, it is recommended to open one with your rationale for the change. New functionality or significant changes to the code that alter its behavior should come with corresponding tests and documentation. If you are new to contributing, you can open a work-in-progress pull request and have it iteratively reviewed. Suggestions for improvements (speed, accuracy, etc.) are also welcome.

You might also like...
Spam your friends and famly and when you do your famly will disown you and you will have no friends.

SpamBot9000 Spam your friends and family and when you do your family will disown you and you will have no friends. Terms of Use Disclaimer: Please onl

The code for our paper
The code for our paper "NSP-BERT: A Prompt-based Zero-Shot Learner Through an Original Pre-training Task —— Next Sentence Prediction"

The code for our paper "NSP-BERT: A Prompt-based Zero-Shot Learner Through an Original Pre-training Task —— Next Sentence Prediction"

Ever felt tired after preprocessing the dataset, and not wanting to write any code further to train your model? Ever encountered a situation where you wanted to record the hyperparameters of the trained model and able to retrieve it afterward? Models Playground is here to help you do that. Models playground allows you to train your models right from the browser.
7th place solution of Human Protein Atlas - Single Cell Classification on Kaggle

kaggle-hpa-2021-7th-place-solution Code for 7th place solution of Human Protein Atlas - Single Cell Classification on Kaggle. A description of the met

Kaggle | 9th place single model solution for TGS Salt Identification Challenge

UNet for segmenting salt deposits from seismic images with PyTorch. General We, tugstugi and xuyuan, have participated in the Kaggle competition TGS S

Source codes of CenterTrack++ in 2021 ICME Workshop on Big Surveillance Data Processing and Analysis
Source codes of CenterTrack++ in 2021 ICME Workshop on Big Surveillance Data Processing and Analysis

MOT Tracked object bounding box association (CenterTrack++) New association method based on CenterTrack. Two new branches (Tracked Size and IOU) are a

AI Flow is an open source framework that bridges big data and artificial intelligence.
AI Flow is an open source framework that bridges big data and artificial intelligence.

Flink AI Flow Introduction Flink AI Flow is an open source framework that bridges big data and artificial intelligence. It manages the entire machine

In-Place Activated BatchNorm for Memory-Optimized Training of DNNs
In-Place Activated BatchNorm for Memory-Optimized Training of DNNs

In-Place Activated BatchNorm In-Place Activated BatchNorm for Memory-Optimized Training of DNNs In-Place Activated BatchNorm (InPlace-ABN) is a novel

PyGAD, a Python 3 library for building the genetic algorithm and training machine learning algorithms (Keras & PyTorch).
PyGAD, a Python 3 library for building the genetic algorithm and training machine learning algorithms (Keras & PyTorch).

PyGAD: Genetic Algorithm in Python PyGAD is an open-source easy-to-use Python 3 library for building the genetic algorithm and optimizing machine lear

Comments
  • QuakeLabeler ModuleNotFoundError

    QuakeLabeler ModuleNotFoundError

    I followed the installation instructions to install the fascinating QuakeLabeler package But I encountered an error as follows Traceback (most recent call last): File "/home/panxiong/anaconda3/envs/ql/bin/QuakeLabeler", line 5, in <module> from quakelabeler.scripts.QuakeLabeler import main ModuleNotFoundError: No module named 'quakelabeler.scripts' Please give me a solution, thanks.

    opened by PANXIONG-CN 2
  • Error loading GMT shared library

    Error loading GMT shared library

    Hello,

    I was trying to use the QuakeLabeler package on some data and when I tried to run it I got the following error:

    pygmt.exceptions.GMTCLibNotFoundError: Error loading GMT shared library at 'libgmt.so'. libgmt.so: cannot open shared object file: No such file or directory

    I saw that there were some responses to a similar question in the past, but they all involved using conda, which I don't use at it interferes with other libraries I use.

    So far I tried using:

    pip install pygmt

    as well as GMT:

    sudo apt-get install gmt gmt-dcw gmt-gshhg sudo apt-get install ghostscript Unfortunately, it did not work.

    Any suggestions would be appreciated

    opened by sbrent88 1
  • the problem of QuakeLabeler used in the Ubuntu

    the problem of QuakeLabeler used in the Ubuntu

    After I create the python environment needed by QuakeLabeler and install it in my Ubuntu computer, there was the problem, "AttributeError: 'numpy.int64' object has no attribute 'split'" when I execute QuakeLabeler (quakelabeler) in the terminal.

    “”“ Traceback (most recent call last): File "/home/xxx/anaconda3/envs/slc/bin/QuakeLabeler", line 33, in sys.exit(load_entry_point('QuakeLabeler', 'console_scripts', 'QuakeLabeler')()) File "/home/xxx/anaconda3/envs/slc/bin/QuakeLabeler", line 25, in importlib_load_entry_point return next(matches).load() File "/home/xxx/anaconda3/envs/slc/lib/python3.8/importlib/metadata.py", line 77, in load module = import_module(match.group('module')) File "/home/xxx/anaconda3/envs/slc/lib/python3.8/importlib/init.py", line 127, in import_module return _bootstrap._gcd_import(name[level:], package, level) File "", line 1014, in _gcd_import File "", line 991, in _find_and_load File "", line 961, in _find_and_load_unlocked File "", line 219, in _call_with_frames_removed File "", line 1014, in _gcd_import File "", line 991, in _find_and_load File "", line 961, in _find_and_load_unlocked File "", line 219, in _call_with_frames_removed File "", line 1014, in _gcd_import File "", line 991, in _find_and_load File "", line 975, in _find_and_load_unlocked File "", line 671, in _load_unlocked File "", line 843, in exec_module File "", line 219, in _call_with_frames_removed File "/home/xxx/EQ_Detection/QuakeLabeler/quakelabeler/init.py", line 5, in from .classes import QuakeLabeler, Interactive, CustomSamples, QueryArrival, BuiltInCatalog, MergeMetadata, GlobalMaps File "/home/xxx/EQ_Detection/QuakeLabeler/quakelabeler/classes.py", line 35, in from obspy.core.utcdatetime import UTCDateTime File "/home/xxx/.local/lib/python3.8/site-packages/obspy/init.py", line 39, in from obspy.core.utcdatetime import UTCDateTime # NOQA File "/home/xxx/.local/lib/python3.8/site-packages/obspy/core/init.py", line 124, in from obspy.core.utcdatetime import UTCDateTime # NOQA File "/home/xxx/.local/lib/python3.8/site-packages/obspy/core/utcdatetime.py", line 27, in from obspy.core.util.deprecation_helpers import ObsPyDeprecationWarning File "/home/xxx/.local/lib/python3.8/site-packages/obspy/core/util/init.py", line 27, in from obspy.core.util.base import (ALL_MODULES, DEFAULT_MODULES, File "/home/xxx/.local/lib/python3.8/site-packages/obspy/core/util/base.py", line 36, in from obspy.core.util.misc import to_int_or_zero, buffered_load_entry_point File "/home/xxx/.local/lib/python3.8/site-packages/obspy/core/util/misc.py", line 214, in loadtxt(np.array([0]), ndmin=1) File "/home/xxx/anaconda3/envs/slc/lib/python3.8/site-packages/numpy/lib/npyio.py", line 1086, in loadtxt ncols = len(usecols or split_line(first_line)) File "/home/xxx/anaconda3/envs/slc/lib/python3.8/site-packages/numpy/lib/npyio.py", line 977, in split_line line = line.split(comment, 1)[0] AttributeError: 'numpy.int64' object has no attribute 'split' "”"

    opened by Damin1909 3
Owner
Hao Mai
Hao Mai
The AWS Certified SysOps Administrator

The AWS Certified SysOps Administrator – Associate (SOA-C02) exam is intended for system administrators in a cloud operations role who have at least 1 year of hands-on experience with deployment, man

Aiden Pearce 32 Dec 11, 2022
Unofficial PyTorch Implementation of AHDRNet (CVPR 2019)

AHDRNet-PyTorch This is the PyTorch implementation of Attention-guided Network for Ghost-free High Dynamic Range Imaging (CVPR 2019). The official cod

Yutong Zhang 4 Sep 08, 2022
Python implementation of 3D facial mesh exaggeration using the techniques described in the paper: Computational Caricaturization of Surfaces.

Python implementation of 3D facial mesh exaggeration using the techniques described in the paper: Computational Caricaturization of Surfaces.

Wonjong Jang 8 Nov 01, 2022
Deep Learning agent of Starcraft2, similar to AlphaStar of DeepMind except size of network.

Introduction This repository is for Deep Learning agent of Starcraft2. It is very similar to AlphaStar of DeepMind except size of network. I only test

Dohyeong Kim 136 Jan 04, 2023
A production-ready, scalable Indexer for the Jina neural search framework, based on HNSW and PSQL

🌟 HNSW + PostgreSQL Indexer HNSWPostgreSQLIndexer Jina is a production-ready, scalable Indexer for the Jina neural search framework. It combines the

Jina AI 25 Oct 14, 2022
Neuron class provides LNU (Linear Neural Unit), QNU (Quadratic Neural Unit), RBF (Radial Basis Function), MLP (Multi Layer Perceptron), MLP-ELM (Multi Layer Perceptron - Extreme Learning Machine) neurons learned with Gradient descent or LeLevenberg–Marquardt algorithm

Neuron class provides LNU (Linear Neural Unit), QNU (Quadratic Neural Unit), RBF (Radial Basis Function), MLP (Multi Layer Perceptron), MLP-ELM (Multi Layer Perceptron - Extreme Learning Machine) neu

Filip Molcik 38 Dec 17, 2022
Pairwise model for commonlit competition

Pairwise model for commonlit competition To run: - install requirements - create input directory with train_folds.csv and other competition data - cd

abhishek thakur 45 Aug 31, 2022
Bonnet: An Open-Source Training and Deployment Framework for Semantic Segmentation in Robotics.

Bonnet: An Open-Source Training and Deployment Framework for Semantic Segmentation in Robotics. By Andres Milioto @ University of Bonn. (for the new P

Photogrammetry & Robotics Bonn 314 Dec 30, 2022
A simple library that implements CLIP guided loss in PyTorch.

pytorch_clip_guided_loss: Pytorch implementation of the CLIP guided loss for Text-To-Image, Image-To-Image, or Image-To-Text generation. A simple libr

Sergei Belousov 74 Dec 26, 2022
Named Entity Recognition with Small Strongly Labeled and Large Weakly Labeled Data

Named Entity Recognition with Small Strongly Labeled and Large Weakly Labeled Data arXiv This is the code base for weakly supervised NER. We provide a

Amazon 92 Jan 04, 2023
Multiple Object Tracking with Yolov5!

Tracking with yolov5 This implementation is for who need to tracking multi-object only with detector. You can easily track mult-object with your well

9 Nov 08, 2022
🔥🔥High-Performance Face Recognition Library on PaddlePaddle & PyTorch🔥🔥

face.evoLVe: High-Performance Face Recognition Library based on PaddlePaddle & PyTorch Evolve to be more comprehensive, effective and efficient for fa

Zhao Jian 3.1k Jan 04, 2023
Align and Prompt: Video-and-Language Pre-training with Entity Prompts

ALPRO Align and Prompt: Video-and-Language Pre-training with Entity Prompts [Paper] Dongxu Li, Junnan Li, Hongdong Li, Juan Carlos Niebles, Steven C.H

Salesforce 127 Dec 21, 2022
BBScan py3 - BBScan py3 With Python

BBScan_py3 This repository is forked from lijiejie/BBScan 1.5. I migrated the fo

baiyunfei 12 Dec 30, 2022
A 35mm camera, based on the Canonet G-III QL17 rangefinder, simulated in Python.

c is for Camera A 35mm camera, based on the Canonet G-III QL17 rangefinder, simulated in Python. The purpose of this project is to explore and underst

Daniele Procida 146 Sep 26, 2022
MG-GCN: Scalable Multi-GPU GCN Training Framework

MG-GCN MG-GCN: multi-GPU GCN training framework. For more information, please read our paper. After cloning our repository, run git submodule update -

Translational Data Analytics (TDA) Lab @GaTech 6 Oct 24, 2022
Scikit-event-correlation - Event Correlation and Forecasting over High Dimensional Streaming Sensor Data algorithms

scikit-event-correlation Event Correlation and Changing Detection Algorithm Theo

Intellia ICT 5 Oct 30, 2022
Taichi Course Homework Template

太极图形课S1-标题部分 这个作业未来或将是你的开源项目,标题的内容可以来自作业中的核心关键词,让读者一眼看出你所完成的工作/做出的好玩demo 如果暂时未想好,起名时可以参考“太极图形课S1-xxx作业” 如下是作业(项目)展开说明的方法,可以帮大家理清思路,并且也对读者非常友好,请小伙伴们多多参

TaichiCourse 30 Nov 19, 2022
This is the repo for our work "Towards Persona-Based Empathetic Conversational Models" (EMNLP 2020)

Towards Persona-Based Empathetic Conversational Models (PEC) This is the repo for our work "Towards Persona-Based Empathetic Conversational Models" (E

Zhong Peixiang 35 Nov 17, 2022