In the last decade Convolutional Neural Networks (CNNs) have defined the state of the art for many low level image processing and restoration tasks such as denoising, demosaicking, upscaling, or inpainting. However, on-device mobile photography is still dominated by traditional image processing techniques, and uses mostly simple machine learning techniques or limits the neural network processing to producing low resolution masks. High computational and memory requirements of CNNs, limited processing power and thermal constraints of mobile devices, combined with large output image resolutions (typically 8--12 MPix) prevent their wider application. In this work, we introduce Procedural Kernel Networks (PKNs), a family of machine learning models which generate parameters of image filter kernels or other traditional algorithms. A lightweight CNN processes the input image at a lower resolution, which yields a significant speedup compared to other kernel-based machine learning methods and allows for new applications. The architecture is learned end-to-end and is especially well suited for a wide range of low-level image processing tasks, where it improves the performance of many traditional algorithms. We also describe how this framework unifies some previous work applying machine learning for common image restoration tasks.
翻译:过去十年来,革命神经网络(CNNs)界定了许多低水平图像处理和修复任务(如脱落、演示、透视、升级或油漆等)的先进状态,然而,传统图像处理技术仍然主导着在线移动摄影,而且大多使用简单的机器学习技术,或限制神经网络处理产生低分辨率面具。CNN的高计算和记忆要求、有限的处理能力和移动装置的热限制,加上大型图像解析(通常为8-12 MPix)阻止其更广泛的应用。在这项工作中,我们引入了程序内内尔网络(PKNs),这是产生图像过滤内核或其他传统算法参数的机器学习模型系列。轻量型CNN处理输入图像的分辨率较低,与其他以内核为基础的机器学习方法相比,速度相当快,并允许新的应用。这一结构是从终端到终端学习的,特别适合一系列广泛的低级别图像处理任务,在那里改进许多传统算法的功能。我们还描述了如何用以前的恢复模型。