Abstract
Research scientists and medical professionals use imaging technology, such as computed tomography (CT) and magnetic resonance imaging (MRI) to measure a wide variety of biological and physical objects. The increasing sophistication of imaging technology creates demand for equally sophisticated computational techniques to analyze and visualize the image data. Analysis and visualization codes are often crafted for a specific experiment or set of images, thus imaging scientists need support for quickly developing codes that are reliable, robust, and efficient.
In this paper, we present the design and implementation of Diderot, which is a parallel domain-specific language for biomedical image analysis and visualization. Diderot supports a high-level model of computation that is based on continuous tensor fields. These tensor fields are reconstructed from discrete image data using separable convolution kernels, but may also be defined by applying higher-order operations, such as differentiation (∇). Early experiments demonstrate that Diderot provides both a high-level concise notation for image analysis and visualization algorithms, as well as high sequential and parallel performance.
- A. W. Appel and T. Jim. Shrinking lambda expressions in linear time. JFP, 7: 515--540, Sept. 1997. Google Scholar
Digital Library
- S. R. Aylward and E. Bullitt. Initialization, noise, singularities, and scale in height ridge traversal for tubular object centerline extraction. IEEE TMI, 21 (2): 61--75, Feb 2002.Google Scholar
Cross Ref
- R. Bartels, J. Beatty, and B. Barsky. An Introduction to Splines for Use in Computer Graphics and Geometric Modeling. Morgan Kaufmann Publishers, New York, NY, 1987. Google Scholar
Digital Library
- P. J. Basser, S. Pajevic, C. Pierpaoli, J. Duda, and A. Aldroubi. In vivo fiber tractograpy using DT-MRI data. phMagnetic Resonance in Medicine, 44: 625--632, 2000.Google Scholar
- P. Briggs, K. D. Cooper, , and L. T. Simpson. Value numbering. SP&E, 27 (6): 701--724, June 1997. Google Scholar
Digital Library
- K. J. Brown, A. K. Sujeeth, H. Lee, T. Rompf, H. Chafi, M. Odersky, and K. Olukotun. A heterogeneous parallel framework for domain-specific languages. In PACT '11, Oct. 2011. Google Scholar
Digital Library
- B. Cabral and L. C. Leedom. Imaging vector fields using line integral convolution. In SIGGRAPH '93, pages 263--270, New York, NY, Aug. 1993. ACM. Google Scholar
Digital Library
- H. Chafi, Z. Devito, A. Moors, T. Rompf, A. K. Sujeeth, P. Hanrahan, M. Odersky, and K. Olukotun. Language virtualization for heterogeneous parallel computing. In OOPSLA '10, pages 835--847, Oct. 2010. Part of the Onward! 2010 Conference. Google Scholar
Digital Library
- R. Cytron, J. Ferrante, B. K. Rosen, M. N. Wegman, and F. K. Zadeck. Efficiently computing static single assignment form and the control dependence graph. ACM TOPLAS, 13 (4): 451--490, Oct 1991. Google Scholar
Digital Library
- Z. DeVito, N. Joubert, F. Palacios, S. Oakley, M. Medina, M. Barrientos, E. Elsen, F. Ham, A. Aiken, K. Duraisamy, E. Darve, J. Alonso, and P. Hanrahan. Liszt: A domain specific language for building portable mesh-based PDE solvers. In SC '11, pages 1--12, Nov. 2011. Google Scholar
Digital Library
- D. Eberly. Ridges in Image and Data Analysis. Kluwer Academic Publishers, Boston, MA, 1996.Google Scholar
- Using vector instructions through built-in functions. Free Software Foundation. URL http://gcc.gnu.org/onlinedocs/gcc/Vector-Extensions.html.Google Scholar
- M. Hašan, J. Wolfgang, G. Chen, and H. Pfister. Shadie: A domain-specific language for volume visualization. Draft paper; available at http://miloshasan.net/Shadie/shadie.pdf, 2010.Google Scholar
- L. Ibanez and W. Schroeder. phThe ITK Software Guide. Kitware Inc., 2005.Google Scholar
- IDL: Interactive Data Language. ITT Visual Information Solutions. http://www.ittvis.com/ProductServices/IDL.aspx.Google Scholar
- The OpenCL Specification (Version 1.1). Khronos OpenCL Working Group, 2010. Available from http://www.khronos.org/opencl.Google Scholar
- G. Kindlmann, R. Whitaker, T. Tasdizen, and T. Moller. Curvature-based transfer functions for direct volume rendering: Methods and applications. In VIZ '03, pages 67--74, Los Alamitos, CA, Oct. 2003. IEEE Computer Society Press. Google Scholar
Digital Library
- MATLAB -- The language of technical computing. The Mathworks, Inc. http://www.mathworks.com/products/matlab.Google Scholar
- P. McCormick, J. Inman, J. Ahrens, J. Mohd-Yusof, G. Roth, and S. Cummins. Scout: A data-parallel programming language for graphics processors. Journal of Parallel Computing, 33: 648--662, Nov. 2007. ISSN 0167-8191. Google Scholar
Digital Library
- E. H. W. Meijering, W. J. Niessen, and M. A. Viergever. Quantitative evaluation of convolution-based methods for medical image interpolation. phMedical Image Analysis, 5 (2): 111--126, June 2001.Google Scholar
- M. D. Meyer, P. Georgel, and R. T. Whitaker. Robust particle systems for curvature dependent sampling of implicit surfaces. In SMI '05, pages 124--133, June 2005. Google Scholar
Digital Library
- NVIDIA CUDA C Programming Guide (Version 4.0). NVIDIA, May 2011. Available from http://developer.nvidia.com/category/zone/cuda-zone.Google Scholar
- M. Puschel, J. Moura, J. Johnson, D. Padua, M. Veloso, B. Singer, J. Xiong, F. Franchetti, A. Gacic, Y. Voronenko, K. Chen, R. Johnson, and N. Rizzolo. SPIRAL: Code generation for DSP transforms. Proc. of the IEEE, 93 (2): 232--275, Feb. 2005.Google Scholar
Cross Ref
- G. X. Ritter and P. D. Gader. Image algebra techniques for parallel image processing. JPDC, 4 (1): 7--44, Feb. 1987. Google Scholar
Digital Library
- NumPy: Numerical Python. Scientific Tools for Python. http://numpy.scipy.org.Google Scholar
- D. Skillicorn, J. M. Hill, and W. McColl. Questions and answers about BSP. Scientific Programming, 6 (3): 249--274, 1997.Google Scholar
Cross Ref
- B. Spain. phTensor Calculus: A Concise Course. Dover, Mineola, NY, 2003.Google Scholar
- A. K. Sujeeth, H. Lee, K. J. Brown, T. Rompf, H. Chafi, M. Wu, A. R. Atreya, M. Odersky, and K. Olukotun. Optiml: An implicitly parallel domain-specific language for machine learning. In ICML '11, June 2011.Google Scholar
- NRRD: Nearly Raw Raster Data. Teem Library, http://teem.sf.net/nrrd.Google Scholar
- Teem website at http://teem.sf.net. Teem Library.Google Scholar
- L. G. Valiant. A bridging model for parallel computation. CACM, 33 (8): 103--111, Aug. 1990. Google Scholar
Digital Library
Index Terms
Diderot: a parallel DSL for image analysis and visualization
Recommendations
Diderot: a parallel DSL for image analysis and visualization
PLDI '12: Proceedings of the 33rd ACM SIGPLAN Conference on Programming Language Design and ImplementationResearch scientists and medical professionals use imaging technology, such as computed tomography (CT) and magnetic resonance imaging (MRI) to measure a wide variety of biological and physical objects. The increasing sophistication of imaging technology ...
MARGA: Multispectral Adaptive Region Growing Algorithm for brain extraction on axial MRI
Brain extraction, also known as skull stripping, is one of the most important preprocessing steps for many automatic brain image analysis. In this paper we present a new approach called Multispectral Adaptive Region Growing Algorithm (MARGA) to perform ...







Comments