Research

Some of my research projects over the years. See the various html and pynb files for discussion and examples. Links to some of the most useful papers are included.

Block Arithmetic Coding

BAC is a variable-to-fixed (VtoF) encoder. BAC parses the input into variable length phrases and encodes each with a fixed length codeword. BAC can be thought of as the opposite of Huffman coding (more precisely, the opposite of Shannon-Fano coding). BAC works great for large codebooks, inputs whose probabilities vary, and inputs with dependency structure (e.g., Markov input).

The first notebook discusses the basics of BAC and shows how to compute BAC's coding efficiency. [html] [ipynb]

The second notebook presents simple encoder and decoder functions for a binary input. [html] [ipynb]

References: [IT93paper] [IT93MarkovPaper]

SSIS: Spread Spectrum Image Steganography

SSIS is a steganography technique developed by Lisa Marvel (my graduate student and scientist with the US Army Research Laboratory), Charles Retter (also ARL), and myself in the late 1990's and early 2000's. We published several papers describing the technique. We also were awarded a US Patent. Those papers and the patent have been cited over a thousand times.

The notebook, [html] and [ipynb], presents the basics of SSIS.

References: [TrIP99] [ICIP98]