Difference between revisions of "2015 Summer Project Week:Dicom parsing with DCMJS"

From NAMIC Wiki
Jump to: navigation, search
Line 8: Line 8:
 
* Michael Onken
 
* Michael Onken
 
* Steve Pieper
 
* Steve Pieper
 +
* Yves Martelli
  
 
==Project Description==
 
==Project Description==
Line 41: Line 42:
 
</div>
 
</div>
 
</div>
 
</div>
 +
 +
== Benchmark ==
 +
Benchmark of DICOM parser libraries using benchmark.js. Units are in operations/seconds.
 +
{| class="wikitable"
 +
|- bgcolor="#eee"
 +
! &nbsp; !! dcmjs-nico !! &nbsp; !! dicomParser !! &nbsp; !! dwv !! &nbsp;
 +
|- bgcolor="#eee"
 +
! &nbsp; !! ff !! chrome !! ff !! chrome !! ff !! chrome
 +
|-
 +
| gdcm-CT-MONO2-8-abdo|| 320|| 112|| 16115|| 9974|| 4551|| 3640
 +
|-
 +
| gdcm-CR-MONO1-10-chest|| 249|| 83.13|| 8412|| 9004|| 3603|| 2804
 +
|-
 +
| osirix-toutatix-100|| 170|| 48.65|| 3245|| 3843|| 1411|| 995
 +
|-
 +
| osirix-goudurix|| 189|| 53.97|| 6346|| 3995|| 1885|| 1363
 +
|-
 +
| dicompyler-ct.0|| 187|| 60.86|| 8414|| 5156|| 2612|| 1930
 +
|-
 +
| gdcm-US-RGB-8-epicard|| 148|| 54.04|| 10418|| 10217|| 31.42|| 256
 +
|-
 +
| gdcm-US-RGB-8-esopecho|| 501|| 110|| 10309|| 10198|| 4642|| 3340
 +
|- bgcolor="#eee"
 +
! Average !! 252!! 75!! 9037!! 7484!! 2676!! 2047
 +
|-
 +
| &nbsp; || &nbsp; || &nbsp; || bgcolor="#eee" | &nbsp; || bgcolor="#eee" | 3.4 || bgcolor="#eee" | &nbsp; || &nbsp;
 +
|-
 +
| &nbsp; || &nbsp; || &nbsp; || &nbsp; || bgcolor="#eee" | &nbsp; || bgcolor="#eee" | 3.7 || bgcolor="#eee" | &nbsp;
 +
|-
 +
| &nbsp; || bgcolor="#eee" | &nbsp; || bgcolor="#eee" | 0.03 || bgcolor="#eee" | &nbsp; || &nbsp; || &nbsp; || &nbsp;
 +
|-
 +
|&nbsp; || &nbsp; || bgcolor="#eee" | &nbsp; || bgcolor="#eee" | 0.01 || bgcolor="#eee" | &nbsp; || &nbsp; || &nbsp;
 +
|}

Revision as of 14:59, 24 June 2015

Home < 2015 Summer Project Week:Dicom parsing with DCMJS

Key Investigators

  • Nicolas Rannou
  • Michael Onken
  • Steve Pieper
  • Yves Martelli

Project Description

Objective

  • Define target DICOM types
  • Define a good workflow to parse targets with DCMJS.
  • Define required JS models to support the workflow.
  • Evaluate DicomParser from cornerstone team.

Approach, Plan

  • Talk with DICOM/DCMTK experts to get some feedback on best strategy.
  • Write a demo to showcase js models and dicom parsing workflows.

Progress

  • Evaluation of current solutions
    • yves:
      • pros: fast
      • cons: single frame and need to parse dicom header by hand in JS later on
    • dicomparser: same
    • dcmjs:
      • pro: relies on dcmtk, (almost) no need to manually parse dicom header by hand
      • cons: slower (150ms for dcmdump vs 30ms for other solutions)
    • note: compilation of dcmjs with -o3 or -of drasticly improves performance of dcmjs
  • Proposed workflow
  • Take dicom segmentations/models into account
  • Testing database

Benchmark

Benchmark of DICOM parser libraries using benchmark.js. Units are in operations/seconds.

  dcmjs-nico   dicomParser   dwv  
  ff chrome ff chrome ff chrome
gdcm-CT-MONO2-8-abdo 320 112 16115 9974 4551 3640
gdcm-CR-MONO1-10-chest 249 83.13 8412 9004 3603 2804
osirix-toutatix-100 170 48.65 3245 3843 1411 995
osirix-goudurix 189 53.97 6346 3995 1885 1363
dicompyler-ct.0 187 60.86 8414 5156 2612 1930
gdcm-US-RGB-8-epicard 148 54.04 10418 10217 31.42 256
gdcm-US-RGB-8-esopecho 501 110 10309 10198 4642 3340
Average 252 75 9037 7484 2676 2047
        3.4    
          3.7  
    0.03        
      0.01