Recent Releases of pcot

pcot - 0.9.0-alpha 2025-02-17 GODOLPHIN HILL

  • New system for node parameters - the TaggedAggregate system. All nodes updated to this where it makes sense.
  • Batch runner (pcotbatch) first draft, which allows a graph to be run from the command line with inputs and nodes able to be modified with a text file, and outputs able to be captured and saved.
  • Complete rewrite of manual register node
  • "PARC" input and output file format - allows multispectral images with uncertainty to be stored (and other data types too)
  • Various bits of refactoring
  • Issue fixes
  • Yet more tests
  • Nodes are now created by left-click dragging from the palette
  • Nodes which have been renamed from their defaults have their name text shown in bold
  • Forced to downgrade minimum Python version to 3.9 temporarily

- Python
Published by jimfinnis over 1 year ago

pcot - v0.8.0-alpha FENTON SAURUS

  • More unit tests
  • colour connector "swatch" generator script
  • started work on dark/flat field generator
  • Datum archives - a file format (.PARC) for saving Datum objects, with an associated input method and exporters. Required because we have no other way of saving images with uncertainty and DQ.
  • DatumStore class wraps Archive objects so we can store Datum (this is used for the datum archives)
  • expr uses a DataWidget, as does TabData.
  • 1D vectors supported as a Datum.NUMBER type. Modifications made to datumfuncs and operators permit this. Notably, the semantics of mean, sd, sum, min and
  • square bracket parsing in expressions generates vector-creation and vector-index instructions max have changed to operate band-wise and generate a vector when performed on images.
  • Multiband extraction, e.g. a$[640,550,440].
  • .bands property generates a vector of wavelengths, so we can do a$b.bands, to get the bands in a that are also in b, in the same order as in b.
  • .u property
  • properties graph tests and QoL work for test building
  • precedence adjustments in expressions
  • getSelection in document can help get selected nodes in plugins
  • serialiseFields does a deepcopy - fixes undo bugs
  • fixes to roiexpr; it no longer keeps UI data in the node so undo works better
  • Cookbook in progress, but not part of the main repository to allow it to be updated more frequently
  • First release for Zenodo

- Python
Published by jimfinnis almost 2 years ago

pcot - v0.7.0-alpha EAST PENTIRE

  • Very many more unit tests
  • Bug fixes
  • Complete rewrite of spectrum system, using the SpectrumSet object
  • Multidot now does painted regions and floodfill
  • Joseph's PCT detector outputs image with ROIs
  • Dump removed and sink enhanced
  • TabData shows sources
  • Inputs decoupled from Sources - Sources now use composition, not inheritance
  • Comment box for nodes removed (it was never used)
  • Direct multifile loading
  • Direct PDS4 loading - required refactoring of entire PDS4 layer
  • Direct ENVI loading
  • Raw file loading from mono images supporting lots of formats
  • Loader presets for multifile
  • Operator overloading on Datum objects
  • The "datumfunc" system replacing hand-registration of functions
  • flip and rotate functions (datumfuncs)
  • String datum objects and strings usable in expr
  • Docs on library usage
  • Changes to nodes so that slow nodes can be disabled and very slow nodes start disabled. This functionality existed before, but was "ad-hoc"
  • Document.changed() is now Document.run() and forces disabled nodes to run
  • Most nodes now store data in their outputs rather than a "node.out" which is then written to an output
  • Changes to multidot - doc improvements, UX and bug fixes

- Python
Published by jimfinnis about 2 years ago

pcot - v0.6.1-alpha DYNAS COVE

  • Multifile input can accept BMP files
  • Better multifile documentation
  • Filter specifications are no longer hardwired and are loaded from CSVs
  • PANCAM and AUPE filters are default filter sets loaded in
  • Others can be specified in a config file (and can override PANCAM and AUPE)
  • Filter set no longer required by PDS4 input

- Python
Published by jimfinnis over 2 years ago

pcot - v0.6.0-alpha DRIFT STONES

  • uncertainty and error bit propagation in expr and all nodes
  • Testing quality and propagation rules
  • Test graphs for nodes and other high-level functionality
  • Test nodes for those graphs
  • Tabular output on spectrum and histogram nodes
  • Gen node for test patterns
  • Refactoring of Datum
  • Utility nodes - e.g. roidq for generating an ROI from DQ bits
  • Output enhancements
    • Gradient node can export to PDF
    • Annotations (e.g. text labels) are now drawn on the painter at high res, and have been refactored hugely
    • Annotations use thickness zero by default (the Qt "cosmetic" thickness)
  • PCT detector node
  • ROI negation and refactoring of operators
  • roiexpr node for composing ROIs using expressions
  • Crude band depth node (needs work)
  • A lot of bug fixes and regression fixes

- Python
Published by jimfinnis almost 3 years ago

pcot - 0.5.0-alpha CARLENNO ROUND

  • Uncertainty and DQ bit viewing on canvas
  • Palette and canvas interface with collapsible sections
  • Annotations (ROIs, legends) are now drawn onto the canvas rather than the image
  • Export to PDF, SVG and PNG with those hi-res annotations
  • gradient is much simpler, can overlay onto the image and can draw a legend

- Python
Published by jimfinnis over 3 years ago

pcot - 0.4.0-alpha CAER BRAN

  • Annotation system entirely rewritten
  • PDF/PNG/SVG exporter
  • Gradient legend annotation
  • Doc updates

- Python
Published by jimfinnis over 3 years ago

pcot - 0.3.0-alpha 2022-10-27 BEACON HUT

Changes:

  • Open source!
  • PDS4 importer with proctools
  • Ad-hoc Spectrum viewer in canvas
  • Significant rewrite of expression execution code, permitting custom types to have operations defined on them
  • Direct input method for library use
  • Improved default RGB mapping in canvas
  • Testing
    • Basics testing
    • Testing of the operating principles (see Principles)
      • Source rules
      • ROI rules
  • rect node can now be edited numerically
  • circle node can add circular ROIs, which can be edited numerically.

- Python
Published by jimfinnis over 3 years ago

pcot - 0.2.0-alpha ANJARDEN SPRING

Changes:

  • "pixel scanning" on canvases, shows spectrum of pixel when active
  • custom cursor, pixel under cursor highlighted at high zooms
  • text toggle button (currently unused)
  • fixes to example plugin
  • added macos.spec for pyinstaller
  • archive system shows progress when loading each archive element
  • Issue 1 fix (multiple tab closes when main window reinitialised)
  • dynamic type determination for expr output
  • can connect incompatible node outputs to inputs; indicated as red arrows
  • infinite recursion in ROI nodes fix
  • splash screen for Windows/Linux pyinstaller startup (not yet supported on MacOS pyinstaller)
  • custom Datum and connection brush types now easy
  • expr resizing regression fix
  • multiple input buttons after load/resize fix
  • status bar repaints on ui.msg, so it's updated in load and perform
  • context menu on editable text caused a crash (bug in Qt). Workaround.
  • comment boxes

- Python
Published by jimfinnis about 4 years ago

pcot - v0.1.0-alpha

ALSIA WELL. First "public" alpha release.

- Python
Published by jimfinnis over 4 years ago

pcot - v.0.1a2

Note change in version names, matching PEP440 requirements (albeit with a v. in front). This is version 0.1, alpha 2.

- Python
Published by jimfinnis almost 5 years ago

pcot - "fix" temporarily disabling undo

Regression in undo - as a temporary fix, disabling the undo mechanism (simply by having Document.undo do nothing). Apologies.

Basic training video: https://www.youtube.com/watch?v=vo5KrOAtMQ8 Note that this doesn't cover installation. If you have problems with that, let me know at jcf12@aber.ac.uk.

- Python
Published by jimfinnis almost 5 years ago

pcot - Very early internal pre-release

This version adds: * Undo/redo * improvements to spectral plots * Zadeh operators (easy to do, might be handy) * memory leak bug fix * ellipse detection * Hugo-based doc system, currently for my own notes but may be expanded

- Python
Published by jimfinnis almost 5 years ago

pcot - Very early internal pre-release

Very early pre-release version, intended for internal use only - the Aberystwyth team and a few invited external staff. There are expected to be bugs here - please create an issue for each bug using the "issues" tab above.

Basic training video: https://www.youtube.com/watch?v=vo5KrOAtMQ8 Note that this doesn't cover installation. If you have problems with that, let me know at jcf12@aber.ac.uk.

A few minor things have changed since then, mainly to do with how autorun works, but they should affect anything major.

- Python
Published by jimfinnis almost 5 years ago