Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
PERCEPTUAL IMAGE PREVIEW
Document Type and Number:
WIPO Patent Application WO/2007/098051
Kind Code:
A3
Abstract:
Systems and methods for perceptual image preview are described. In one aspect, a naïve preview image is generated by downsampling a larger image. Perceptual features of the larger image are then detected. Information associated with the detected perceptual features is then incorporated into the naïve preview image to create a perceptual preview image. Since the perceptual preview image incorporates information associated with the detected perceptual features, a viewer of the perceptual preview image will be more likely to detect the presence or absence of such perceptual features in the larger image.

Inventors:
LIN ZHOUCHEN (US)
WAN LIANG (US)
FENG WEI (US)
WONG TIEN-TSIN (US)
LIU ZHI-QIANG (US)
Application Number:
PCT/US2007/004191
Publication Date:
October 18, 2007
Filing Date:
February 15, 2007
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
MICROSOFT CORP (US)
International Classes:
G06T3/40
Foreign References:
US6411331B12002-06-25
US5880767A1999-03-09
US20030117511A12003-06-26
US20040046885A12004-03-11
Other References:
See also references of EP 1987491A4
Download PDF:
Claims:

CLAIMS

1. A method implemented at least in part by a computing device, the method comprising: generating a naϊve preview image by downsampling a larger image; detecting perceptual features associated with the larger image; incorporating information associated with at least a subset of the perceptual features into the naϊve preview image to create a perceptual preview image; and wherein presentation of the perceptual preview image to a user facilitates a determination of presence or absence of the at least a subset of the perceptual features in the larger image.

2. The method of claim 1, wherein the perceptual features comprise one or more of structure, noise, blur, white balance, blooming, image compression artifacts, and depth of field.

3. The method of claim 1, wherein the perceptual features are related to image quality.

4. The method of claim 1, wherein the information is based on the perceptual features and not extracted from the larger image, the information notifying a viewer of the perceptual preview image that at least a subset of the detected perceptual features exist in the larger image.

5. The method of claim 1, wherein incorporating the information further comprises structurally enhancing the naive preview image to strengthen salient edges and flatten weak details.

6. The method of claim 5, wherein structurally enhancing is performed using non-linear modulation and a gradient domain of the naϊve preview image or the larger image.

7. The method of claim 1, wherein detecting the perceptual features further comprises: detecting noise from a region of the larger image or the naϊve preview image that includes relatively few salient edges, the region not representing an entirety of the larger image or the naϊve preview of edge; and adding information synthesized from the noise to the perceptual preview image.

8. The method of claim 1 , wherein detecting the perceptual features further comprises: evaluating respective blur degrees of each pixel of multiple pixels in at least a portion of the larger image; and synthesizing, for each pixel of the multiple pixels, blur in the perceptual preview image in an area of the perceptual preview image that corresponds to location of the pixel in the larger image.

9. A computer-readable medium comprising computer-program instructions executable by a processor for: generating a naive preview image from a larger image; detecting perceptual features associated with the larger image; incorporating information associated with at least a subset of the perceptual features into the naive preview image to create a perceptual preview image; and wherein the information is not extracted from the larger image, the information notifying a viewer of the perceptual preview image that the at least a subset of the detected perceptual features exist to a represented degree in the larger image.

10. The computer-readable medium of claim 9, wherein the perceptual features comprise one or more of structure, noise, blur, white balance, blooming, image compression artifacts, and depth of field.

11. The computer-readable medium of claim 9, wherein the computer- program instructions for incorporating the information further comprise instructions for structurally enhancing the naϊve preview image to strengthen salient edges and flatten weak details.

12. The computer-readable medium of claim 10, wherein structurally enhancing is performed using non-linear modulation and a gradient domain of the naϊve preview image or the larger image.

13. The computer-readable medium of claim 9, wherein the computer- program instructions for detecting the perceptual features further comprise instructions for: detecting noise from a region of the larger image or the naive preview image that includes relatively few salient edges, the region not representing an entirety of the larger image or the naive preview of edge; and adding information synthesized from the noise to the perceptual preview image.

14. The computer-readable medium of claim 9, wherein the computer- program instructions for detecting the perceptual features further comprise instructions for: evaluating respective blur degrees of each pixel of multiple pixels in at least a portion of the larger image; and synthesizing, for each pixel of the multiple pixels, blur in the perceptual preview image in an area of the perceptual preview image that corresponds to location of the pixel in the larger image.

15. A computing device comprising: a processor; and a memory couple to the processor, the memory comprising computer- program instructions executable by the processor for: generating a naϊve preview image from a larger image; evaluating the naϊve preview image to identify edges; strengthening salient edges of the naϊve preview image in view of the edges and flattening weak details of the naϊve preview image in view of the edges to create a perceptual preview image; detecting perceptual features of the larger image; incorporating information associated with at least a subset of the perceptual features into the perceptual preview image; and presenting the perceptual preview image to a user to notify the user that the at least a subset of the detected perceptual features exist in the larger image.

16. The computing device of claim 0, wherein the perceptual features comprise one or more of structure, noise, blur, white balance, blooming, image compression artifacts, and depth of field.

17. The computing device of claim 0, wherein strengthening and flattening is performed using non-linear modulation and a gradient domain of the naive preview image or the larger image.

18. The computing device of claim 0, wherein the computer-program instructions for detecting the perceptual features further comprise instructions for: detecting noise from a region of the larger image or the naϊve preview image that includes relatively few salient edges, the region not representing an entirety of the larger image or the naϊve preview of edge; and adding information synthesized from the noise to the perceptual preview image.

(

19. The computing device of claim 0, wherein the computer-program instructions for detecting the perceptual features further comprise instructions for: evaluating respective blur degrees of each pixel of multiple pixels in at least a portion of the larger image; and synthesizing, for each pixel of the multiple pixels, blur in the perceptual preview image in an area of the perceptual preview image that corresponds to location of the pixel in the larger image.

20. The computing device of claim 0, wherein the computer-program instructions for synthesizing blur further comprise instructions for calculating an amount of blurring B 1 at an edge pixel E 1 of the multiple pixels as follows:

B l = cxp{-η -D(A l ) a ], where D(A 1 ) is a variance of gradient angles in a region R 1 .

Description:

PERCEPTUAL IMAGE PREVIEW

BACKGROUND

[0001] A preview image typically represents a reduced or downsampled version of a larger image. Imaging applications typically present an image preview on a display device for a viewer to approximate image composition, quality, and/or other aspects of the larger image from which the preview image was derived. However, because preview images are the results of downsampling operations, preview images are created with only a subset of the information present in the corresponding larger images. As a result, a user may not be able to ascertain significant perceptual features that are present in the larger image (e.g., noise, blur, depth of field, white balance, bloom effects, etc.) merely by viewing the preview image. In such scenarios, preview images may not adequately address a user's image previewing and browsing needs.

SUMMARY

[0002] This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the detailed description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter.

[0003] In view of the above, systems and methods for perceptual image preview are described. In one aspect, a naϊve preview image is generated by downsampling a larger image. Perceptual features of the larger image are then detected. Information associated with the detected perceptual features is then incorporated into the naϊve preview image to create a perceptual preview image.

Since the perceptual preview image incorporates information associated with the detected perceptual features, a viewer of the perceptual preview image will easily detect the presence or absence of such perceptual features in the larger image.

BRIEF DESCRIPTION OF THE DRAWINGS

[0004] In the Figures, the left-most digit of a component reference number identifies the particular Figure in which the component first appears.

[0005] Fig. 1 illustrates an exemplary system for perceptual image preview, according to one embodiment.

[0006] Fig. 2(a) shows an exemplary gradient field inside a region of arbitrary naϊve preview image.

[0007] Fig. 2(b) shows an exemplary gradient field inside a region of the arbitrary structurally enhanced perceptual preview image.

[0008] Fig. 3 shows an exemplary procedure for perceptual image preview, according to one embodiment.

DETAILED DESCRIPTION

An Exemplary System

[0009] Although not required, the systems and methods for perceptual image preview are described in the general context of computer-executable instructions (program modules) being executed by a computing device such as a personal computer. Program modules generally include routines, programs, objects, components, data structures, etc., that perform particular tasks or implement particular abstract data types. While the systems and methods are described in the foregoing context, acts and operations described hereinafter may also be implemented in hardware.

[0010] Fig. 1 shows an exemplary system 100 for perceptual image preview, according to one embodiment. System 100 includes host computing device 102. Host computing device 102 represents any type of computing device such as a small form factor device, a digital cameral, a handheld or mobile computing device, a laptop, a personal computer, a server, etc. Host computing device 102 includes one or more processing units 104 coupled to memory 106. Memory 106 includes system memory and any other type of memory coupled to computing device 102 such as compact flash memory, etc. System memory (e.g., RAM and ROM) includes computer-program modules ("program modules") 108 and program data 110. Processor(s) 104 fetch and execute computer-program instructions from respective ones of the program modules 108. Program modules 108 include perceptual image preview module 112 for generating a perceptual preview image 114 from a larger (parent) image 116. Program modules 108 also includes "other program modules" 118 such as an operating system, application(s) that leverage aspects

of perceptual image preview module 112 (e.g., present perceptual preview images 114 to user, etc.), and/or so on.

[0011] Perceptual image preview module 112 ("preview module 112") downsamples a larger image 116 to create a conventional naive preview image. Preview module 112 then enhances this naϊve preview image with additional information associated with the larger image 116 to better show one or more of structure and or perceptual features of the larger image 116. This enhanced naϊve preview image is a perceptual preview image 114. More particularly, to generate the perceptual preview image 114, preview module 112 detects and evaluates structure and arbitrary perceptual features (e.g., one or more of noise, blur, depth of field, blooming, white balance, and/or so on) from the larger image 116. Such detected structure and arbitrary perceptual features are shown as respective portions of detected perceptual features 120. Preview module 112 enhances the naϊve preview image with information associated with one or more of these detected aspects to allow a viewer to more accurately ascertain the existence or absence of these aspects in the larger image 116.

[0012] These and other aspects of the systems and methods for perceptual image preview are now discussed in greater detail.

Exemplary Structure Enhancement

[0013] Preview module 112 augments a naϊve preview image of a larger image 116 with structural enhancements to structurally enhanced preview image 114. These augmentation operations strengthen salient edges and flatten weak details in the resulting image. Since salient edges often separate different objects, this approach typically increases the inter-object contrast and reduces

intra-object contrast. As a result, image structure becomes more visually apparent and attractive to a users' attention. The more apparent structure enables a user to more readily detect any information associated with other detected perceptual features 120 that are subsequently incorporated into a structurally enhanced perceptual preview image 114.

[0014] In this implementation, preview module 112 implements structure enhancement via non-linear modulation in the image gradient domain. Because salient edges in spatial domain have large gradient magnitudes, while weak details correspond to small gradient magnitudes, the problem becomes to increase the large gradients and reduce the small gradients. The increase of large gradients strengthens the important edges, and the reduction of small gradients suppresses the redundant details. By solving a Poisson equation, the image can be reconstructed given the gradient field and the image boundary. The adjustment in the gradient field is thus reflected in the resultant image.

[0015] In this implementation, preview module 112 creates a structurally enhanced perceptual preview image 114 by first converting the generated naive preview image to YUV color space. Preview module 112 then computes the gradient field for the luminance component. The chrominance components are kept intact to guarantee that the image color will not change. A modified sigmoid function is used to modulate the gradient magnitudes:

' ~ 1 + exp(-A:(G,. - β)) ' (D

where G 1 is the gradient magnitude for pixel / and G] is the adjusted gradient magnitude. The gradient direction is not changed since local direction adjustment may destroy the consistency of gradient field. Parameter a

controls the maximum adjustment magnitude. When a is set to a value smaller than 1, all the gradients will be suppressed. Parameter k controls the modulation slope. The larger k, the more large gradient magnitudes are magnified, and the more small gradient magnitudes are suppressed. Parameter β defines the threshold to differentiate large and small gradient magnitudes. Parameter β has a larger impact on the result than parameters a and k do. To preserve locally salient tiny details, β is chosen adaptively as follows:

where β g is a global threshold, and β, is a local threshold, β, is evaluated as the average gradient magnitudes in the neighborhood of the pixel, weighted by a Gaussian. β g is evaluated in the same way on the whole image. Equation (2) respects strong edges and favors weak yet salient edges.

[0016] Fig. 2(a) shows an exemplary gradient field inside the region of the arbitrary naive preview image. Fig. 2(b) shows an exemplary gradient field inside a region of a structurally enhanced perceptual preview image 114 (Fig. 1) generated from the naϊve preview image, according to the one embodiment. In Fig. 2(b), the gradient directions are kept unchanged as compared to the gradient directions in Fig. 2(a), while the gradient magnitudes are increased for the large gradients and reduced for the small gradients (as compared to the gradient magnitudes of Fig. 2(a)). The structurally enhanced perceptual preview image of Generally, a structurally enhanced perceptual preview image 114 will present a clearer image structure as compared to the naϊve preview image.

Exemplary Perceptual Feature Preservation

[0017] There are many arbitrary types of perceptual features that may be detected from an image 116. Such perceptual features include, for example, white balance, depth of field, blooming, blocky artifacts caused by image compression, image quality, etc. (Blooming is the affect that a dynamic range pixel is overexposed so that the neighboring pixels are brightened and overexposed). To present perceptual features exhibited by a larger image 116 in a perceptual preview image 114, preview module 112 detects such perceptual features (i.e., shown as detected perceptual features 120) from the larger image 116. The number and types of perceptual features represented by detected perceptual features 120 are arbitrary and a function a particular implementation.

[0018] Next, preview module 112 incorporates information (e.g., synthesized / derived information 122) associated with at least a subset of the detected perceptual features 120 into a naϊve preview image or a structurally enhanced perceptual preview image 114. When the information is incorporated into a naϊve preview image, a new perceptual preview image 114 results. Although the incorporated information can be information that was extracted from the larger image 116, the incorporated information is not necessarily extracted information. Rather, in some or all instances, such information is synthesized or derived from the information provided by the detected perceptual features 120. In view of this, and in this implementation, exact accuracy of detecting- perceptual features 120 exhibited by the apparent image 116 is not necessary. Inclusion of information corresponding to the detected perceptual features 100 into the perceptual preview image 114 allows

the perceptual preview image 114 to convey more information to a viewer about the larger parent image 116. For instance, by showing that the detected perceptual features exist to some degree in the parent image 116.

Noise

[0019] Noise is often introduced into an image 116 when the image is captured using a high ISO mode (e.g. ISO 400 or greater), or when a short exposure is used to capture the image. Noise typically appears like color grains that are distributed across the image. Noise usually appears in dark regions. It is assumed that noise has an additive property and complies with uniform distribution. Though this assumption does not always hold if considering various noise generation schemes, it is sufficient for reflecting noise on a structurally enhanced perceptual preview image 114.

[0020] To represent noise present in a larger image 116 in a corresponding perceptual preview image 114, preview module 112 detects and stores the noise from the parent image 116 as source noise image using any of multiple well-known noise detection techniques. Based on the assumption of uniform distribution, preview module 112 generates a destination noise image (with dimensions equivalent to the structurally enhanced preview perceptual preview image 114) by randomly sampling from the source noise image. Such source and destination noise images are shown as respective portions of "other program data" 126 (Fig. 1). The destination noise image is added to the structure enhanced preview image to represent the noise of the larger parent image 116. In another implementation, the destination noise image is added to the naive preview image, rather than the structurally enhanced perceptual preview image 114.

[0021] In one implementation, noise is not detected from a large image 116, but rather only from a uniform smaller region of the larger image 116, for example, from a region that includes few salient edges. The objective is to present noise in the resulting perceptual preview image 114 that looks similar to that one that would be viewed on the larger image 116. It is unnecessary to extract noise from the whole original image 116. For instance, suppose the uniform region ω is expected to have a size of M x M pixels, where M is of a mild value, say \0d, in which d is the rate of size reduction. Too large M will make the desired uniform region non-existent. Too small M will not provide accurate enough noise.

[0022] In one implementation, instead of detecting ω in the larger image 116 directly, preview module 112 searches a corresponding region ω^ of size (M /d) χ (M I ' d) pixels in the naϊve preview image, then maps it to ω of the original image 116. The naϊve preview image will exhibit less noise than present in the larger image from which it was derived. Additionally, because the naϊve preview image has a much smaller dimension, the search for ω d is efficient and reliable. More specifically, preview module 112 divides the naϊve preview image into non-overlapped blocks, and selects the block ω rf that has the smallest variance. In most cases, the region ω that corresponds to ω d contains no salient edges. Therefore, its high frequency components compose the noise map N s . Preview module 112 applies discrete stationary wavelet transform to reliably estimate noise N 1 . Because the region size is quite small, the computation is very fast.

[0023] In one implementation, to produce' the noise map N d with the reduced dimension, preview module 112 utilizes texture synthesis methods to

keep the noise spatial distribution in N s . In practice, preview module 112 randomly generates a noise map N d from N s based on the assumption that noise has a uniform distribution. Though N d does not exactly match the noise distribution in the original image 116, N d conveys users a similar visual experience as the original one (see Fig. 3, which is described below). To improve algorithm stability, preview module 112 chooses K uniform regions and randomly samples in all regions. In this implementation, M= 80, and K= 5. The final image I f is computed as follows,

where I d is the reduced image, and γ is a parameter to control how salient the noise need to be visualized.

Blur

[0024] Blur in an image 116 occurs when a relative motion happens between an image acquisition device such as a camera and subject(s) of the image or when the subjects are out of focus. In different situations blur may appear over the whole image or just around some regions. Blur reduces image 116 sharpness. However, a naively reduced image may still look sharp, especially when blur in the corresponding parent image from which the naϊve preview image is generated is not serious. Preview module 112 detects image blur for presentation in a perceptual preview image 114. This is accomplished by evaluating blur degree locally in the original image 116. In view of the evaluation, preview module 112 blurs a corresponding region in the perceptual preview image 114 to present a corresponding amount of blur. Edge region blur is generally more visible to a user when the whole image 116 is blurred. In view of this, when the whole image 116 is blurred, preview module 112

performs blur manipulation in the perceptual preview image 114 only along its edges.

[0025] Preview module 112 performs edge detection on a structurally enhanced perceptual preview image 114. For each edge pixel E 1 in the image, preview module 112 estimates its respective blur degree. Blur estimation is based on the observation that blurry edge regions usually have a smaller deviation among gradient angles than sharp edge regions do. More specially, for the edge pixel E 1 , the region R 1 is located in the original image 116 that is shrunk to this pixels, . The gradient angles in the region R 1 are then denoted as AX- k) . The amount of blurring B 1 at edge pixel E 1 is computed as follows:

B 1 = exp{- η D(A 1 )" }, O) where D(A 1 ) is the variance of the. gradient angles in the region R 1 . The parameters η and a control the estimated amount of blur. These are set empirically to η = 3, and cc= 1.2. These parameters can also be determined subjectively.

[0026] Preview module 112 then synthesizes blur in the perceptual preview image 114 in the neighborhood of pixel E 1 according to the estimated amount of blur degree associated with the pixel. More particularly, preview module 112 implements blur operations using a Gaussian kernel according to the amount B 1 of blur, where B 1 is actually as the sigma of the Gaussian. The neighborhood of E 1 is then weighted using the Gaussian kernel.

An Exemplary Procedure

[0027] Fig. 3 shows an exemplary procedure 300 for perceptual image preview, according to one embodiment. For purposes of exemplary illustration and description, the operations of the procedure are described with respect to

components of Fig. 1. At block 302, perceptual image preview module 112 (Fig. 1) generates a naive preview image from a larger image 116 by downsampling the larger image 116. At block 304, perceptual image preview module 112 detects edge information from the naive preview image. At block 306, perceptual image preview module 112 utilizes the detected edge information to enhance structure of the naϊve preview image, and thereby creates a perceptual preview image 114 with enhanced structure (a structurally enhanced perceptual preview image). At block 308, perceptual image preview module 112 detects perceptual features (detected perceptual features 120 of Fig. 1) from the larger image 116.

[0028] At block 310, perceptual image preview module 112 incorporates information associated with at least a subset of the detected perceptual features 120 into a preview image to create a perceptual preview image 114. The particular preview image into which such information is incorporated can either be a naϊve preview image or a structurally enhanced perceptual preview image 114. At block 312, perceptual image preview module 112 or a different application that leverages output of the perceptual image preview module 112, presents the perceptual preview image 114 to a user to represent the larger image 116 from which the perceptual preview image 114 was derived. Since the perceptual preview image 114 presents information associated with detected perceptual features of the larger image 116, viewing the perceptual preview image 114 allows a user to make educated determinations as to the quality or other aspects of the larger image 116.

Conclusion

[00291 Although the systems and methods for perceptual image preview have been described in language specific to structural features and/or methodological operations or actions, it is understood that the implementations defined in the appended claims are not necessarily limited to the specific features or actions described. For example, information associated with detected perceptual features 120 that have been incorporated into a perceptual preview image 114 can be used to allow a user to assess aspects of the larger image in addition to image quality (e.g., depth of field, etc.). Accordingly, the specific features and operations of system 100 are disclosed as exemplary forms of implementing the claimed subject matter.