Software
Some software packages I created.
Some software packages I created.
A lightweight diffusion library for training and sampling from diffusion models. It is built for easy experimentation when training new models and developing new samplers, supporting minimal toy models to state-of-the-art pretrained models. The core of this library for diffusion training and sampling is implemented in less than 100 lines of very readable pytorch code.
Given a pair of images taken with an unknown camera translation and focal shift, computes the unknown translation using phase correlation. This library is designed to be very robust to focus shifts in the overlapping area, by applying a series of frequency-domain filters which enables matching on both low- and high-frequency features.
A trignometric polynomial is defined by
\[p(x) = a_0 + \sum_{k=1}^n a_k \cos(kx) + a_{-k} \sin(kx)\]
The polynomial \(p(x)\) can be represented either by \(2n+1\) coefficients
\(a_k\) or by evaluations at \(2n+1\) distinct points in the interval
\([0,2\pi)\). This package provides the functions evaluate
and interpolate
using the Fast Fourier Transform (FFT) to convert efficiently between these two
representations.
[github]
[docs]
Sum of squares optimization built on top of the modeling language picos. In addition to modeling convex relaxations of polynomial optimization problems, this package also provides easy access to pseudoexpectation operators for both formulating problems and extracting solutions via rounding algorithms. [github] [docs] [pypi]
This is an set of Javascript-based interpreters which use web-workers. It
differs from other Javascript interpreters as the main interpreting work is done
in a seperate worker thread, and thus would not slow down the main UI thread
when performing a lengthy computation. There is a front-end providing the input
and output prompts, which links to many separate interpreter backends. Currently
the main backend is a Scheme interpreter, which implements a significant subset
of Scheme. There is also a logic interpreter based on a subset of Prolog taught
in CS61A at Berkeley, and a Javascript interpreter which
just calls eval
. [github]
[demo]