Loading ...
Sorry, an error occurred while loading the content.

Image Load On Demand

Expand Messages
  • hairu526
    I am creating a program that will extract annotations from presentation states located on a network drive. There are also very large ( 30MB) DICOM images on
    Message 1 of 2 , Oct 2, 2008
    View Source
    • 0 Attachment
      I am creating a program that will extract annotations from
      presentation states located on a network drive. There are also very
      large (>30MB) DICOM images on this drive. This involves
      searching the drive for files, checking to see if they are DICOM
      presentation states, and then extracting the annotations from them. I
      can successfully differentiate between presentation states and images
      by checking for tags specific to them. My problem is that pixelmed is
      pulling the entire DICOM across the network when I really just need to
      check a little meta-data. Is there a way to only load the portions of
      the DICOM that are requested?

      The following is portion of the detection code...

      AttributeList rootList = new AttributeList();
      rootList.read(file.getAbsolutePath());

      if (rootList.get(TagFromName.ReferencedSeriesSequence) != null ||
      rootList.get(TagFromName.GraphicAnnotationSequence) != null ||
      rootList.get(TagFromName.GraphicLayerSequence) != null)
      {
      return true;
      }
    • David Clunie
      Try: AttributeList.read(DicomInputStream i, AttributeTag tag) and use TagFromName.PixelData as the tag. From the javadoc: Read all the DICOM attributes in the
      Message 2 of 2 , Oct 2, 2008
      View Source
      • 0 Attachment
        Try:

        AttributeList.read(DicomInputStream i, AttributeTag tag)

        and use TagFromName.PixelData as the tag.

        From the javadoc:

        "Read all the DICOM attributes in the stream until the specified
        tag is encountered".

        See:

        "http://www.dclunie.com/pixelmed/software/javadoc/com/pixelmed/dicom/AttributeList.html#read(com.pixelmed.dicom.DicomInputStream,%20com.pixelmed.dicom.AttributeTag)"


        hairu526 wrote:
        > I am creating a program that will extract annotations from
        > presentation states located on a network drive. There are also very
        > large (>30MB) DICOM images on this drive. This involves
        > searching the drive for files, checking to see if they are DICOM
        > presentation states, and then extracting the annotations from them. I
        > can successfully differentiate between presentation states and images
        > by checking for tags specific to them. My problem is that pixelmed is
        > pulling the entire DICOM across the network when I really just need to
        > check a little meta-data. Is there a way to only load the portions of
        > the DICOM that are requested?
        >
        > The following is portion of the detection code...
        >
        > AttributeList rootList = new AttributeList();
        > rootList.read(file.getAbsolutePath());
        >
        > if (rootList.get(TagFromName.ReferencedSeriesSequence) != null ||
        > rootList.get(TagFromName.GraphicAnnotationSequence) != null ||
        > rootList.get(TagFromName.GraphicLayerSequence) != null)
        > {
        > return true;
        > }
      Your message has been successfully submitted and would be delivered to recipients shortly.