Skip to content
Pierre-Étienne Fiquet edited this page Aug 9, 2018 · 21 revisions

Welcome to the pyrtools wiki!

For now, we'll use this to organize how we revamp the code and keep notes on the process.

Organization

We need to overhaul how the code is organized. Right now, it looks a lot like MATLAB, with a single file per function. To make it more pythonic, we should have several files that contain a variety of related functions. Proposed files:

  • pyramids/
    • c/wrapper
    • pyramid
    • filters
    • utilities (pyramid specific)
  • tools/
    • synthetic_images
    • image_statistics
    • display_tools
    • additional_tools (histoMatch, oriented HF band, optic flow, orientation tensor, local cov rank, etc.)

The pyramids folder is mostly independent from the tools, exceptions include: showIm, rcosFn, mkAngle

(for more details, see pyrtools/__init__.py)

A useful guide to Python import Statements https://chrisyeh96.github.io/2017/08/08/definitive-guide-python-imports.html#summary--key-points

Pyramid hierarchy

Right now, the pyramids inherit classes like this:

pyramid
|
|---------------|------------|
|               |            |
Spyr           Gpyr         Wpyr
|               |
SFpyr          Lpyr
|                           
SCFpyr                  

pyramid is pretty empty right now, should update to contain more meaningful methods (for example, can probably put showPyr) there and see if it's possible to consolidate the separate streams for Lpyr and Spyr.

Clone this wiki locally