Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

ProxImaL: efficient image optimization using proximal algorithms

Published: 11 July 2016 Publication History

Abstract

Computational photography systems are becoming increasingly diverse, while computational resources---for example on mobile platforms---are rapidly increasing. As diverse as these camera systems may be, slightly different variants of the underlying image processing tasks, such as demosaicking, deconvolution, denoising, inpainting, image fusion, and alignment, are shared between all of these systems. Formal optimization methods have recently been demonstrated to achieve state-of-the-art quality for many of these applications. Unfortunately, different combinations of natural image priors and optimization algorithms may be optimal for different problems, and implementing and testing each combination is currently a time-consuming and error-prone process. ProxImaL is a domain-specific language and compiler for image optimization problems that makes it easy to experiment with different problem formulations and algorithm choices. The language uses proximal operators as the fundamental building blocks of a variety of linear and nonlinear image formation models and cost functions, advanced image priors, and noise models. The compiler intelligently chooses the best way to translate a problem formulation and choice of optimization algorithm into an efficient solver implementation. In applications to the image processing pipeline, deconvolution in the presence of Poisson-distributed shot noise, and burst denoising, we show that a few lines of ProxImaL code can generate highly efficient solvers that achieve state-of-the-art results. We also show applications to the nonlinear and nonconvex problem of phase retrieval.

Supplementary Material

ZIP File (a84-heide-supp.zip)
Supplemental files.
MP4 File (a84.mp4)

References

[1]
Almeida, M., and Figueiredo, M. 2013. Frame-based image deblurring with unknown boundary conditions using the alternating direction method of multipliers. In Proc. ICIP, 582--585.
[2]
Attouch, H., Bolte, J., and Svaiter, B. F. 2011. Convergence of descent methods for semi-algebraic and tame problems: proximal algorithms, forward--backward splitting, and regularized Gauss--Seidel methods. Mathematical Programming 137, 1, 91--129.
[3]
Beck, A., and Teboulle, M. 2009. A fast iterative shrinkage-thresholding algorithm for linear inverse problems. SIAM Journal on Imaging Sciences 2, 1, 183--202.
[4]
Becker, S., Candès, E., and Grant, M. 2011. Templates for convex cone problems with applications to sparse signal recovery. Mathematical Programming Computation 3, 3, 165--218.
[5]
Bernstein, G. L., Shah, C., Lemire, C., DeVito, Z., Fisher, M., Levis, P., and Hanrahan, P. 2015. Ebb: A DSL for physical simluation on CPUs and GPUs. arXiv e-Print 1506.07577.
[6]
Bertalmio, M., Sapiro, G., Caselles, V., and Ballester, C. 2000. Image inpainting. In Proc. SIGGRAPH, 417--424.
[7]
Boyd, S., Parikh, N., Chu, E., Peleato, B., and Eckstein, J. 2011. Distributed optimization and statistical learning via the alternating direction method of multipliers. Foundations and Trends in Machine Learning 3, 1, 1--122.
[8]
Brooke, A., Kendrick, D., Meeraus, A., and Rosenthal, R. 1988. GAMS: A user's guide. Course Technology.
[9]
Bruck, R. 1975. An iterative solution of a variational inequality for certain monotone operators in Hilbert space. Bulletin of the American Mathematical Society 81, 5 (Sept.), 890--892.
[10]
Chambolle, A., and Pock, T. 2011. A first-order primal-dual algorithm for convex problems with applications to imaging. Journal of Mathematical Imaging and Vision 40, 1, 120--145.
[11]
Danielyan, A., Katkovnik, V., and Egiazarian, K. 2012. BM3D frames and variational image deblurring. IEEE Trans. Image Processing 21, 4, 1715--1728.
[12]
Debevec, P. E., and Malik, J. 1997. Recovering high dynamic range radiance maps from photographs. In Proc. ACM SIGGRAPH, 369--378.
[13]
Diamond, S., and Boyd, S. 2015. Convex optimization with abstract linear operators. In Proc. IEEE ICCV.
[14]
Diamond, S., and Boyd, S. 2016. Matrix-free convex optimization modeling. In Optimization and Applications in Control and Data Sciences. Springer. To appear.
[15]
Diamond, S., and Boyd, S. 2016. CVXPY: A Python-embedded modeling language for convex optimization. Journal of Machine Learning Research. To appear.
[16]
Dupe, F.-X., Fadili, M., and Starck, J.-L. 2011. Inverse problems with Poisson noise: Primal and primal-dual splitting. In Proc. ICIP.
[17]
Esser, E., Zhang, X., and Chan, T. F. 2010. A general framework for a class of first order primal-dual algorithms for convex optimization in imaging science. SIAM Journal on Imaging Sciences 3, 4, 1015--1046.
[18]
Evangelidis, G. D., and Psarakis, E. Z. 2008. Parametric image alignment using enhanced correlation coefficient maximization. Pattern Analysis and Machine Intelligence, IEEE Transactions on 30, 10, 1858--1865.
[19]
Fattal, R., Lischinski, D., and Werman, M. 2002. Gradient domain high dynamic range compression. In ACM Trans. Graph., vol. 21, ACM, 249--256.
[20]
Fergus, R., Singh, B., Hertzmann, A., Roweis, S. T., and Freeman, W. T. 2006. Removing camera shake from a single photograph. ACM Trans. Graph. 25, 3, 787--794.
[21]
Fienup, J. R. 1982. Phase retrieval algorithms: a comparison. Applied Optics 21, 15, 2758--2769.
[22]
Figueiredo, M., and Bioucas-Dias, J. 2010. Restoration of Poissonian images using alternating direction optimization. IEEE Trans. Image Processing 19, 12, 3133--3145.
[23]
Foley, T., and Hanrahan, P. 2011. Spark: Modular, compos-able shaders for graphics hardware. ACM Trans. Graph. (SIGGRAPH) 30, 4.
[24]
Fougner, C., and Boyd, S. 2015. Parameter selection and preconditioning for a graph form solver. arXiv e-Print 1503.08366.
[25]
Geman, D., and Yang, C. 1995. Nonlinear image recovery with half-quadratic regularization. IEEE Trans. Image Processing 4,7, 932--946.
[26]
Giselsson, P., and Boyd, S. 2014. Diagonal scaling in Douglas-Rachford splitting and ADMM. In Proceedings of the 53rd IEEE Conference on Decision and Control.
[27]
Goldstein, T., and Osher, S. 2009. The split Bregman method for ℓ1 -regularized problems. SIAM Journal on Imaging Sciences 2, 2, 323--343.
[28]
Grant, M., and Boyd, S., 2014. CVX: MATLAB software for disciplined convex programming, version 2.1. http://cvxr.com/cvx.
[29]
Gu, J., Hitomi, Y., Mitsunaga, T., and Nayar, S. 2010. Coded Rolling Shutter Photography: Flexible Space-Time Sampling. In Proc. IEEE ICCP.
[30]
Hallac, D., Leskovec, J., and Boyd, S. 2015. Network lasso: Clustering and optimization in large graphs. In Proc. ACM SIGKDD, 387--396.
[31]
Heide, F., Rouf, M., Hullin, M. B., Labitzke, B., Heidrich, W., and Kolb, A. 2013. High-quality computational imaging through simple lenses. ACM Trans. Graph. 32, 5, 149.
[32]
Heide, F., Steinberger, M., Tsai, Y.-T., Rouf, M., Pajak, D., Reddy, D., Gallo, O., Liu, J., Heidrich, W., Egiazarian, K., Kautz, J., and Pulli, K. 2014. FlexISP: A flexible camera image processing framework. ACM Trans. Graph. (SIGGRAPH Asia) 33, 6.
[33]
Hestenes, M., and Stiefel, E. 1952. Methods of conjugate gradients for solving linear systems. J. Res. N.B.S. 49, 6, 409--436.
[34]
Joshi, N., Zitnick, C. L., Szeliski, R., and Kriegman, D. J. 2009. Image deblurring and denoising using color priors. In Proc. IEEE CVPR, 1550--1557.
[35]
Krishnan, D., and Fergus, R. 2009. Fast image deconvolution using hyper-Laplacian priors. In Advances in Neural Information Processing Systems, 1033--1041.
[36]
Krishnan, D., and Szeliski, R. 2011. Multigrid and multilevel preconditioners for computational photography. ACM Trans. Graph. 30, 6, 177.
[37]
Kunisch, K., and Pock, T. 2013. A bilevel optimization approach for parameter learning in variational models. SIAM Journal on Imaging Sciences 6, 2, 938--983.
[38]
Lehoucq, R., and Sorensen, D. 1996. Deflation techniques for an implicitly restarted Arnoldi iteration. SIAM Journal on Matrix Analysis and Applications 17, 4, 789--821.
[39]
Levin, A., Lischinski, D., and Weiss, Y. 2004. Colorization using optimization. In ACM Trans. Graph., vol. 23, 689--694.
[40]
Levin, A., Zomet, A., Peleg, S., and Weiss, Y. 2004. Seamless image stitching in the gradient domain. In Proc. ECCV. 377--389.
[41]
Li, G., and Pong, T. K. 2015. Global convergence of splitting methods for nonconvex composite optimization. arXiv e-Print 1407.0753.
[42]
Lofberg, J. 2004. YALMIP: A toolbox for modeling and optimization in MATLAB. In Proc. IEEE Int. Symp. Computed Aided Control Systems Design, 294--289.
[43]
Möllenhoff, T., Strekalovskiy, E., Moeller, M., and Cremers, D. 2015. The primal-dual hybrid gradient method for semiconvex splittings. SIAM Journal on Imaging Sciences 8, 2, 827--857.
[44]
Moreau, J.-J. 1965. Proximité et dualité dans un espace hilbertien. Bulletin de la Société mathématique de France 93, 273--299.
[45]
Ochs, P., Chen, Y., Brox, T., and Pock, T. 2014. iPiano: Inertial proximal algorithm for nonconvex optimization. SIAM Journal on Imaging Sciences 7, 2, 1388--1419.
[46]
O'Donoghue, B., Chu, E., Parikh, N., and Boyd, S. 2015. Operator splitting for conic optimization via homogeneous self-dual embedding. arXiv e-Print 1312.3039.
[47]
Paige, C., and Saunders, M. 1982. LSQR: An algorithm for sparse linear equations and sparse least squares. ACM Trans. Mathematical Software 8, 1, 43--71.
[48]
Parikh, N., and Boyd, S. 2013. Proximal algorithms. Foundations and Trends in Optimization 1, 3, 123--231.
[49]
Pock, T., and Chambolle, A. 2011. Diagonal preconditioning for first order primal-dual algorithms in convex optimization. In Proceedings of the IEEE International Conference on Computer Vision, 1762--1769.
[50]
Pock, T., Cremers, D., Bischof, H., and A. Chambolle. 2009. An algorithm for minimizing the Mumford-Shah functional. In Proceedings of the IEEE International Conference on Computer Vision, 1133--1140.
[51]
Ragan-Kelley, J., Barnes, C., Adams, A., Paris, S., Durand, F., and Amarasinghe, S. 2013. Halide: a language and compiler for optimizing parallelism, locality, and recomputation in image processing pipelines. ACM SIGPLAN 48, 6, 519--530.
[52]
Robini, M. C., and Zhu, Y. 2015. Generic half-quadratic optimization for image reconstruction. SIAM Journal on Imaging Sciences 8, 3, 1752--1797.
[53]
Rockafellar, R. 1976. Augmented Lagrangians and applications of the proximal point algorithm in convex programming. Mathematics of Operations Research 1, 2, 97--116.
[54]
Schmidt, U., and Roth, S. 2014. Shrinkage fields for effective image restoration. In Proc. IEEE CVPR, 2774--2781.
[55]
Sidky, E. Y., and Pan, X. 2008. Image reconstruction in circular cone-beam computed tomography by constrained, total-variation minimization. Physics in medicine and biology 53, 17, 4777.
[56]
Tian, L., and Waller, L. 2015. 3D intensity and phase imaging from light field measurements in an LED array microscope. Optica 2, 2, 104--111.
[57]
Tsai, Y.-T., Steinberger, M., Pajak, D., and Pulli, K. 2014. Fast ANN for high-quality collaborative filtering. In High Performance Graphics.
[58]
Udell, M., Mohan, K., Zeng, D., Hong, J., Diamond, S., and Boyd, S. 2014. Convex optimization in Julia. Workshop on High Performance Technical Computing in Dynamic Languages.
[59]
Vidimice, K., Wang, S.-P., Ragan-Kelley, J., and Matusik, W. 2013. OpenFab: A programmable pipeline for multi-material fabrication. ACM Trans. Graph. (SIGGRAPH) 32, 4.
[60]
Wytock, M., Wang, P.-W., and Zico Kolter, J. 2015. Convex programming with fast proximal and linear operators. arXiv e-Print 1511.04815.
[61]
Zhang, L., Wu, X., Buades, A., and Li, X. 2011. Color demosaicking by local directional interpolation and nonlocal adaptive thresholding. Journal of Electronic Imaging 20, 2, 023016--023016.
[62]
Zhu, Y. 2015. An augmented ADMM algorithm with application to the generalized lasso problem. Journal of Computational and Graphical Statistics, just-accepted.
[63]
Zoran, D., and Weiss, Y. 2011. From learning models of natural image patches to whole image restoration. In Proc. IEEE ICCV, 479--486.

Cited By

View all
  • (2024)PyProximal - scalable convex optimization in PythonJournal of Open Source Software10.21105/joss.063269:95(6326)Online publication date: Mar-2024
  • (2024)Temporal acoustic point holographyACM SIGGRAPH 2024 Conference Papers10.1145/3641519.3657443(1-11)Online publication date: 13-Jul-2024
  • (2024)EBDNet: Integrating Optical Flow With Kernel Prediction for Burst DenoisingIEEE Transactions on Circuits and Systems for Video Technology10.1109/TCSVT.2024.338386234:9(8456-8468)Online publication date: 1-Sep-2024
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Transactions on Graphics
ACM Transactions on Graphics  Volume 35, Issue 4
July 2016
1396 pages
ISSN:0730-0301
EISSN:1557-7368
DOI:10.1145/2897824
Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 11 July 2016
Published in TOG Volume 35, Issue 4

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. computational photography
  2. digital image processing
  3. optimization

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)97
  • Downloads (Last 6 weeks)9
Reflects downloads up to 16 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2024)PyProximal - scalable convex optimization in PythonJournal of Open Source Software10.21105/joss.063269:95(6326)Online publication date: Mar-2024
  • (2024)Temporal acoustic point holographyACM SIGGRAPH 2024 Conference Papers10.1145/3641519.3657443(1-11)Online publication date: 13-Jul-2024
  • (2024)EBDNet: Integrating Optical Flow With Kernel Prediction for Burst DenoisingIEEE Transactions on Circuits and Systems for Video Technology10.1109/TCSVT.2024.338386234:9(8456-8468)Online publication date: 1-Sep-2024
  • (2024)Accelerated Wirtinger Flow With Score-Based Image Priors for Holographic Phase Retrieval in Poisson-Gaussian Noise ConditionsIEEE Transactions on Computational Imaging10.1109/TCI.2024.345841810(1384-1399)Online publication date: 2024
  • (2024)RETRACTED ARTICLE: DCC-net network model for motion data management based on infrared light sensorOptical and Quantum Electronics10.1007/s11082-023-06249-856:4Online publication date: 31-Jan-2024
  • (2024)Light-in-Flight for a World-in-MotionComputer Vision – ECCV 202410.1007/978-3-031-72754-2_12(204-220)Online publication date: 29-Sep-2024
  • (2023)Iterative projection meets sparsity regularization: towards practical single-shot quantitative phase imaging with in-line holographyLight: Advanced Manufacturing10.37188/lam.2023.0064:1(1)Online publication date: 2023
  • (2023)Seeing Photons in ColorACM Transactions on Graphics10.1145/359243842:4(1-16)Online publication date: 26-Jul-2023
  • (2023)∇-Prox: Differentiable Proximal Algorithm Modeling for Large-Scale OptimizationACM Transactions on Graphics10.1145/359214442:4(1-19)Online publication date: 26-Jul-2023
  • (2023)Software-Defined Imaging: A SurveyProceedings of the IEEE10.1109/JPROC.2023.3266736111:5(445-464)Online publication date: May-2023
  • Show More Cited By

View Options

Login options

Full Access

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media