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)
StyleGAN2 with adaptive discriminator augmentation (ADA) - Official TensorFlow implementation

StyleGAN2 with adaptive discriminator augmentation (ADA) — Official TensorFlow implementation Training Generative Adversarial Networks with Limited Da

NVIDIA Research Projects 1.7k Dec 29, 2022
Codes for NeurIPS 2021 paper "On the Equivalence between Neural Network and Support Vector Machine".

On the Equivalence between Neural Network and Support Vector Machine Codes for NeurIPS 2021 paper "On the Equivalence between Neural Network and Suppo

Leslie 8 Oct 25, 2022
This tutorial aims to learn the basics of deep learning by hands, and master the basics through combination of lectures and exercises

2021-Deep-learning This tutorial aims to learn the basics of deep learning by hands, and master the basics through combination of paper and exercises.

108 Feb 24, 2022
Code for paper "ASAP-Net: Attention and Structure Aware Point Cloud Sequence Segmentation"

ASAP-Net This project implements ASAP-Net of paper ASAP-Net: Attention and Structure Aware Point Cloud Sequence Segmentation (BMVC2020). Overview We i

Hanwen Cao 26 Aug 25, 2022
Official Pytorch implementation of "CLIPstyler:Image Style Transfer with a Single Text Condition"

CLIPstyler Official Pytorch implementation of "CLIPstyler:Image Style Transfer with a Single Text Condition" Environment Pytorch 1.7.1, Python 3.6 $ c

203 Dec 30, 2022
Predict multi paths to a moving person depending on his trajectory history.

Multi-future Trajectory Prediction The project is about using the Multiverse model to make possible multible-future trajectory prediction for a seen p

Said Gamal 1 Jan 18, 2022
A-SDF: Learning Disentangled Signed Distance Functions for Articulated Shape Representation (ICCV 2021)

A-SDF: Learning Disentangled Signed Distance Functions for Articulated Shape Representation (ICCV 2021) This repository contains the official implemen

81 Dec 14, 2022
Official PyTorch implementation of RobustNet (CVPR 2021 Oral)

RobustNet (CVPR 2021 Oral): Official Project Webpage Codes and pretrained models will be released soon. This repository provides the official PyTorch

Sungha Choi 173 Dec 21, 2022
A highly modular PyTorch framework with a focus on Neural Architecture Search (NAS).

UniNAS A highly modular PyTorch framework with a focus on Neural Architecture Search (NAS). under development (which happens mostly on our internal Gi

Cognitive Systems Research Group 19 Nov 23, 2022
Simple transformer model for CIFAR10

CIFAR-Transformer Simple transformer model for CIFAR10. Reference: https://www.tensorflow.org/text/tutorials/transformer https://github.com/huggingfac

9 Nov 07, 2022
This repository contains the code for the paper "Hierarchical Motion Understanding via Motion Programs"

Hierarchical Motion Understanding via Motion Programs (CVPR 2021) This repository contains the official implementation of: Hierarchical Motion Underst

Sumith Kulal 40 Dec 05, 2022
Unofficial implement with paper SpeakerGAN: Speaker identification with conditional generative adversarial network

Introduction This repository is about paper SpeakerGAN , and is unofficially implemented by Mingming Huang ( 7 Jan 03, 2023

Official Implementation for HyperStyle: StyleGAN Inversion with HyperNetworks for Real Image Editing

HyperStyle: StyleGAN Inversion with HyperNetworks for Real Image Editing Yuval Alaluf*, Omer Tov*, Ron Mokady, Rinon Gal, Amit H. Bermano *Denotes equ

885 Jan 06, 2023
This repository contains a toolkit for collecting, labeling and tracking object keypoints

This repository contains a toolkit for collecting, labeling and tracking object keypoints. Object keypoints are semantic points in an object's coordinate frame.

ETHZ ASL 13 Dec 12, 2022
Official implementation of NeurIPS'2021 paper TransformerFusion

TransformerFusion: Monocular RGB Scene Reconstruction using Transformers Project Page | Paper | Video TransformerFusion: Monocular RGB Scene Reconstru

Aljaz Bozic 118 Dec 25, 2022
Official PyTorch implementation of GDWCT (CVPR 2019, oral)

This repository provides the official code of GDWCT, and it is written in PyTorch. Paper Image-to-Image Translation via Group-wise Deep Whitening-and-

WonwoongCho 135 Dec 02, 2022
Face and Pose detector that emits MQTT events when a face or human body is detected and not detected.

Face Detect MQTT Face or Pose detector that emits MQTT events when a face or human body is detected and not detected. I built this as an alternative t

Jacob Morris 38 Oct 21, 2022
A PyTorch Toolbox for Face Recognition

FaceX-Zoo FaceX-Zoo is a PyTorch toolbox for face recognition. It provides a training module with various supervisory heads and backbones towards stat

JDAI-CV 1.6k Jan 06, 2023
Code for "Primitive Representation Learning for Scene Text Recognition" (CVPR 2021)

Primitive Representation Learning Network (PREN) This repository contains the code for our paper accepted by CVPR 2021 Primitive Representation Learni

Ruijie Yan 76 Jan 02, 2023
Convolutional neural network that analyzes self-generated images in a variety of languages to find etymological similarities

This project is a convolutional neural network (CNN) that analyzes self-generated images in a variety of languages to find etymological similarities. Specifically, the goal is to prove that computer

1 Feb 03, 2022