LamTangYu: Difference between revisions
imported>Projects221 |
imported>Projects221 |
||
| Line 37: | Line 37: | ||
<math>\tilde{R}(x,y)</math>, <math>\tilde{G}(x,y)</math>, and <math>\tilde{B}(x,y)</math> are first interpolated. Then <math> M_{rg}\left(x,y\right)</math>, <math> M_{rb}\left(x,y\right)</math>, and <math>M_{gb}\left(x,y\right)</math> are computed by taking pairwise differences of the interpolated color channels and filtering with a median filter. | <math>\tilde{R}(x,y)</math>, <math>\tilde{G}(x,y)</math>, and <math>\tilde{B}(x,y)</math> are first interpolated. Then <math> M_{rg}\left(x,y\right)</math>, <math> M_{rb}\left(x,y\right)</math>, and <math>M_{gb}\left(x,y\right)</math> are computed by taking pairwise differences of the interpolated color channels and filtering with a median filter. | ||
<br> | <br> | ||
At each pixel, only one color channel was originally sampled. To obtain the estimates for the other two channels, we look at the sum or difference between the original color sample and the corresponding median filtered point. For example, if at pixel <math\left(x,y\right)>, the red channel was sampled with a value of <math> r_{x,y} </math>. | At each pixel, only one color channel was originally sampled. To obtain the estimates for the other two channels, we look at the sum or difference between the original color sample and the corresponding median filtered point. For example, if at pixel <math>\left(x,y\right)>, the red channel was sampled with a value of <math> r_{x,y} </math>. | ||
=== Gradient Based === | === Gradient Based === | ||
Revision as of 21:05, 18 March 2013
Back to Psych 221 Projects 2013
Introduction
The purpose of the camera forensics project is to automatically detect whether an image, that was produced by CFA interpolation, was tampered with. CFA interpolation is used by digital camera to generate digital images. The interpolation will result in specific statistical patterns in the pixels of an image, which and then be utilized to determined whether or not an image has been altered.
Background
What is CFA Interpolation?
When digital cameras capture images, it saves the output of a single sensor after passing through a color filter array (CFA). Every single pixel of a color image is composed of three color channels, red, green, and blue. However, the camera is only able to sample a single color channel per pixel, so to fully form a colored image, the values of the other two colors will have to be estimated. Various interpolation techniques are used to estimate the missing samples.
Different Types of CFA Interpolation Techniques

A common CFA is the Bayer Array. Colors are sampled according to the pattern in Fig. 1. As shown, the green color channel is sampled at twice the rate of the red and blue channels. All of the interpolation methods below assume that the image was captured through a Bayer Array.
Let , , and represent the CFA sampled versions of the three color channels.
Bilinear/Bicubic
Bilinear and bicubic are the simplest interpolation algorithms. Each color channel is interpolated independently by using a 2D linear filter on , , and .
for such that . Otherwise, . The same is done for the green and blue channels. For bilinear interpolation, a 3 by 3 filter is used and for bicubic interpolation, a 7 by 7 filter is used.
Smooth Hue Transition
One downfall of bilinear/bicubic interpolation is that neighboring pixels may differ significantly in value, which is unlikely in natural images.
Since there are twice as many green samples as red and blue, the missing samples in the green color channel are first bilinearly interpolated as described above. After interpolating the green channel, the red and blue channels can be estimated by bilinearly interpolating the ratio and respectively.
Median Filter
, , and are first interpolated. Then , , and are computed by taking pairwise differences of the interpolated color channels and filtering with a median filter.
At each pixel, only one color channel was originally sampled. To obtain the estimates for the other two channels, we look at the sum or difference between the original color sample and the corresponding median filtered point. For example, if at pixel .
Gradient Based
Adaptive Color Plane
Threshold-Based Variable Number of Gradients
Methods
EM Algorithm
E-Step
M-Step
Probability Map and Its Fourier Transform
Thresholding for Determining Fake Images
Results
Data Set
Error Rates
Conclusions
References - Resources and related work
References
Software
Appendix I - Code and Data
Code
Data
Appendix II - Work partition (if a group project)
Brian and Bob gave the lectures. Jon mucked around on the wiki.