Skip to content

nathanemac/ProxTV.jl

Repository files navigation

ProxTV

Stable Documentation Build Status Test workflow status Lint workflow Status Docs workflow Status

Coverage DOI

All Contributors

ProxTV.jl is a Julia package that provides a collection of exact and inexact proximal operators. This includes the Total Variation (TV) regularization with any p-norm.

This package is a Julia implementation of the ProxTV package for MATLAB and Python which is available here. Behind those implementations, there is a C++ library that provides the core of the proximal operators.

How to Use

The package is designed to be easy to use and to provide a consistent interface for all the implemented proximal operators.

Installation

You can install ProxTV.jl using the Julia package manager. From the Julia REPL, type ] to enter the Pkg REPL mode and run:

pkg> add ProxTV

Example

Here is an example of how to use ProxTV.jl to compute the proximal operator of the Total Variation (TV) regularization with a p-norm on a 1D signal.

using ProxTV

n = rand(10:100)
lambda = 0.15
y = rand(n)
x = zeros(n)
p = 1.32 # inexact prox computation : no closed-form for p = 1.32
ProxTV.TV(y, lambda, x, p)

Other examples can be found in the documentation.

How to Cite

If you use ProxTV.jl in your work, please cite using the reference given in CITATION.cff.

Contributing

If you want to make contributions of any kind, please first that a look into our contributing guide directly on GitHub.


Contributors