Given a signal,
![$ f$](img137.png)
say, we address now the issue of determining a
partition
![$ \Delta $](img544.png)
, and sub-partitions
![$ \Delta_j,j=1,\ldots,n$](img507.png)
,
such that: a)
![$ \cup_{j=1}^n\Delta_j=\Delta$](img534.png)
and b) the partitions are
suitable for generating a sparse representation of the
signal in hand. As a first step we propose to tailor the partition
to the signal
![$ f$](img137.png)
by setting
![$ \Delta $](img544.png)
taking into account
the critical points of the curvature function
of the signal, i.e.,
Usually the entries in
![$ T$](img546.png)
are chosen as the initial knots of
![$ \Delta $](img544.png)
. In order to obtain more knots we apply subdivision
between consecutive knots in
![$ T$](img546.png)
thereby obtaining a partition
![$ \Delta $](img544.png)
with the decided number of knots. An algorithm for
implementing such procedure can be found in [
21].
According to Theorem
2, in order to build a dictionary
for
![$ S_m(\Delta )$](img509.png)
we need to choose
![$ n$](img532.png)
-subpartitions
![$ \Delta_j\in
\Delta$](img533.png)
such that
![$ \cup_{j=1}^n\Delta_j=\Delta$](img534.png)
. As an
example we suggest a simple method for producing
![$ n$](img532.png)
-subpartitions
![$ \Delta_j\in
\Delta$](img533.png)
, which is used in the numerical simulations of
the next section. Considering the partition
![$ \Delta =\{x_0,x_1,\ldots,x_{N+1}\}$](img547.png)
such that
![$ c=x_0<x_1<\cdots
<x_{N+1}=d$](img548.png)
, for each integer
![$ j$](img347.png)
in
![$ [1,n]$](img549.png)
we set
![$\displaystyle \Delta _j := \{c,d\}\cup \{x_{k} : k\in [1,N]$](img550.png)
and
e.g. if
![$ N=10$](img552.png)
and
![$ n=3$](img553.png)
, we have
![$ \Delta _3 = \{c, x_2, x_5, x_8, d\}. $](img556.png)
The codes for creating a partition adapted to a given
signal are
ProducePartition.m
and
FinalProducePartition.m
and
the one code for creating the dictionaries for the space is
CutDic.m.
Subsections