File tree Expand file tree Collapse file tree 2 files changed +10
-4
lines changed Expand file tree Collapse file tree 2 files changed +10
-4
lines changed Original file line number Diff line number Diff line change @@ -25,6 +25,8 @@ template <class SCALAR> class GProximal {
25
25
virtual t_Proximal proximal_function () const = 0;
26
26
// Returns the norm of x
27
27
virtual Real proximal_norm (t_Vector const &x) const = 0;
28
-
28
+ // Transforms input image to a different basis.
29
+ // Return linear_transform_identity() if transform not necessary.
30
+ virtual const t_LinearTransform &Psi () const = 0;
29
31
}; // class GProximal
30
32
#endif
Original file line number Diff line number Diff line change @@ -59,6 +59,13 @@ class L1GProximal : public GProximal<SCALAR> {
59
59
};
60
60
}
61
61
62
+ // ! \brief Analysis operator Ψ
63
+ // ! \details Under-the-hood, the object is actually owned by the l1 proximal.
64
+ t_LinearTransform const &Psi () const override {
65
+ return l1_proximal ().Psi ();
66
+ }
67
+
68
+
62
69
// All the public properties below are specific to the l1 proximal
63
70
// and therefore not part of the interface
64
71
@@ -93,9 +100,6 @@ class L1GProximal : public GProximal<SCALAR> {
93
100
SOPT_MACRO (weights, t_Vector);
94
101
#undef SOPT_MACRO
95
102
96
- // ! \brief Analysis operator Ψ
97
- // ! \details Under-the-hood, the object is actually owned by the l1 proximal.
98
- t_LinearTransform const &Psi () const { return l1_proximal ().Psi (); }
99
103
// ! Analysis operator Ψ
100
104
template <class ... ARGS>
101
105
typename std::enable_if<sizeof ...(ARGS) >= 1 , L1GProximal<SCALAR> &>::type Psi (
You can’t perform that action at this time.
0 commit comments