Ticket #516 (closed task: fixed)

Opened 8 years ago

Last modified 5 years ago

Add arbitrary properties to Metadata

Reported by: gharris Owned by: curtis
Priority: major Milestone: imagej2-b8-analysis
Component: Data Model Version:
Severity: serious Keywords:
Cc: Blocked By:
Blocking: #1920, #1923

Description

Wondering if we want to add something like properties to the ImgPlus Metadata, for storing arbitrary metadata with ImgPlus.

ij.ImagePlus had a private Properties field, properties (a HashTable), and accessors, get/setProperty, getProperties.

Specific uses include "Label", "Info", and "FHT".

And what of FileInfo?
Are there things from this that we want to retain, perhaps in our metadata?

Change History

comment:1 Changed 8 years ago by gharris

  • Owner changed from bdezonia to gharris
  • Status changed from new to assigned

comment:2 Changed 8 years ago by gharris

  • Milestone changed from biweekly-2011: May-23 to Jun-03 to biweekly-2011: Jun-06 to Jun-17

comment:3 Changed 8 years ago by bdezonia

I had written up some similar material in ticket #508.

An example issue includes IJ1's reliance on slice labels sometimes. Run the legacy Image::Type plugins (HSB Stack and RGB stack). In IJ1 each slice is labeled with Hue/Saturation/Brightness or Red/Green/Blue. That info is lost to IJ2. Those labels are used to create an RGB Image from a HSB or RGB stack.

All metadata may need to be preserved to IJ2 & back across the legacy layer. IJ1 has a image title, calibration values, units, file info, image stack title, image slice labels, and Properties. Anything else?

comment:4 Changed 8 years ago by gharris

  • Milestone changed from biweekly-2011: Jun-06 to Jun-17 to biweekly-2011: Jun-20 to Jul-01

comment:5 Changed 8 years ago by gharris

  • Priority changed from major to minor
  • Severity changed from major to minor
  • Milestone changed from biweekly-2011: Jul-18 to Jul-29 to imagej-2.0-alpha5

comment:6 Changed 8 years ago by curtis

  • Owner changed from gharris to curtis
  • Milestone changed from imagej-2.0-alpha5 to imagej-2.0-beta1

comment:7 Changed 8 years ago by curtis

  • Priority changed from minor to major
  • Severity changed from minor to serious

comment:8 Changed 8 years ago by curtis

  • Milestone changed from imagej-2.0-beta1 to imagej-2.0-beta2

comment:9 Changed 8 years ago by bdezonia

One thing to note: we should add the translation of arbitrary metadata across the legacy layer when we address this ticket.

comment:10 Changed 7 years ago by curtis

  • Blocking 564 added

comment:11 Changed 7 years ago by curtis

This should be doable for the beta3 release.

comment:12 Changed 7 years ago by curtis

  • Milestone changed from imagej-2.0.0-beta3 to imagej-2.0.0-beta4

comment:13 Changed 7 years ago by bdezonia

I had some thoughts on metadata in general.

It would be nice if metadata could be tied to a sample or an XY plane or a ZT plane or the whole image etc. Also to subregions of an image? Note that if we had this fine grain control then metadata could be maintained more easily when translating data or subsampling an image or reordering data within an image etc.

A data element would need a unique id (i.e. for a sample the (x,y,z,...) coord, for a plane the (axis, planeNum) coord, for an image the id is obvious.

It would be nice to tag data elements with metadata objects. For instance a plane could have a color table, one or more overlays, etc. A sample could have a textual comment of some sort.

I don't know a lot about metadata handling in general. These are just some random thoughts.

Last edited 7 years ago by bdezonia (previous) (diff)

comment:14 Changed 7 years ago by curtis

  • Blocking 9 added
  • Milestone changed from imagej-2.0.0-beta4 to imagej-2.0.0-beta5

comment:15 Changed 6 years ago by bdezonia

  • Milestone changed from imagej2-b7-ndim-data to imagej2-b8-analysis

comment:16 Changed 6 years ago by curtis

  • Blocking 1920 added

comment:17 Changed 6 years ago by curtis

  • Blocking 9 removed

(In #9) This ticket is really about improving the infrastructure if I/O for ImageJ2. With SCIFIO, we have now done that. The 2.0.0-beta-7 release is using SCIFIO 0.1.0—File Open and File Save are now extensible—so this ticket is complete.

Remaining tickets about improving the existing I/O mechanism have been migrated to ticket #1920.

comment:18 Changed 6 years ago by bdezonia

  • Blocking 1923 added

comment:19 Changed 6 years ago by bdezonia

  • Blocking 564 removed

(In #564) Fixed with commit 8d63e7ef9cbe902a0ad316c118b9b30a09c6f1d6

comment:20 Changed 5 years ago by curtis

  • Status changed from assigned to closed
  • Resolution set to fixed

Added ImgPlus.getProperties() API in  imglib/imglib:46feae1f.

Last edited 5 years ago by curtis (previous) (diff)
Note: See TracTickets for help on using tickets.