Python Library for Signal/Image Data Analysis with Transport Methods

Overview

PyTransKit

Python Transport Based Signal Processing Toolkit

Website and documentation: https://pytranskit.readthedocs.io/

Installation

The library could be installed through pip

pip install pytranskit

Alternately, you could clone/download the repository and add the pytranskit directory to your Python path

import sys
sys.path.append('path/to/pytranskit')

from pytranskit.optrans.continuous.cdt import CDT

Low Level Functions

CDT, SCDT

R-CDT

CLOT

  • Continuous Linear Optimal Transport Transform (CLOT) tutorial [notebook] [nbviewer]

Classification Examples

  • CDT Nearest Subspace (CDT-NS) classifier for 1D data [notebook] [nbviewer]
  • SCDT Nearest Subspace (SCDT-NS) classifier for 1D data [8] [notebook] [nbviewer]
  • Radon-CDT Nearest Subspace (RCDT-NS) classifier for 2D data [4] [notebook] [nbviewer]
  • 3D Radon-CDT Nearest Subspace (3D-RCDT-NS) classifier for 3D data [notebook] [nbviewer]

Estimation Examples

Transport-based Morphometry

  • Transport-based Morphometry to detect and visualize cell phenotype differences [7] [notebook] [nbviewer]

References

  1. The cumulative distribution transform and linear pattern classification, Applied and Computational Harmonic Analysis, November 2018
  2. The Radon Cumulative Distribution Transform and Its Application to Image Classification, IEEE Transactions on Image Processing, December 2015
  3. A continuous linear optimal transport approach for pattern analysis in image datasets, Pattern Recognition, March 2016
  4. Radon cumulative distribution transform subspace modeling for image classification, Journal of Mathematical Imaging and Vision, 2021
  5. Parametric Signal Estimation Using the Cumulative Distribution Transform, IEEE Transactions on Signal Processing, May 2020
  6. The Signed Cumulative Distribution Transform for 1-D Signal Analysis and Classification, ArXiv 2021
  7. Detecting and visualizing cell phenotype differences from microscopy images using transport-based morphometry, PNAS 2014
  8. Nearest Subspace Search in the Signed Cumulative Distribution Transform Space for 1D Signal Classification, ArXiv 2021

Resources

External website http://imagedatascience.com/transport/

You might also like...
 Non-Homogeneous Poisson Process Intensity Modeling and Estimation using Measure Transport
Non-Homogeneous Poisson Process Intensity Modeling and Estimation using Measure Transport

Non-Homogeneous Poisson Process Intensity Modeling and Estimation using Measure Transport This GitHub page provides code for reproducing the results i

Official implementation of NLOS-OT: Passive Non-Line-of-Sight Imaging Using Optimal Transport (IEEE TIP, accepted)
Official implementation of NLOS-OT: Passive Non-Line-of-Sight Imaging Using Optimal Transport (IEEE TIP, accepted)

NLOS-OT Official implementation of NLOS-OT: Passive Non-Line-of-Sight Imaging Using Optimal Transport (IEEE TIP, accepted) Description In this reposit

Universal Probability Distributions with Optimal Transport and Convex Optimization

Sylvester normalizing flows for variational inference Pytorch implementation of Sylvester normalizing flows, based on our paper: Sylvester normalizing

A general and strong 3D object detection codebase that supports more methods, datasets and tools (debugging, recording and analysis).

ALLINONE-Det ALLINONE-Det is a general and strong 3D object detection codebase built on OpenPCDet, which supports more methods, datasets and tools (de

Deep learning (neural network) based remote photoplethysmography: how to extract pulse signal from video using deep learning tools

Deep-rPPG: Camera-based pulse estimation using deep learning tools Deep learning (neural network) based remote photoplethysmography: how to extract pu

The source code of the paper "Understanding Graph Neural Networks from Graph Signal Denoising Perspectives"

GSDN-F and GSDN-EF This repository provides a reference implementation of GSDN-F and GSDN-EF as described in the paper "Understanding Graph Neural Net

Code release for the ICML 2021 paper "PixelTransformer: Sample Conditioned Signal Generation".

PixelTransformer Code release for the ICML 2021 paper "PixelTransformer: Sample Conditioned Signal Generation". Project Page Installation Please insta

Use MATLAB to simulate the signal and extract features. Use PyTorch to build and train deep network to do spectrum sensing.

Deep-Learning-based-Spectrum-Sensing Use MATLAB to simulate the signal and extract features. Use PyTorch to build and train deep network to do spectru

A Simple LSTM-Based Solution for "Heartbeat Signal Classification and Prediction" in Tianchi

LSTM-Time-Series-Prediction A Simple LSTM-Based Solution for "Heartbeat Signal Classification and Prediction" in Tianchi Contest. The Link of the Cont

Comments
  • Problem installing `bluepy` from the repo.

    Problem installing `bluepy` from the repo.

    Problem: for my machine (machine spec mentioned below), installing requirements on this repo, as given in requirements.txt throws the following error.

    error: legacy-install-failure
    
    × Encountered error while trying to install package.
    ╰─> bluepy
    
    note: This is an issue with the package mentioned above, not pip.
    hint: See above for output from the failure.
    

    This error is in context with mention of bluepy in requirements.txt.

    Machine Specs:

    1. miniconda venv for python 3.9.12 running on MacOS Monterey; CPU: Apple M2.
    2. miniconda venv for python 3.10.4 running on Ubuntu Jammy Jellyfish; CPU: AMD Ryzen.

    Interesting Note: I don't find bluepy being directly imported in the code on the master or the CDT-app-gui branch.

    Proposed Solution:

    1. Remove bluepy from requirements.txt

    Note: This is not a problem with installing PyTranskit itself. It installs pretty gracefully through pip.

    opened by Ujjawal-K-Panchal 1
  • Changed filter to filter_name

    Changed filter to filter_name

    In the radoncdt.py file passing the option filter was not working since scikit-image expects the key filter_name.

    Tutorial 2 was failing for this reason.

    opened by giovastabile 0
  • Create a

    Create a "NS" classifier

    Create a "NS" classifier, as an standalone implementation of the nearest subspace classification method. The "RCDT_NS" and "CDT-NS" classifier can be a subclass of this classifier.

    opened by xuwangyin 0
  • Issue when setting forward('rm_edge = True')

    Issue when setting forward('rm_edge = True')

    This possibly just needs an edit to reduce the size of the reference signal array alongside the reduction in size of the signal with removed edges.

    File "\RCDT_Basic_Tests.py", line 115, in <module>
        Irev = rcdt.inverse(Ihat, temp, nlims)
    
      File "\pytranskit\optrans\continuous\radoncdt.py", line 123, in inverse
        return self.apply_inverse_map(transport_map, sig0, x1_range)
    
      File "\pytranskit\optrans\continuous\radoncdt.py", line 235, in apply_inverse_map
        sig1_recon = match_shape2d(sig0, sig1_recon)
    
      File "\pytranskit\optrans\utils\data_utils.py", line 81, in match_shape2d
        raise ValueError("A is bigger than B: "
    
    ValueError: A is bigger than B: (250, 250) vs (248, 248)
    
    opened by TobiasLong 0
Releases(0.1)
This is the official pytorch implementation for the paper: Instance Similarity Learning for Unsupervised Feature Representation.

ISL This is the official pytorch implementation for the paper: Instance Similarity Learning for Unsupervised Feature Representation, which is accepted

19 May 04, 2022
Multi-Task Pre-Training for Plug-and-Play Task-Oriented Dialogue System

Multi-Task Pre-Training for Plug-and-Play Task-Oriented Dialogue System Authors: Yixuan Su, Lei Shu, Elman Mansimov, Arshit Gupta, Deng Cai, Yi-An Lai

Amazon Web Services - Labs 123 Dec 23, 2022
Koç University deep learning framework.

Knet Knet (pronounced "kay-net") is the Koç University deep learning framework implemented in Julia by Deniz Yuret and collaborators. It supports GPU

1.4k Dec 31, 2022
Repo for 2021 SDD assessment task 2, by Felix, Anna, and James.

SoftwareTask2 Repo for 2021 SDD assessment task 2, by Felix, Anna, and James. File/folder structure: helloworld.py - demonstrates various map backgrou

3 Dec 13, 2022
Repository accompanying the "Sign Pose-based Transformer for Word-level Sign Language Recognition" paper

by Matyáš Boháček and Marek Hrúz, University of West Bohemia Should you have any questions or inquiries, feel free to contact us here. Repository acco

Matyáš Boháček 30 Dec 30, 2022
Yolo ros - YOLO-ROS for HUAWEI ATLAS200

YOLO-ROS YOLO-ROS for NVIDIA YOLO-ROS for HUAWEI ATLAS200, please checkout for b

ChrisLiu 5 Oct 18, 2022
Official repository for Automated Learning Rate Scheduler for Large-Batch Training (8th ICML Workshop on AutoML)

Automated Learning Rate Scheduler for Large-Batch Training The official repository for Automated Learning Rate Scheduler for Large-Batch Training (8th

Kakao Brain 35 Jan 04, 2023
The source codes for TME-BNA: Temporal Motif-Preserving Network Embedding with Bicomponent Neighbor Aggregation.

TME The source codes for TME-BNA: Temporal Motif-Preserving Network Embedding with Bicomponent Neighbor Aggregation. Our implementation is based on TG

2 Feb 10, 2022
PyTorch implementation of HDN(Homography Decomposition Networks) for planar object tracking

Homography Decomposition Networks for Planar Object Tracking This project is the offical PyTorch implementation of HDN(Homography Decomposition Networ

CaptainHook 48 Dec 15, 2022
Learning Representations that Support Robust Transfer of Predictors

Transfer Risk Minimization (TRM) Code for Learning Representations that Support Robust Transfer of Predictors Prepare the Datasets Preprocess the Scen

Yilun Xu 15 Dec 07, 2022
K-PLUG: Knowledge-injected Pre-trained Language Model for Natural Language Understanding and Generation in E-Commerce (EMNLP Founding 2021)

Introduction K-PLUG: Knowledge-injected Pre-trained Language Model for Natural Language Understanding and Generation in E-Commerce. Installation PyTor

Xu Song 21 Nov 16, 2022
QRec: A Python Framework for quick implementation of recommender systems (TensorFlow Based)

Introduction QRec is a Python framework for recommender systems (Supported by Python 3.7.4 and Tensorflow 1.14+) in which a number of influential and

Yu 1.4k Jan 01, 2023
[TIP2020] Adaptive Graph Representation Learning for Video Person Re-identification

Introduction This is the PyTorch implementation for Adaptive Graph Representation Learning for Video Person Re-identification. Get started git clone h

WuYiming 41 Dec 12, 2022
Simplified interface for TensorFlow (mimicking Scikit Learn) for Deep Learning

SkFlow has been moved to Tensorflow. SkFlow has been moved to http://github.com/tensorflow/tensorflow into contrib folder specifically located here. T

3.2k Dec 29, 2022
Activating More Pixels in Image Super-Resolution Transformer

HAT [Paper Link] Activating More Pixels in Image Super-Resolution Transformer Xiangyu Chen, Xintao Wang, Jiantao Zhou and Chao Dong BibTeX @article{ch

XyChen 270 Dec 27, 2022
Build Low Code Automated Tensorflow, What-IF explainable models in just 3 lines of code.

Build Low Code Automated Tensorflow explainable models in just 3 lines of code.

Hasan Rafiq 170 Dec 26, 2022
Deep Reinforcement Learning based Trading Agent for Bitcoin

Deep Trading Agent Deep Reinforcement Learning based Trading Agent for Bitcoin using DeepSense Network for Q function approximation. For complete deta

Kartikay Garg 669 Dec 29, 2022
[NeurIPS-2021] Slow Learning and Fast Inference: Efficient Graph Similarity Computation via Knowledge Distillation

Efficient Graph Similarity Computation - (EGSC) This repo contains the source code and dataset for our paper: Slow Learning and Fast Inference: Effici

23 Nov 11, 2022
Neural Style and MSG-Net

PyTorch-Style-Transfer This repo provides PyTorch Implementation of MSG-Net (ours) and Neural Style (Gatys et al. CVPR 2016), which has been included

Hang Zhang 904 Dec 21, 2022
Bytedance Inc. 2.5k Jan 06, 2023