LiYuXie: Difference between revisions

From Psych 221 Image Systems Engineering
Jump to navigation Jump to search
imported>Projects221
imported>Projects221
Line 199: Line 199:
=Appendix I=
=Appendix I=


[[s_Psych221_winter2014_vSNR.m]]
s_Psych221_winter2014_vSNR.m
[https://www.dropbox.com/s/u9paxmu4mc2r8oy/s_Psych221_winter2014_vSNR.m]s_Psych221_winter2014_vSNR.m
[https://www.dropbox.com/s/u9paxmu4mc2r8oy/s_Psych221_winter2014_vSNR.m]


<br>
<br>

Revision as of 19:47, 21 March 2014

Introduction

ISO has a set of camera image quality metrics to quantify resolution, noise, color accuracy of cameras. The metrics are a set of values, but the effectiveness of these metrics might not be good for evaluation of real camera images, observed by human eyes. As a result, We need to evaluate the metrics by comparing the metrics and human observation.

Through ISET, we can calculate the main metric to evaluate visible noise of a camera – vSNR. vSNR is the ratio of signal power to noise power, calculated from XYZ value of the processed image. By varying the Luminance, pixel size, and optical/sensor parameters, we evaluate whether the vSNR can match the observation of eyes or not for specific scenes, e.g. face, text, scenery.



Background

Image Quality Metrics

Nowadays, a lot of metrics are used to perceive image quality, which can be found in the paper Development of the I3A CPIQ spatial metrics[1]. Their goals are to predict the visible differences between a pair of images. These metrics are commonly used to measure the important aspects of image quality such as sharpness, noise, contrast and so on.

visible SNR

Signal-to-noise ratio(SNR)is a measure that compares the level of a signal to the level of background noise. It is defined as the ratio of signal power to the noise power. The SNR used in imaging is a physical measure of the sensitivity of a imaging system.

The vSNR is the inverse of the standard deviation of the SCIELAB representation of a uniform field; its units are 1/ΔE[2].The vSNR metric can be used in simulations to predict how imaging system components affect noise visibility[2].



Methods

Software

Matlab 7.14

Algorithms

To evaluate the effectiveness of vSNR for measuring image quality, we investigate vSNR effectiveness with different parameters for processing different type of scenes. We use ISET to calculate metrics for different parameters (e.g. luminance, pixel size, F-number). We also use ISET to simulate how camera captures and processes different type of scenes (e.g. faces, text and landscapes). For each condition, we compare the metrics with the appearance of these images as they are rendered on a display. We use control variate method to measure and compare the influence of each variable.

Experimental Procedure

Using the script s_Psych221_winter2014_vSNR.m, change the parameters and see what happens to the image displayed and vSNR. Summarize a trend of vSNR effectiveness with different parameters. The focus is to evaluate the effectiveness of vSNR measuring the noise level and overall image quality.


(1) Luminance
(i) For human face,
Control Fov=5, f#=5, viewD=1, pixel=[0.5,1,2,4]. Change light level, lightLevels = [5,10,100,200]

(ii) For text,
Control Fov=5, f#=5, viewD=1, pixel=[0.5,1,2,4]. Change light level, lightLevels = [5,10,100,200]

(iii) For landscape,
Control Fov=5, f#=5, viewD=1, pixel=[0.5,1,2,4]. Change light level, lightLevels = [5,10,100,200]


(2) Pixel Size
(i) For human face,
Control light level = [5,10,100,200], Fov=5, f#=5, viewD=1. Change pixel = [0.5, 1, 2, 4].

(ii) For text,
Control light level = [5,10,100,200], Fov=5, f#=5, viewD=1. Change pixel = [0.5, 1, 2, 4].

(iii) For landscape,
Control light level = [5,10,100,200], Fov=5, f#=5, viewD=1. Change pixel = [0.5, 1, 2, 4].


(3) F-number
(i) For human face,
Control Fov=5, viewD=1, light level = [50, 100, 200]. Change fnumber = 3. Control Fov=5, viewD=1, light level = [50, 100, 200]. Change fnumber = 5. Control Fov=5, viewD=1, light level = [50, 100, 200]. Change fnumber = 8.

(ii) For text,
Control Fov=5, viewD=1, light level = [50, 100, 200]. Change fnumber = 3. Control Fov=5, viewD=1, light level = [50, 100, 200]. Change fnumber = 5. Control Fov=5, viewD=1, light level = [50, 100, 200]. Change fnumber = 8.

(iii) For landscape,
Control Fov=5, viewD=1, light level = [50, 100, 200]. Change fnumber = 3. Control Fov=5, viewD=1, light level = [50, 100, 200]. Change fnumber = 5. Control Fov=5, viewD=1, light level = [50, 100, 200]. Change fnumber = 8.

Results

Luminance

Human Face

Fov=5, f#=5, viewD=1
Horizontally (from left to right): lightLevels = [5,10,100,200]
Vertically (from top to bottom): pixel = [0.5,1,2,4]


From the image displayed, we could see that image quality in terms of noise is getting better with increasing light level in each pixel size condition. We could also see that overall image quality is getting better with increasing light level in each pixel size condition.

vSNR plot:


From the above plot we could see that vSNR increases with increasing light level in each pixel size condition. Thus, we could conclude that vSNR can effectively reflect the noise level and overall image quality of human face, in terms of light level.


Text

Fov=5, f#=5, viewD=1
Horizontally (from left to right): lightLevels = [5,10,100,200]
Vertically (from top to bottom): pixel = [0.5,1,2,4]


From the image displayed, we could see that image quality is getting better with increasing light level in each pixel size condition. We could also see that overall image quality is getting better with increasing light level in each pixel size condition.

vSNR plot:


From the above plot we could see that vSNR increases with increasing light level in each pixel size condition. Thus, we could conclude that vSNR can effectively reflect the noise level and overall image quality of text image, in terms of light level.


Landscape

Fov=5, f#=5, viewD=1
Horizontally (from left to right): lightLevels = [5,10,100,200]
Vertically (from top to bottom): pixel = [0.5,1,2,4]


From the image displayed, we could see that image quality is getting better with increasing light level in each pixel size condition. We could also see that overall image quality is getting better with increasing light level in each pixel size condition.

vSNR plot:


From the above plot we could see that vSNR increases with increasing light level in each pixel size condition. Thus, we could conclude that vSNR can effectively reflect the noise level and overall image quality of landscape image, in terms of light level.


Pixel Size

Human Face

Fov=5, f#=5, viewD=1
Horizontally (from left to right): lightLevels = [5,10,100,200]
Vertically (from top to bottom): pixel = [0.5,1,2,4]


From the image displayed, we could see that image quality in terms of noise is getting better with increasing light level in each pixel size condition. However, the overall image quality might be better when choosing a proper pixel size (might be 1 in this image).

vSNR plot:


From the above plot we could see that vSNR increases with increasing light level in each pixel size condition. Thus, we could conclude that vSNR can effectively reflect the noise level of human face, in terms of pixel size. Considering the overall image quality, more resolution factors need to be considered.


Text

Fov=5, f#=5, viewD=1
Horizontally (from left to right): lightLevels = [5,10,100,200]
Vertically (from top to bottom): pixel = [0.5,1,2,4]


From the image displayed, we could see that image quality is getting better with increasing light level in each pixel size condition. However, the overall image quality might be better when choosing a proper pixel size (might be 1 in this image).

vSNR plot:


From the above plot we could see that vSNR increases with increasing light level in each pixel size condition. Thus, we could conclude that vSNR can effectively reflect the noise level of text image, in terms of pixel size. Considering the overall image quality, more resolution factors need to be considered.


Landscape

Fov=5, f#=5, viewD=1
Horizontally (from left to right): lightLevels = [5,10,100,200]
Vertically (from top to bottom): pixel = [0.5,1,2,4]


From the image displayed, we could see that image quality is getting better with increasing light level in each pixel size condition. However, the overall image quality might be better when choosing a proper pixel size (might be 1 in this image).

vSNR plot:


From the above plot we could see that vSNR increases with increasing light level in each pixel size condition. Thus, we could conclude that vSNR can effectively reflect the noise level of landscape image, in terms of pixel size. Considering the overall image quality, more resolution factors need to be considered.

F-number

Text

Fov=5, viewD=1, pixel = 1
Horizontally (from left to right): lightLevels = [50,100,200]
Vertically (from top to bottom): fnumber = [3, 5, 8]



From the image displayed, we could see that image quality in terms of noise is better when F-number is smaller. We could also see that overall image quality is better when F-number is smaller.

vSNR Plot: (from top to bottom, fnumber = 3, 5, 8)
File:Ft1.PNG
File:Ft2.PNG
File:Ft3.PNG

From the above plot we could see that vSNR is higher when F-number is smaller. Thus, we could conclude that vSNR can effectively reflect the noise level and overall image quality of text image, in terms of F-number.

Conclusions

References

[1] Baxter, Donald, et al. "Development of the I3A CPIQ spatial metrics." IS&T/SPIE Electronic Imaging. International Society for Optics and Photonics, 2012.

[2] J. Farrell et al., ”Using visible SNR (vSNR) to compare the image quality of pixel binning and digital resizing”, Proc SPIE 7537, 75370C (2010).


Appendix I

s_Psych221_winter2014_vSNR.m [1]


You could change the parameters (eg: light level, pixel size, f#) in the "Tuning the camera parameters" part.

Appendix II

Yaoxuan Li: analyze and generate scripts, do experimental tests, create presentation PPT
Huijie Yu: analyze and generate scripts, do experimental tests, create final wiki page
Xinyi Xie: analyze and generate scripts, do experimental tests, create final wiki page