2015 Summer Project Week:Dicom parsing with DCMJS
From NAMIC Wiki
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
- note: compilation of dcmjs with -o3 or -of drasticly improves performance of dcmjs
- Proposed workflow
- https://docs.google.com/drawings/d/1BX0NBIDPrrM-JGk9b1awL_w57f9rMvdTJSeVjT9bM5U
- note: workflow relies on new dcmtk functionnalities. It will have to be evaluated in term of performance.
- https://github.com/andywer/threadpool-js
- Take dicom segmentations/models into account
- DICOM testing database discussion with web-torrents
Benchmark
Benchmark of DICOM parser libraries using benchmark.js (what-do-the-results-from-benchmark-js-mean).
These results were obtained on a Lenovo Flex2 laptop (Intel Core i3-4030U) under Microsoft Windows 8.1 using Mozilla Firefox (ff) 38.0.5 and Google Chrome v43.0.
Parsers: dcmjs (3fe78dd), dicomParser (v1.0.2) and dwv (v0.10.0).
Units are in operations/seconds.
dcmjs | 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 |