Skip to content

A Python module for finding binary sequences optimized for coded aperture.

License

Notifications You must be signed in to change notification settings

carterbox/jeweler

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

97 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

jeweler

A Python module for finding binary sequences optimized for coded aperture.

Goal

Coded aperture is a data-collection strategy whose goal is to make solving an imaging inverse problem easier by intentionally modulating or controlling the light source with a specially designed sequence. Examples of these imaging inverse problems include deblurring, lensless imaging, and depth-of-field recovery. The success of the coded aperture approach depends on the properties of code, however, and finding a code with "optimal properties" remains difficult.

The aim of this library is to assist in quickly checking many equivalence classes of sequences against a metric. The equivalence classes targeted by this library are combinatoric necklaces, bracelets, and Lyndon words because FFT-based metrics of "good properties" should be invariant against a rotation or reversal of the sequence.

References

Karim, S., J. Sawada, Z. Alamgir, and S. M. Husnine. 2013. “Generating Bracelets with Fixed Content.” Theoretical Computer Science 475: 103–12. https://doi.org/10.1016/j.tcs.2012.11.024.

About

A Python module for finding binary sequences optimized for coded aperture.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published