use Interfile header to wrap other file formats
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 160
- Forks
- 113
- Avg merge
- 12d 15h
- Merged PRs (30d)
- 1
Description
In a discussion with @ashgillman and @rijobro we thought it would be good to be able to read file formats that don't have all the information we need (e.g. nifti doesn't supply timing info). It could be simple enough to use the Interfile infrastructure to do this. Suppose we need to read A.nii We could use an Interfile header that points to A.nii which would be like
!INTERFILE :=
; new keyword, defaulting to "binary"
type of data file := binary|NIfTI|MetaIO|NRRD|ITK|DICOM
name of data file := A.nii
originating system :=...
patient position:=...
modality:=...
bed position keywords
radiotracer keywords
; some info for LPS (still under discussion)
transformation to xyz vendor LPS
!GENERAL DATA :=
!GENERAL IMAGE DATA :=
!type of data := PET
!PET STUDY (General) :=
!PET data type := Image
process status := Reconstructed
; would have to match nii number
number of time frames := 1
; normal time frame info
!END OF INTERFILE :=
we would have to decide what to do if information is present in both the Interfile header and the native file format (e.g. with DICOM) but is inconsistent.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the existing Interfile infrastructure and the readers for NIfTI, MetaIO, NRRD, ITK, and DICOM. Clarify the header syntax, supported native formats, and precedence when metadata conflicts; done means a defined, agreed approach for wrapping these formats.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- data
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100