Adaptive Bilateral Filter for Video and Image Upsampling

Similar documents
High Quality Image Magnification using Cross-Scale Self-Similarity

Sachin Patel HOD I.T Department PCST, Indore, India. Parth Bhatt I.T Department, PCST, Indore, India. Ankit Shah CSE Department, KITE, Jaipur, India

Admin stuff. 4 Image Pyramids. Spatial Domain. Projects. Fourier domain 2/26/2008. Fourier as a change of basis

CMOS Image Sensor Noise Reduction Method for Image Signal Processor in Digital Cameras and Camera Phones

Investigation of Color Aliasing of High Spatial Frequencies and Edges for Bayer-Pattern Sensors and Foveon X3 Direct Image Sensors

Adaptive Block Truncation Filter for MVC Depth Image Enhancement

Super-resolution method based on edge feature for high resolution imaging

Convolution. 1D Formula: 2D Formula: Example on the web:

High Quality Image Deblurring Panchromatic Pixels

Implementation of Canny Edge Detector of color images on CELL/B.E. Architecture.

How To Fix Out Of Focus And Blur Images With A Dynamic Template Matching Algorithm

Assessment of Camera Phone Distortion and Implications for Watermarking

Face Recognition in Low-resolution Images by Using Local Zernike Moments

Modelling, Extraction and Description of Intrinsic Cues of High Resolution Satellite Images: Independent Component Analysis based approaches

PERFORMANCE ANALYSIS OF HIGH RESOLUTION IMAGES USING INTERPOLATION TECHNIQUES IN MULTIMEDIA COMMUNICATION SYSTEM

A Learning Based Method for Super-Resolution of Low Resolution Images

To determine vertical angular frequency, we need to express vertical viewing angle in terms of and. 2tan. (degree). (1 pt)

FCE: A Fast Content Expression for Server-based Computing

jorge s. marques image processing

Digital Imaging and Multimedia. Filters. Ahmed Elgammal Dept. of Computer Science Rutgers University

Analecta Vol. 8, No. 2 ISSN

Canny Edge Detection

High Performance GPU-based Preprocessing for Time-of-Flight Imaging in Medical Applications

Edge detection. (Trucco, Chapt 4 AND Jain et al., Chapt 5) -Edges are significant local changes of intensity in an image.

Vision based Vehicle Tracking using a high angle camera

Algorithm for License Plate Localization and Recognition for Tanzania Car Plate Numbers

Bandwidth Adaptation for MPEG-4 Video Streaming over the Internet

Sharpening through spatial filtering

Comparison of different image compression formats. ECE 533 Project Report Paula Aguilera

Applications to Data Smoothing and Image Processing I

Potential of face area data for predicting sharpness of natural images

Static Environment Recognition Using Omni-camera from a Moving Vehicle

A Novel Method to Improve Resolution of Satellite Images Using DWT and Interpolation

Blind Deconvolution of Barcodes via Dictionary Analysis and Wiener Filter of Barcode Subsections

Computational Foundations of Cognitive Science

A Novel Hole filling method based on Projection onto Convex Set in DIBR


HSI BASED COLOUR IMAGE EQUALIZATION USING ITERATIVE n th ROOT AND n th POWER

Saving Mobile Battery Over Cloud Using Image Processing

NEIGHBORHOOD REGRESSION FOR EDGE-PRESERVING IMAGE SUPER-RESOLUTION. Yanghao Li, Jiaying Liu, Wenhan Yang, Zongming Guo

Colour Image Segmentation Technique for Screen Printing

Internet Video Streaming and Cloud-based Multimedia Applications. Outline

A Binary Adaptable Window SoC Architecture for a StereoVision Based Depth Field Processor

A Dynamic Approach to Extract Texts and Captions from Videos

Detection and Restoration of Vertical Non-linear Scratches in Digitized Film Sequences

Image Compression through DCT and Huffman Coding Technique

Low-resolution Character Recognition by Video-based Super-resolution

EECS 556 Image Processing W 09. Interpolation. Interpolation techniques B splines

Composite Video Separation Techniques

Understanding CIC Compensation Filters

PageX: An Integrated Document Processing and Management Software for Digital Libraries

A Brief on Visual Acuity and the Impact on Bandwidth Requirements

QUALITY TESTING OF WATER PUMP PULLEY USING IMAGE PROCESSING

Face Model Fitting on Low Resolution Images

Motion Estimation. Macroblock Partitions. Sub-pixel Motion Estimation. Sub-pixel Motion Estimation

Color Segmentation Based Depth Image Filtering

Video-Conferencing System

Single Depth Image Super Resolution and Denoising Using Coupled Dictionary Learning with Local Constraints and Shock Filtering

Extend Table Lens for High-Dimensional Data Visualization and Classification Mining

Assessment. Presenter: Yupu Zhang, Guoliang Jin, Tuo Wang Computer Vision 2008 Fall

Algorithms for the resizing of binary and grayscale images using a logical transform

3D Scanner using Line Laser. 1. Introduction. 2. Theory

COMPARISON OF OBJECT BASED AND PIXEL BASED CLASSIFICATION OF HIGH RESOLUTION SATELLITE IMAGES USING ARTIFICIAL NEURAL NETWORKS

T O B C A T C A S E G E O V I S A T DETECTIE E N B L U R R I N G V A N P E R S O N E N IN P A N O R A MISCHE BEELDEN

BCC Multi Stripe Wipe

REAL TIME TRAFFIC LIGHT CONTROL USING IMAGE PROCESSING

Enhanced LIC Pencil Filter

Efficient Data Recovery scheme in PTS-Based OFDM systems with MATRIX Formulation

Module 8 VIDEO CODING STANDARDS. Version 2 ECE IIT, Kharagpur

A Noise-Aware Filter for Real-Time Depth Upsampling

Video compression: Performance of available codec software

Performance Analysis and Comparison of JM 15.1 and Intel IPP H.264 Encoder and Decoder

Feature Tracking and Optical Flow

JPEG Image Compression by Using DCT

Redundant Wavelet Transform Based Image Super Resolution

Bildverarbeitung und Mustererkennung Image Processing and Pattern Recognition

A New Image Edge Detection Method using Quality-based Clustering. Bijay Neupane Zeyar Aung Wei Lee Woon. Technical Report DNA #

How To Make A Texture Map Work Better On A Computer Graphics Card (Or Mac)

Simultaneous Gamma Correction and Registration in the Frequency Domain

Done. Click Done to close the Capture Preview window.

SUPER-RESOLUTION (SR) has been an active research

Designing Custom DVD Menus: Part I By Craig Elliott Hanna Manager, The Authoring House at Disc Makers

Quality Estimation for Scalable Video Codec. Presented by Ann Ukhanova (DTU Fotonik, Denmark) Kashaf Mazhar (KTH, Sweden)

Image Interpolation by Pixel Level Data-Dependent Triangulation

Effective Use of Android Sensors Based on Visualization of Sensor Information

WE ARE in a time of explosive growth

A Simple Feature Extraction Technique of a Pattern By Hopfield Network

JPEG compression of monochrome 2D-barcode images using DCT coefficient distributions

Parametric Comparison of H.264 with Existing Video Standards

Video Conferencing Display System Sizing and Location

Thor High Efficiency, Moderate Complexity Video Codec using only RF IPR

Image Gradients. Given a discrete image Á Òµ, consider the smoothed continuous image ܵ defined by

System-Level Display Power Reduction Technologies for Portable Computing and Communications Devices

Scanners and How to Use Them

Using Photorealistic RenderMan for High-Quality Direct Volume Rendering

COMPONENT FORENSICS OF DIGITAL CAMERAS: A NON-INTRUSIVE APPROACH

Tracking and Recognition in Sports Videos

Automatic Traffic Estimation Using Image Processing

Armstrong Atlantic State University Engineering Studies MATLAB Marina Image Processing Primer

Personal Identity Verification (PIV) IMAGE QUALITY SPECIFICATIONS FOR SINGLE FINGER CAPTURE DEVICES

Transcription:

Adaptive Bilateral Filter for Video and Image Upsampling Rahul Vanam and Yan Ye InterDigital Communications, LLC, 9710 Scranton Road, San Diego, CA 92121 USA ABSTRACT Upsampling is a post-processing method for increasing the spatial resolution of an image or video. Most video players and image viewers support upsampling functionality. Sometimes upsampling can introduce blurring, ringing, and jaggedness artifacts in the upsampled video or image thereby lowering its visual quality. In this paper, we present an adaptive bilateral interpolation filter for upsampling a video or image by an arbitrary upsampling factor, and show that it mitigates most of the artifacts produced by conventional upsampling methods. Keywords: Upsampling, ringing artifact, jaggedness, sinc filter, Bilateral filter, Lanczos filter, Sobel operator. 1. INTRODUCTION With the advances of wireless networks and the increasing popularity of video-capable mobile devices such as tablets and smartphones, consumption of digital video content has been increasing rapidly. Video hosting websites such as YouTube and Dailymotion often store the same video content in a variety of bit rates and resolutions. When a user requests a certain video over wireless networks, usually the lower resolution and lower bit rate version is delivered due to bandwidth constraints. Further, if the encoded video has a resolution lower than the screen resolution on the device, the video is usually upsampled before being displayed to fit the whole screen. Sometimes the upsampling operation can introduce artifacts such as ringing, jaggedness, and blurriness, thereby lowering the visual quality. Therefore, this necessitates the need of an upsampler that introduces minimal artifacts thereby ensuring good visual quality. Tomasi and Maduchi 1 presented a bilateral filter for smoothing an image while preserving its edges. Bilateral filters have since found several applications that include denoising, contrast management, depth reconstruction, data fusion, 3D fairing, and upsampling. 2 Adaptive bilateral filters have been used for sharpness enhancement and denoising of images. 3 There exist upsampling methods that use bilateral filters. Hung and Siu 4 presented an edge-directed interpolation using weighted least square estimator, where the weights of the estimator were modeled by a bilateral filter. Han et al. 5 used a bilateral filter to decompose an image into detail layer and base layer images, which were then denoised, interpolated, and combined to generate an upsampled image. Yang and Hong 6 presented a bilateral interpolation filter for image upsampling. Although this approach alleviates ringing artifacts produced by the ideal sinc-based filters, it produces jaggedness around slant edges. Jaggedness or staircase artifacts are commonly produced by bilateral filters. 2 In this paper, we present an upsampling scheme that uses an adaptive bilateral interpolation filter. We compare our scheme against fixed bilateral and Lanczos interpolation filters, and demonstrate that our scheme reduces jaggedness artifacts in the upsampled video. The remainder of this paper is organized as follows. In Section 2, we describe the adaptive bilateral filter. We describe our upsampling scheme in Section 3. Details of our experiments and results are provided in Section 4, and we conclude in Section 5. Further author information: R.V.: E-mail: rahul.vanam@interdigital.com Y.Y.: E-mail: yan.ye@interdigital.com

2. ADAPTIVE BILATERAL FILTER In this section, we shall first describe the bilateral filter and then the adaptive bilateral filter. The bilateral filter operation is given by y[m, n] = k R 1 (k, l)h d (m, n; k, l)h r (x[m, n], x[k, l])x[k, l], (1) l where x[m, n] is the input image, y[m, n] is the filtered image, R(k, l) normalizes the filter coefficients to unity, and h d (.) and h r (.) are the domain and range filters, respectively. Often a Gaussian filter is used for both domain and range filters 1, 3 and are defined as follows ( h d (m, n; m 0, n 0 ) = e h r (x[m, n], x[m 0, n 0 ]) = e ) (m m 0 ) 2 +(n n 0 ) 2 and 2σ d 2 ( ) (x[m,n] x[m 0,n 0 ]) 2 2σ 2 r, (2) where [m 0, n 0 ] is the center pixel of the window W m0,n 0 = {[m, n] : [m, n] [m 0 N, m 0 +N] [n 0 N, n 0 +N]}, σ d and σ r are the standard deviations corresponding to the domain and range filters, respectively. Therefore, the domain filter gives higher weights to pixels closer to the center pixel [m 0, n 0 ], while the range filter gives higher weights to the pixels having closer gray-scale values to the center pixel x[m 0, n 0 ]. Thus, when bilateral filter operates on an edge pixel it behaves as a elongated Gaussian filter oriented along the edge direction, since it assigns higher weights to neighboring edge pixels and smaller weights to pixels in the gradient direction. 3 Zhang et al. 3 introduced an adaptive bilateral filter by modifying Equation (2) by including an offset ζ in the range filter equation, and adapting ζ and σ r to local image characteristics. The domain and range filters of an adaptive bilateral filter are defined as follows ( h d (m, n; m 0, n 0 ) = e h r (x[m, n], x[m 0, n 0 ]) = e ) (m m 0 ) 2 +(n n 0 ) 2 and 2σ d 2 ( ) (x[m,n] x[m 0,n 0 ] ζ[m 0,n 0 ]) 2 2σ 2 r. (3) The parameter ζ controls the sharpness of the image. 3 When ζ is made closer to the mean, the filtered image appears blurrier, while shifting ζ away from the local mean sharpens the filtered image. 3. ADAPTIVE BILATERAL FILTER FOR IMAGE OR VIDEO UPSAMPLING Figure 1 illustrates our approach for upsampling an image or video by M h N h and M v N v in horizontal and vertical directions, respectively. The input image or frame is first horizontally upsampled followed by vertical upsampling as shown in Figure 1(a). In this section, we shall describe our approach for upsampling a video in YUV 4:2:0 format. 3.1 Upsampling chroma For upsampling chroma, we use a conventional sinc interpolation filter as illustrated in Figure 1(c). The input is first upsampled by inserting M zeros, followed by low pass filtering, and decimation by factor N. The following sinc filter is used for horizontal upsampling f h [n] = w[n]sinc πn M h where w[n] = e (n u) 2 2σ 2 u 2 and u = N 1, 2 (4)

where N is the length of the filter, and σ is the standard deviation of the Gaussian window. We use a similar sinc filter during vertical upsampling. Equation (4) can be reduced to a polyphase filter bank that requires fewer number of operations during upsampling as illustrated in Figure 2. If x[k] is the input (since we use separable filters, the input is one dimensional vector), its corresponding phase Φ is computed by where mod(.) is the modulus operator. A phase filter f (Φ) h Φ = mod(m h k, N h ), (5) is obtained by decimating the sinc filter f h as follows f (Φ) h = f h [j], where j = Φ + im h and j < N. (6) 3.2 Upsampling luma In this section, we describe our approach for upsampling luma in the horizontal direction. The same scheme is used for vertical upsampling. Our scheme consists of an edge detector, a sinc filter, and an adaptive bilateral filter as illustrated in Figure 1(b). We perform edge detection by applying horizontal and vertical Sobel operators defined below on the input frame 1 2 0 2 1 1 4 6 4 1 4 8 0 8 4 G h = 6 12 0 12 6 4 8 0 8 4, G 2 8 12 8 2 v = 0 0 0 0 0 2 8 12 8 2, (7) 1 2 0 2 1 1 4 6 4 1 to obtain horizontal and vertical gradients ( x and y), respectively. Gradient magnitude (g) and angle (θ) are then computed as follows g = x 2 + y 2 ( ) y θ = tan 1. x (8) The gradient information of i-th input pixel is defined as g i = (g i, θ i ), and a vector of gradient information corresponding to N pixels is defined as G = (g 1,..., g i,..., g N ). During edge detection, if the gradient g is greater than the threshold T, we consider the input pixel to be an edge pixel and compute its gradient angle θ, otherwise we set θ = 0. The threshold T is determined heuristically. The input is simultaneously upsampled using a sinc filter defined in Equation (4) to yield an upsampled pixel p. As shown in Figure 1(b), the edge information from the input pixels is used to decide the use of an adaptive bilateral filter in upsampling. Specifically, we examine the gradient angle θ corresponding to the two input pixels on either side of a pixel to be interpolated. For example, in Figure 3, c is a pixel to be interpolated horizontally, and a and b are its neighboring input pixels. Let the edge information of a and b be g a = (g a, θ a ) and g b = (g b, θ b ), respectively. Based on θ a and θ b we decide if the switch in Figure 1(b) is turned on or off (switch turned on implies that adaptive bilateral filter is included in upsampling, otherwise not). If one of the following three conditions is true, the switch is turned off, thereby resulting in the output pixel p from the sinc filter to be used as the final upsampled pixel. 1. if ((0 θ a α 1 ) (α 2 θ a 180 ))&&((0 θ b α 1 ) (α 2 θ b 180 )) 2. if (α 3 < θ a < α 4 ) (α 3 < θ b < α 4 ) 3. if (α 5 < θ a < α 6 ) (α 5 < θ b < α 6 ),

(a) (b) (c) Figure 1. Adaptive bilateral filter for image and video upsampling. (a) Video/image is upsampled in horizontal and vertical dimensions. (b) Upsampling process for Luminance component in each dimension. Based on the edge information the output of the sinc filter is either used as the upsampled output or used as a parameter to the adaptive bilateral filter. (c) Upsampling process for Chrominance component in each dimension.

where α 1 = 85, α 2 = 95, α 3 = 25, α 4 = 75, α 5 = 105, and α 6 = 155. Our adaptive bilateral filter is similar to Equation (2). Instead of the Gaussian filter we use a sinc-based filter defined in Equation (4) as the domain filter. The range filter is made adaptive to the edge information G and is defined as follows h r (x[m, n], p, G) = e (x[m,n] p) 2 2σr 2(G), (9) where σ r is the standard deviation of the range filter, and p is the output of the sinc filter. Our range filter is similar to the range filter defined in Equation (3). It should be noted that ζ in Equation (3) was used to adapt the sharpness of the output image. Since we do not consider sharpening during upsampling we set ζ = 0. To reduce computational complexity, our adaptive bilateral filter is implemented as a polyphase filter bank as illustrated in Figure 4. Each phase filter in the filter bank is defined as h p f(x[m, n], p, G, Φ) = { f (Φ) h h r(x[m, n], p, G), 0 < Φ < M f (0) h, else, (10) where h r is defined in Equation (9). Based on θ a and θ b, the standard deviation of the range filter is adapted as follows 150, 75 < θ < 85 150, 95 < θ < 105 σ r (G) = 150, 5 < θ < 25 150, 155 < θ < 175 50, else, (11) Figure 2. Horizontal upsampling using a polyphase filter bank. p is the output upsampled pixel. Figure 3. Pixel to be interpolated is labeled as c, and a and b are its neighboring input pixels.

Figure 4. Adaptive bilateral filter implemented as a polyphase filterbank. Figure 5. Adapting the standard deviation of the range filter σ r based on the angular ranges of θ a or θ b. where θ corresponds to either θ a or θ b. The adaptation of σ r based on angular ranges is illustrated in Figure 5. For pixels belonging to horizontal or vertical edges, corresponding to θ = 0, 180, and 90, respectively, a smaller σ r is used which results in stronger bilateral filtering. For pixels belonging to an angular edge, larger σ r is used that results in milder range filtering. In the following section, we will show that adapting σ r to θ reduces jaggedness in the upsampled frame. 4. RESULTS In this section, we compare our upsampling approach with a fixed bilateral interpolation filter and Lanczos interpolation filter. 7 We derive the fixed bilateral filter by setting σ r = 150 in Equation (9). The following test images/videos are used in our experiments: Cactus, Foreman, and Baboon, and are illustrated in Figure 6. The Cactus and Foreman test videos were downsampled from 1920 1080 and 352 288, to 640 480 and 132 108, respectively, using an ideal sinc interpolation filter given in Equation (4). The Cactus, Foreman, and Baboon test videos are upsampled to 1920 1080, 352 288, and 1024 1024, respectively. We crop the regions of interest in the upsampled frames and illustrate them in Figure 7. Figures 7(a) and (b) illustrate the background building of the upsampled Foreman image. Lanczos filter is found to produce significant jaggedness along slant edges, while the fixed bilateral filter produces mild jaggedness, and our approach produces least jaggedness.

(a) (b) (c) Figure 6. Test images. (a) Cactus (640 480), (b) Foreman (132 108), and (c) Baboon (512 512) Figures 7(c) and (d) illustrate the whiskers in the upsampled Baboon image. Lanczos filter produces jaggedness along the edges (whiskers), which is subdued in the upsampled frame generated by the fixed and adaptive bilateral filters. Figure 7(e) illustrates a segment of upsampled Cactus video. Both Lanczos and fixed bilateral filters produce strong jaggedness along the edge, while jaggedness is mostly subdued in our approach. 5. CONCLUSIONS In this paper, we present an image and video upsampling scheme that uses an adaptive bilateral interpolation filter. We adapt our bilateral interpolation filter based on the edge angles of neighboring input pixels. Compared to fixed bilateral and Lanczos interpolation filters, our approach produces cleaner upsampled images with fewer jaggedness artifacts. REFERENCES [1] C. Tomasi and R. Manduchi, Bilateral filtering for gray and color images, in Proc. 6th Int. Conf. Computer Vision, 1998, pp. 839 846. [2] S. Paris, P. Kornprobst, J. Tumblin, and Fre do Durand, Bilateral filtering: Theory and applications, Foundations and Trends in Computer Graphics and Vision, vol. 4, no. 1, pp. 1 74, 2009. [3] B. Zhang and J. P. Allebach, Adaptive bilateral filter for sharpness enhancement and noise removal, IEEE Transactions on Image Processing, vol. 17, no. 5, pp. 664 678, 2008. [4] K-W. Hung and W-C. Siu, Improved image interpolation using bilateral filter for weighted least square estimation, in Proc. IEEE ICIP, 2010, pp. 3297 3300. [5] J-W. Han, J-H. Kim, S-H. Cheon, J-O. Kim, and S-J. Ko, A novel image interpolation method using the bilateral filter, IEEE Transactions on Consumer Electronics, vol. 56, pp. 175 181, 2010. [6] S. Yang and K. Hong, Bilateral interpolation filters for image size conversion, in Proc. IEEE ICIP, 2005, pp. 986 989. [7] C. E. Duchon, Lanczos filtering in one and two dimensions, Journal of Applied Meteorology, vol. 18, no. 8, pp. 1016 1022, 1979.

(a) Lanczos filter Fixed bilateral filter Our approach (b) (c) (d) (e) Figure 7. Cropped upsampled images corresponding to Foreman (a) and (b); Baboon (c) and (d); and Cactus (e).