Skip to content
/ OPIPP Public

A Python implementation of Optimization-based PIPP, a method for retinal mosaic simulation.

License

Notifications You must be signed in to change notification settings

heliy/OPIPP

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

91 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OPIPP: Optimization-based Pairwise Interaction Point Process

A Python implementation of OPIPP, a method for precisely generating artificial retinal mosaics, the spatial organization of retinal neurons. Here is a short introduction to the background.

Pipeline

overview

We recommend the "import-analysis-simulation" pipeline for generating artificial mosaics and purpose a tutorial for each step, as

  1. Importing retinal spatial pattern datasets from local files
  2. Analyzing and visualizing spatial patterns of mosaics
  3. Simulating artifical retinal mosaics

Users are welcome to extend and customize methods for feature calculation and mosaic simulation.

Tools

Here are useful tools that are not implemented in the current version. We plan to apply these methods in future development.

We also provided a web application for uploading data, playing with the O-PIPP method, and downloading generated mosaics!

Install

PyPI

pip install OPIPP

pip+git

pip install git+https://github.com/heliy/OPIPP

Dependencies

  • python >=3.8
  • numpy >= 1.20.0
  • scipy >= 1.9.0
  • matplotlib >= 3.2.0
  • networkx >= 2.0.0

Citation

  • Liuyuan He, Wenyao Wang, Lei Ma, Tiejun Huang; Optimization-Based Pairwise Interaction Point Process (O-PIPP): A Precise and Universal Retinal Mosaic Modeling Approach. Invest. Ophthalmol. Vis. Sci. 2024;65(8):39. https://doi.org/10.1167/iovs.65.8.39.

References

  • The example mosaic for retinal horizontal cells and related spatial features are from (Keeley et al., 2020).

  • In the optimization, we use the adaptive simulated annealing algorithm from (Mahdi et al., 2017).

TODO & Changelog

v0.2.0

  • Update documents.

v0.1.2

  • Add more operations for mosaics and tags in Pattern.
  • Fix bugs in Pattern.
  • Estimate scope from the array of given points.

v0.1.1

  • Distribution -> Feature.

About

A Python implementation of Optimization-based PIPP, a method for retinal mosaic simulation.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published