Numerical derivative 1 INTRODUCTION A number of metrological processes do not directly measure the quantity of interest, but its gradient. This is the case, for example, of deflectometric...

Numerical derivatives:the goal is to get rebuild an image from its spatial gradients


Numerical derivative 1 INTRODUCTION A number of metrological processes do not directly measure the quantity of interest, but its gradient. This is the case, for example, of deflectometric measurements, which measure the shape gradient of the surface of a mirror. Figure 1: Example of shape reconstruction. Data from a freeform mirror (spacial application). Therefore, a reconstruction algorithm is necessary to estimate the shape of the surface of a mirror. During this project, you will code a shape reconstruction algorithm, which will allow you to become familiar with the notion of ill-conditioned problem. You will implement a solution to this problem by a Bayesian regularization method, and then analyze its behavior on simple cases before applying it to data from a deflectometric measurement on a satellite mirror. 2 DIRECT PROBLEM : The problem we are trying to solve can be defined as an inverse problem: ∇⃗⃗ ?(?, ?) → ?(?, ?) where ?(?, ?) is the shape function describing the height of the surface for any point (x,y). With its corresponding direct problem: ?(??, ?) → ∇⃗⃗ ?(?, ?) Shape reconstruction Slope X Slope Y Shape (in nanometer) Before any implementation of shape reconstruction, we will start this project designing solving the direct problem, i.e. a program that can estimate the gradient of any input shape. The gradient of a surface is defined as: ∇⃗⃗ ? = ( ?? ?? , ?? ?? ) = ( lim ℎ→+∞ ?(? + ℎ, ?) − ?(?, ?) ℎ , lim ℎ→+∞ ?(?, ? + ℎ) − ?(?, ?) ℎ ) The obvious difficulty lies in the fact that we need an infinitely sampled signal to apply the analytical definition of the gradient. To bypass this problem, numerical derivatives are estimated from closest neighbor values, and for a discrete sampled surface shape ?(?, ?) = ??,? we obtain: ∇⃗⃗ ? = ( ??+1,? − ??−1,? 2ℎ0 , ??,?+1 − ??,?−1 2ℎ0 ) Where ℎ0 is the lateral step between two values of ??,?. a) What is the definition of a convolution? Why is a convolutive formalism adapted to derivative estimation? b) Demonstrate that if we vectorize ??,? = ?? , (? = (? − 1) × ? + ?) : ?? ?? = ??+1,? − ??−1,? 2ℎ0 = ? ∗ ℎ? Where ℎ⃗ = (0, 1 2ℎ0 , 0, … . . ,0, − 1 2ℎ0 ) c) What would be the form of ?? ?? ? d) Why would a Fourier basis be adapted to a convolution formalism? e) Using the numpy function numpy.fft2, create a function that estimate the gradient of any input image. f) Compare the results on an image of your choice between your algorithm and the function numpy.gradient.z. What do you notice? How can you explain this difference? 3 NOISE STUDY a) Generate a Gaussian white noise matrix of standard deviation ? = 1. b) What is the spatial power spectral density of this noise? c) Using the numpy.fft2 function, calculate the power spectral density of the white noise. d) Is the Parceval theorem valid in this case? e) Estimate the gradient of this noise, and calculate his power spectral density. f) What do you notice? Calculate the transfer function of your derivative algorithm.
May 12, 2021
SOLUTION.PDF

Get Answer To This Question

Related Questions & Answers

More Questions »

Submit New Assignment

Copy and Paste Your Assignment Here