• Aucun résultat trouvé

Examples of Non-Local Functionals

Non-Local Functionals for Imaging

8.2 Examples of Non-Local Functionals

X

X

f(x,y,u(x),u(y))dx dy, where the density f now depends on pairs of points and their image values. In the case of patch-based filters, we even have to consider densities depending on the image values at all points close to x and y.

In the first section, we will review how the mentioned examples can be cast as a minimisation problem for a non-local functional. Then we will provide in the next section an existence result for minimising points, which we are going to apply in the last section to the three types of functionals introduced in the first section.

8.2 Examples of Non-Local Functionals

In these notes, we are going to analyse the behaviour of non-local functionals on some Lebesgue space. Let us first clarify the terminology non-local functional.

Throughout the text, X shall denote a bounded, open subset ofRmfor some m∈N endowed with the Lebesgue measure on theσ-algebraA of all Lebesgue measur-able subsets of X . Moreover, we defineBto be the Borelσ-algebra ofR.

Definition 8.1. Let nNand p∈[1,∞). We call a mapJ: Lp(X ;Rn)R∪{∞}, which is not constantly equal to infinity, a non-local functional on Lp(X ;Rn)if there exists a function f : X×X×Rn×RnRsuch that

J(u) =

X

X

f(x,y,u(x),u(y))dx dy for all u∈Lp(X ;Rn) (8.1) and such that

(i) f is measurable with respect to theσ-algebrasA ×A×Bn×BnandB, (ii) f has the symmetry

f(x,y,w,z) =f(y,x,z,w) for all x,y∈X,w,z∈Rn, (8.2) (iii) The negative part fof f fulfils

X

X

f(x,y,u(x),u(y))dx dy<∞ for all u∈Lp(X ;Rn).

We then say thatJ is the non-local functional defined by f . Sometimes it is conve-nient to express the dependency of the functional on p and f and then we writeJfp instead ofJ.

The symmetry condition (8.2) in this definition is just introduced for convenience, since a function ˜f and its symmetrisation f , given by

f(x,y,w,z) =1

2(˜f(x,y,w,z) +f˜(y,x,z,w)) for all x,y∈X,w,z∈Rn, would define the same non-local functional anyway.

Before giving a criterion for non-local functionals to possess a minimising point, we first list a few examples where such functionals have been documented in the literature recently.

8.2.1 A Derivative Free Model for the Sobolev and Total Variation Seminorm

Let q∈[1,∞)and(ϕk)kN be a sequence of non-negative, radially symmetric and radially decreasing functions in L1(Rm)such that we have for all k∈N

Rmϕk(x)dx=1 and lim

k→∞

{y∈Rm:|y|>δ}ϕk(x)dx=0

for everyδ(0,∞). It is shown in [4] that there exist constants Kq,m(0,∞)such that the functionals

Rkq(u) =

X

X

|u(x)−u(y)|q

|x−y|q ϕk(x−y)dx dy, k∈N,

fulfil for every measurable real function u that

klim→∞Kq,mRqk(u) =

⎧⎪

⎪⎨

⎪⎪

X|∇u(x)|qdx if q>1 and u∈W1,q(X),

|Du|(X) if q=1 and u∈BV(X),

∞ otherwise.

So, we could think of the functional Kq,mRkqas an approximation for the qth power of the Sobolev seminorm of u if q>1 and for the total variation seminorm of u if q=1.

Let p∈(1,∞). The energy minimisation problem then consists in minimisation of the energy functional

J : Lp(X)R∪ {∞}, J(u) =αRkq(u) +1 p

X

|u(x)−u0(x)|pdx

for some regularisation parameterα(0,∞)and some k∈N, which compromises smoothness for the regularised solution with respect to the approximation of the Sobolev seminorm and closeness of the data with respect to the Lp norm. These minimisation problems have been considered in [1]. In [19], numerical realisations have been derived which reveal the relations to various filtering techniques such as bilateral filtering.

8.2.2 Neighbourhood Filters and Non-Local Functionals

Neighbourhood filters approximate a noisy image u0: X→Rat a point x∈X by an average over the domain with similar intensity to u0(x). The filtered image u : X→Ris thus calculated by

u(x) = 1 C

X

K(x,y,u0)u0(y)dy, C=

X

K(x,y,u0)dy, (8.3)

for some kernel function K providing a measure for the distance between the points (x,u0(x)) and(y,u0(y))(assuming that the integrals are well-defined). A typical choice of K is

K(x,y,u0) =g(|u0(x)−u0(y)|2)k(x,y) (8.4) for some positive, bounded, continuous function g∈C([0,∞)) and some non-negative, symmetric function k∈L(X×X), i.e. k(x,y) =k(y,x)for all x,y∈X , with k = 0. The probably best known examples of this method are the Yaroslavsky filter [23], the SUSAN filter [20], and the bilateral filter [21].

In [12], it was shown that this neighbourhood filter can be written as the first step of a fixed point iteration starting with the initial data u0∈L2(X)for the minimisation of the functional

R: L2(X)R, R(u) =

X

X

G(|u(x)−u(y)|2)k(x,y)dx dy, (8.5) where G is a primitive function for g. Indeed, if we calculate the derivative ofRin the direction of a function v∈L2(X), we find (using the symmetry of the integrand with respect to the interchange of the variables x and y)

δR(u; v) =lim

t0

R(u+tv)−R(u) t

=4

X

X

g(|u(x)−u(y)|2)k(x,y)(u(x)−u(y))v(x)dx dy.

So,Ris Gˆateaux differentiable and every minimising point u∈L2(X)fulfils that δR(u; v) =0 for all v∈L2(X). This condition can be written in the form

u(x) =

Xg(|u(x)−u(y)|2)k(x,y)u(y)dy

Xg(|u(x)−u(y)|2)k(x,y)dy for almost all x∈X . The first iteration u1of a fixed point iteration

u(x) =

Xg(|u −1(x)−u−1(y)|2)k(x,y)u−1(y)dy

Xg(|u−1(x)−u−1(y)|2)k(x,y)dy , ∈N, (8.6) with the initial value u0 is then equivalent to the neighbourhood filter (8.3) with K(x,y,u0) =g(|u0(x)−u0(y)|2)k(x,y).

Now, we may not stop after the first iteration step, but try to reach out for a minimising point ofR. Nevertheless, we do not want to go too far away from the original data u0, which by the way do not appear in the functionalRat all. There-fore, it is advisable to add to the functionalR a term penalising a large distance to u0. On this way, we would for instance end up with the problem of finding a minimising point of a functionalJ : Lp(X)R, p[2,∞), of the form

J(u) =αR(u) +

X

|u(x)−u0(x)|pdx, (8.7) with some regularisation parameterα(0,∞), as was suggested in [12].

8.2.3 Patch-Based Filtering with a Non-Local Functional

If we choose the weighting function K in (8.3) not only to depend on the difference between the intensities at the points x and y in X , but on the difference between

two domains, the so-called patches, around these two points, then we get kernel functions of the form

K(x,y,u0) =g(Hu0(x,y))k(x,y), (8.8) where

Hu(x,y) =

X

h(t)|u(x−t)−u(y−t)|2dt

measures the distance in an intensity image u∈L2(X)between the patches around the points x,y∈X with some non-negative weighting function h∈L(X),h=0.

Since the term Hu(x,y)involves also values of u at points outside of the domain X , we will assume that X is a rectangular domain inRm and consider every func-tion u∈L2(X)to be just periodically extended outside that domain. Moreover, we choose the function g :[0,∞)Rto be positive, bounded, and continuous and we assume for simplicity that the non-negative function k∈L(X×X)withk=0 only depends on the distance between the two patches, so k(x,y) =k1(|x−y|)for some function k1∈L([0,∞)).

We will call such a neighbourhood filter patch-based. The prime example for this method is the non-local means filter [6]. Other applications can be for instance found in [3] and [13].

Proceeding as before, we write the neighbourhood filter in the form of a fixed point iteration for minimising the functional

R: L2(X)R, R(u) =

X

X

G(Hu(x,y))k(x,y)dx dy (8.9)

with some G∈C1(X) with positive and bounded derivative. Using that we have k(x+s,y+s) =k(x,y)for all x,y,s∈X , we find for the directional derivative ofR in the direction of a function v∈L2(X)the expression

δR(u; v) =4

X

X

g(x,˜ y,u)k(x,y)(u(x)−u(y))v(x)dx dy, where the function ˜g is given by

g(x,˜ y,u) =

X

h(s)G(Hu(x+s,y+s))ds. (8.10) So,Ris a Gˆateaux differentiable functional and every minimising point u∈L2(X) ofRsatisfiesδR(u; v) =0 for all v∈L2(X). This can be written as

u(x) =

Xg(x,˜ y,u)k(x,y)u(y)dy

Xg˜(x,y,u)k(x,y)dy (8.11) for almost all x∈X .

To establish the relation between the functional (8.9) and the filter defined by the kernel (8.8) in analogy to the connection between the functional (8.5) and the filter defined by the kernel (8.4), we should thus choose the function G such that

g(Hu0(x,y)) =λu0

X

h(s)G(Hu0(x+s,y+s))ds (8.12) for almost all(x,y)∈X×X , all initial data u0∈L2(X), and some constantλu0 (0,∞)possibly depending on u0. In general, however, it is not necessarily true that there exists for a given function g a solution G to this equation.1

It was therefore suggested in [12] to choose instead for G a primitive function of g, define ˜g as before by relation (8.10), and consider the neighbourhood filter

u(x) =

Xg(x,y,˜ u0)k(x,y)u0(y)dy

Xg(x,˜ y,u0)k(x,y)dy , (8.13) which is the first step of a fixed point iteration for (8.11) with initial data u0. This neighbourhood filter can now be seen as an approximation of the patch-based filter with kernel K(x,y,u0) =g(Hu0(x,y))k(x,y). Indeed, the only difference is that the kernel K is replaced by the averaged kernel

K˜(x,y,u0) =

X

h(s)K(x+s,y+s,u0)ds.

Following the lines of the previous section to derive an energy functional related to the filter defined by the kernel K, we thus end up with a functional of the form

J : Lp(X)R, J(u) =αR(u) +

X

|u(x)−u0(x)|pdx, (8.14) withR given by (8.9), G chosen as primitive function of g, some regularisation parameterα(0,∞), and p[2,∞).