Giter Site home page Giter Site logo

marlin59168 / vscode-dicom-dump Goto Github PK

View Code? Open in Web Editor NEW

This project forked from smikitky/vscode-dicom-dump

0.0 0.0 0.0 1.14 MB

A vscode extension that dumps DICOM tags

Home Page: https://marketplace.visualstudio.com/items?itemName=smikitky.vscode-dicom

License: MIT License

JavaScript 1.16% TypeScript 98.84%

vscode-dicom-dump's Introduction

DICOM Dump for Visual Studio Code

A Visual Studio Code (vscode) extension that dumps DICOM tag contents. DICOM is a standard file format for medical images.

Usage

Screenshot

Open a context menu on a DICOM file and select "DICOM: Dump DICOM tags".

Features

  • Dumps all DICOM tags in human-readable format (except binary data).
  • Understands value representation (VR) of most standard DICOM tags.
  • Provides a hover for some hard-to-remember DICOM keywords and UIDs.
    Screenshot
  • Basic support for character encodings.
  • 100% JavaScript. Does not require any external binary dependencies like DCMTK.

Configuration

  • dicom.alwaysShowMenu (default = false) controls the visibility of the dump menus. When set to true, the menus will show up regardless of the file extension. When set to false, the menus will show up when the extension of the file is *.dcm or *.dicom.

  • dicom.showPrivateTags (default = false) controls the visibility of DICOM private tags. Set this to true to dump everything. Note that many private tags have 'UN' (unknown) VR type, which means this extension does not know how to stringify them.

  • dicom.dictionary (default = {}) modifies or adds entries to the standard DICOM dictionary. Example:

    {
      "dicom.dictionary": {
        "01F51247": { "vr": "US", "name": "myPrivateNumericalTag" },
        "01F51248": { "vr": "LO", "name": "myPrivateTextTag", "forceVr": true }
      }
    }

    forceVr: true will forcibly overwrite the VR type even if another type is explicitly specified in the DICOM file. This may allow you to sniff the contents of some private tags.

  • dicom.searches (default = []) provides a quick link to your favorite DICOM search engine when the mouse hovers on a tag string. Example:

    {
      "dicom.searches": [
        {
          "title": "Search {GGGG},{EEEE} on Google",
          "url": "https://www.google.com/search?q=DICOM%20{GGGG},{EEEE}"
        }
      ]
    }

    Four keywords ({GGGG}, {gggg}, {EEEE} and {eeee}) will be replaced.

Troubleshooting

My DICOM file does not load at all!: Can you open that file with dicom-parser's online demo? If not, probably your DICOM file is not standard-compliant, and there is little I can do. Some DICOM implementations are tolerant enough to open mildly broken files. Just because you can view your file with <insert your favorite viewer here> does not mean the file is not corrupted. If you could open the file with the demo above and are still getting an error from this extension, feel free to report as a bug.

The "Dump DICOM tags" context menu doesn't show up!: By default, the menus will be displayed only when the file extension is *.dcm or *.dicom. Please check the dicom.alwaysShowMenu option.

Patient/institution names are garbled!: Currently the character encoding support is limited and buggy, and it's partially due to the fact that DICOM uses rare character encodings not supported by iconv-lite. Also note that some DICOM implementations store multibyte strings with a totally wrong encoding (e.g., Japanse SJIS). I'd rather not support all sorts of malformed files "in the wild", but reasonable suggestions and PRs are welcome.

Known Issues / Limitations

USE AT YOUR OWN RISK. DO NOT USE THIS FOR CLINICAL PURPOSES.

  • Cannot display the image (pixel/voxel data) itself.
  • It's not possible to modify DICOM files.

Bugs / PRs

Plase use GitHub's issue system.

Acknowledgement

This extension is based on the following awesome packages.

vscode-dicom-dump's People

Contributors

smikitky avatar dependabot[bot] avatar md2perpe avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.