P4002 - SAR Metadata Content Standard Working Group

SAR Metadata WG: Meeting 24 Agenda & Minutes

Meeting Agenda

1. Call to Order
2. Approval of Agenda
3. Approval of Minutes of previous mtg
4. IEEE Patent Policy
5. Discussion of Draft Standard
6. Other Business
7. Future Meetings
8. Adjourn

Minutes of SAR Metadata Std Working Group Meeting
Oct 22, 2020

1. Call to order
attendees:
Leland Pierce
Marc Trachy
Mike Stewart
Vanessa Lalitte

===================================
2. Approval of agenda
===================================
Mike moved, MArc seconded, no discussion, no opposition
approved.

===================================
3. Approval of minutes of previous meeting
===================================
Mike moved, Marc seconded, no discussion, no opposition
approved.

===================================
4. IEEE Patent and Copyright Policy
===================================
1. slides 1-4 were shown and discussed by the chair
2. Chair provided an opportunity for participants to identify patent
claim(s)/patent application claim(s) and/or the holder of patent
claim(s)/patent application claim(s) of which the participant is
personally aware and that may be essential for the use of that
standard.

no response from attendees.

===================================
5. Discussion of current draft standard
===================================
Discuss details of what to do for some of the recent suggestions from Marc.

All items are included, with those in red giving what was accomplished at the meeting.

1. Replace /SICD/ImageCreation with a lineage
current SICD image-creation metadata is limited, if change to
lineage can put more info there for humans.
need exact details.
chuck has presented some ideas on this already.
chuck mentioned that error-popagation could also be added.
Leland: perhaps we need to survey other SAR formats for what they
include.
>> ACTION: Someone needs to make this more specific
>> Chuck volunteered
Looked at the XML that Chuck created for this.
Some felt this was nice, but too vague.
No specific place for processing parameters.
General agreement not to use it.

2. Remove AMP8I_PHS8I (likely PixelType won’t appear in the IEEE
version anyway)
Wade has seen it used, so wants to keep it.
the ISO range-type could be used instead to describe the structure
of the data for each pixel.
>> ACTION: Someone needs to look at the ISO range-type and come up
>> with a way to use it instead of what is currently specified.
>> Chuck volunteered
Looked at the XML that Chuck created for this.
After some discussion it was felt that we didn’t really want to deal with bits and bytes related to the data encoding. Rather have the container of the data specify these. For metadata, make it clear that the data is re/im or amp/phz.
maybe a place for the filename for the data?
Leland volunteered to come up with details.

3. /SICD/ImageData/ValidData:
Make required and to include no zero filled pixels,
(may discard some valid pixels for simplification)
Chuck says that there is no ISO concept for this.
>> ACTION: make required.

4. /SICD/ImageData/SCPPixel: Allow to be non-integer
make it real-valued
center of pixel in SICD
need to look at implications to other metadata that uses line and
column values
the PHD std does this
>> ACTION: Someone needs to look at other metadata that is affected by
>> this change to make sure it works.
>> Get Wade to do it.

5. /SICD/GeoData/EarthModel: Replace with an ITRF version?
currently required to be wgs84.
wgs84 is not precise enough in its definition for some applications
replacing with a specific ITRF would be better
>> ACTION: Someone needs to look at what ITRF does and tell the group
>> what they think about using it. In particular, what “strings” do we
>> allow for the value of this parameter?
>> Marc volunteered
Marc suggested we leave it as is, with an additional optional parameter specifying the GPS-week-number of the WGS84 model, as it changes weekly.

6. /SICD/GeoData/GeoInfo: Remove
this is basically a list of “lat, lon, feature description”
largely NGA-specific
everyone agreed to remove it.
>> ACTION: remove it

7. /SICD/Grid/ImagePlane: Remove
an enumeration: SLANT, GROUND, other
historically has been poorly-populated: inaccurate
however, may still be useful for some applications
>> ACTION: keep, but someone needs to provide better guidance in the document
>> concerning how to populate it in a variety of circumstances.
>> Leland volunteered
Leland presented his new paragraph.
Everyone agreed that “spherical” for the ground-projection should be “cylindrical”.
Leland will change it to:
“This field is meant to be approximate, for humans rather than
computation. Hence, SLANT may mean the slant plane instantaneous at the center-of-aperture time, or an average across the aperture, or similar ideas.
Also, GROUND may mean projected onto a cylindrical surface [refer to figure4.9-1], or a flat plane that is local-level, tangent to the ellipsoid at the nadir point, or some kind of average elevation model value.
Use OTHER if none of these comes close to what is used.”

8. /SICD/Grid/Type: Document which ones can go with which image formation algorithms
info in V3. perhaps include in our std?
>> ACTION: Need to discuss again.
>> Marc volunteered
Marc documented this:
RGAZIM: PFA and RGAZCOMP
RGZERO: RMA/INCA
XRGYCR: Any
XCTYAT: Any
PLANE: Any
yet to put in the prose, in the appropriate location in the document.

9. /SICD/Grid/TimeCOAPoly: Document more precise definition of center
of aperture time
OK
>> ACTION: Some one needs to write this definition.
>> “Time which corresponds to the center of the spectral support.”

10. /SICD/Grid/*/ImpRespWid: Remove
most other stds have this, but not useful
maybe just add more docs on how to use it?
code exists on github.
>> ACTION: Need to dicsuss this again
>> really want to get rid of it, since it’s imprecise and used in stupid ways.
>> perhaps write up how to use the correct param (the spectral BW) instead?
>> need to pass by Wade.

11. /SICD/Grid/*/Sgn: Remove (force -1, producers must conjugate if they would have had +1)
SICD has 2: 1 for row, 1 for col
only 1 would be better, none even better
all other phases need to be conjugated if need to change it
some producers screwed this up
need more docs
>> ACTION: I think we agreed that this would be good.
>> Someone needs to write it up so producers do it correctly.
>> decided to just remove +1 from the enum, so -1 is required.

12. /SICD/Grid/*/KCtr: Either rename to KOrigin (my preference) and force producers to make it constant across the image or make it variable across the image.
possible to make constant
currently specified as a constant, but it actually varies across the image
need to describe the variation across the image
cosmo-skymed/INCA: KCtr is const across the image,
but delta-KCOA is not, in spotlight mode
PFA with slant deskew
perhaps rename to KOrigin so less confusing, or KZero. Give good defn.
>> ACTION: Need to discuss again.
>> rename to KOrigin and allow to make it variable across the image.
>> can bascially reuse the description of deltaKOA-poly for this.

13. /SICD/Grid/*/DeltaK1 /SICD/Grid/*/DeltaK2: Remove
limits of spectral support of image in each direction, or nyquist,
whichever is smaller
not helpful, especially if doing part of an image
calculating by yourself is best
>> ACTION: remove

14. /SICD/Grid/*/DeltaKCOAPoly: Make required
everyone agreed to make it required.
can be zero, but must be specified
>> ACTION: make required

15. /SICD/Grid/*/WgtFunct and /SICD/Grid/*/WgtType:
Replace with required consolidated structure where WindowName
and WgtFunct are required or force uniform weighting.
change to have new class, including:
WgtFunct, WindowName, WtFunc
and make all required
>> ACTION: Someone needs to design this new structure, along with
>> corresponding documentation.
>> Leland volunteered
currently:
==========
WgtType (optional)
windowName (1) (reqd) text
parameter (1..n) (optional) text (expect string: name=value)

WgtFunc (optional)
Wgt (1..NW) (reqd) doubles, 1 for each index.

Proposed:
==========
Weighting (required)
windowName (reqd) (1) (reqd) text
parameter (reqd) (1..n) text (expect string: name=value)
Wgt (reqd) (1..NW) doubles, 1 for each index.

no opposition

16. Add slowtime and frequency 4d grid
could take an hour to discuss
all possible if know image formation algo.
docs do not describe how to do it.
have provider do it using their image-formation-algo
general agreement, but need more details.
>> ACTION: Someone needs to come up with a plan to present to the group.
>> Marc volunteered

17. /SICD/Timeline/CollectStart: Change to reference time
everyone agreed
>> ACTION: change the name.

18. /SICD/Timeline/CollectDuration: Remove
everyone agreed
>> ACTION: remove

19. /SICD/IPP: Make required?
difficult to generate from some providers
need better docs so it will be populated correctly
general agreement
>> ACTION: Someone needs to generate better documentation.
>> come back to….
Mike volunteered to work on.

20. /SICD/Antenna/TwoWay: Remove
agreed. just use 2 1-way’s
>> ACTION: remove

21. ErrorStats
currently ecf posn uncertainty not required, but offset reqd for scp in image domain.
extend to radiometric and polarization params
need a confidence measure: a string
>> ACTION: Someone needs to make this more detailed.
>> Chuck volunteered

22. beamcomp
specify how applied: for example avg or specific beam value
>> ACTION: Someone needs to make this more detailed.
>> need to discuss more
Get Wade to work on it.

PFA:
23. move under ImageFormation… no argument
24. Krg, etc
originally interpolated spatial freq extents
not useful to anybody.
no argument against removal
25. STdeskew
currently: a flag if applied or not, plus a polynomial
can get from deltaKCOA
if a deskew has been applied that is not STdeskew, what then?
>> ACTIONS:
>> 23. move PFA under ImageFormation
>> 24. remove Krg
>> 25. Someone needs to make this more detailed.
>> Marc suggested we tell people to get this from KOrigin.
>> see Marc’s slides about 4d for ideas.

RMA/INCA
26. move under ImageFormation… no argument
27. R_CA_SCP
redundant, potentially incorrect
error has been noted to be 0.5m for some formats that also provide
tie points.
28. FreqZero
not needed if remove dopcentroidpoly
29. dopCentroidPoly
redundant
range rate more relevant.
both can be calculated from geometry
>> ACTIONS:
>> 26. move RMA/INCA under ImageFormation
>> 27. Someone needs to make this more detailed.
>> 28. remove FreqZero
>> 29. remove dopCentroidPoly
>> Perhaps someone needs to write something explaining how to
>> calculate these from the geometry?
>> decided to just remove it. no explanation

31. decided to pick beta-0 as the provided data, with equations in
spec giving eqns to convert to others:
rcs, sigma0, gamma0
>> ACTION: Someone needs to write the part explaining that data is
>> provided as Beta0, giving the definition, and also explaining
>> how to convert to the others: rcs, sigma0, gamm0
>> Should already be there in the docs, maybe not the conversion part, as that
>> requires “other” information that is not part of the spec.

bistatics:
some discussion as to whether to make this part of the std or just
stick to monostatic. no decision.
issue is that one needs to know it’s bistatic to process the metadata
correctly.
instead: metadata should make it clear
(32-35)
basically require that illuminator and receiver have names
that way if the same, know its monostatic.
make tx and rcv apc polynomials required and dump arp-poly since its
not precise enough.
probably need to add more params for this, including:
error-stats,
redefine scpcoa
needs further discussion
>> ACTION: Someone needs to make this more specific
>> decided that probably just having difft names for the
>> xmit and rcv antennas is good enough, as the other params are specific
>> enough that they work for mono- and bi-static.

philosophical issues:
36. do we require the producer to make guesses when info is less than
perfect? Can we devise a reasonable set of possibilities for how the
guess was arrived at?
need to do for params related to:
antenna
cal
errors
——————————–
some of the things we are considering making required are only
required for specific applications. keep optional?
an example: antenna pattern:
if only have 3db beamwidth, can provide a sampled pattern that
shows this, sampled sparsely.
or, knowing the kind of antenna, could provide a modeled version if
the pattern has not been measured
or, have in-lab measured but not attached to platform
or, have in-lab measured and attached to platform
or, have a field-campaign that measured the pattern during the
mission: once or many times.
etc.
—————
This can potentially be an arbitrary process that was used to create
the “estimate”. so how can we capture that?
————–
for cal, for example, lets say there is an AGC somewhere, and it is
not captured in the metadata, so there is no way to compare numbers
between different datatakes, only relative (agc is constant for a
datatake). not likely an issue for modern sensors, but for conversion
of old data to this std.
>> ACTION: Someone needs to make this more specific
>> since this can be arbitrarily complex,
>> and hence not useful to a computer program,
>> we decided that it should be free-form text. Useful to a human at least.

37. segmentList depends on grid.
since the segmentList is related to data that is not part of this
file, it seems that the data catalog is the best place to find
related data instead of putting it here.
agreement to remove.
>> ACTION: Remove

38. RadarCollection:
some params are related to the collection and NOT this specific
data-file.
such as collectDuration as opposed to processedDuration
general agreement that this should be removed.
need a more specific suggestion that goes into each param in
RadarCollection.
>> ACTION: remove entirely

39,40,41:
require 2 1-way patterns and dump the 2-way pattern
this simplifies code that is using this
2 1-ways is also more useful for some applications where only one
of the patterns is relevant.
Mike Stewart brought up a particular example with cosmoskymed
where only the 2-way is provided, and the pattern is quite messy
due to the multiplication of 2 different 1-way patterns.
need to explain why 2 1-way is better/required in the spec.
>> ACTION: Someone needs to explain this in the spec.
>> already there. just look at it and make sure…

42. matchinginfo:
agreed to remove
>> ACTION: Remove

Atmosphere:
43-45. add tropo/iono corrections
not relevant for older, low-res systems,
but most new systems are doing this, and users need to know what
they did so they can un-do/re-do as needed.
needs further effort
>> ACTION: Someone needs to make this more specific
>> use the ISO params for this for now:

CA_AtmosphericPropagationAndEarthMotion

attenuationModel string 0..1
attenuationModelParameters real 0..*
ionosphericDelayModel string 0..1
ionosphericDelayModelParameters real 0..*
troposphericDryDelayModel string 0..1
troposphericDryDelayModelParameters real 0..*
troposphericWetDelayModel string 0..1
troposphericWetDelayModelParameters real 0..*
FaradayRotationModel string 0..1
FaradayRotationModelParameters real 0..*
earthMotionModel string 0..1
earthMotionModelParameters real 0..*

 

 

 

 

===================================
6. Other business?
===================================

Leland brought up the discovery data that was suggested by ISO19115-1.
Metadata Reference Information: unique ID for this record
Resource title: a title for this dataset
(perhaps: SAR, platform name, instrument name, mode, …)
Resource Reference Date: a date related to this dataset
(when the metadata was created/last-modified?)
Resource Identifier: unique identifier for this dataset
(likely the ID from the producer)
Resource Point of Contact: name of organization responsible for this dataset
Geographic Location: approx bounding-box in lat/lon, wgs84
Resource Language: English
Resource Topic Category: ??
Spatial Resolution: either 1 or 2 numbers:
range-az for slant range, easting-northing for orth’d
Resource Type: ?? (maybe come up with a set of SAR product types?)
Resource Abstract: a paragraph describing the SAR mode, freq, etc.
Extent Information: temporal extent: date/time of start/end datatake
Resource Lineage: source of data, and algorithms applied
the platform/instrument/mode, and processing level/name
Resource On-line Link: URL where to get the data
Keywords: …whatever we want…??
what should these be?
Constraints on Resoure Access and Use: if secret, etc.
Metadata Date Stamp: when created or last modified
Metadata Point of Contact: organization that created it.

We went over it, but the vagueness of it was disturbing.
Marc then suggested that we avoid dealing with specifying this, as any agency that provided a look-up tool did it their own way, and they just “mine” the rest of the metadata for what they need.
General agreement.

===================================
7. Next meeting
===================================
the group wanted to have the next meeting in 2 weeks, at 11am.
Our next meeting will be on :
Thursday, Nov 5, 11AM Eastern time

===================================
8. Adjourn
===================================
Marc motioned, Mike seconded. no opposition. passed