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 registernode - "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,minand - square bracket parsing in expressions generates vector-creation and vector-index instructions
maxhave changed to operate band-wise and generate a vector when performed on images. - Multiband extraction, e.g.
a$[640,550,440]. .bandsproperty generates a vector of wavelengths, so we can doa$b.bands, to get the bands inathat are also inb, in the same order as inb..uproperty- 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 - "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