Simulation of LDPC Codes & Applications
version 0.7.9
Description:
- Simulation of regular LDPC codes.
- Probabilistic decoding: Belief Propagation algorithm for gaussian white noise transmission.
- Simulation application to image and audio data.
Image coding-decoding example:
An example of coding-decoding is available at the pyldpc webpage.
Installation
If you already have a working Python environment (Anaconda for e.g):
pip install --upgrade pyldpc
Otherwise, we recommend creating this minimal conda env
conda env create --file environment.yml conda activate pyldpc-env pip install -U pyldpc
Example
>>> import numpy as np
>>> from pyldpc import make_ldpc, encode, decode, get_message
>>> n = 15
>>> d_v = 4
>>> d_c = 5
>>> snr = 20
>>> H, G = make_ldpc(n, d_v, d_c, systematic=True, sparse=True)
>>> k = G.shape[1]
>>> v = np.random.randint(2, size=k)
>>> y = encode(G, v, snr)
>>> d = decode(H, y, snr)
>>> x = get_message(G, d)
>>> assert abs(x - v).sum() == 0
Documentation
For more examples, see the pyldpc webpage.