-
Notifications
You must be signed in to change notification settings - Fork 15
Notes
Jay H edited this page Apr 5, 2016
·
1 revision
- read image as n-bit plane
- show n-bit plane as image
- get n-bit image as n bit planes
- e.g. n-by-m 8-bit image has pixels each as 0-255 => 8 n-by-m images with pixels as 0-1
- combine n bit planes as one n-bit plane
-
PBC (pure binary code) to CGC (gray code)
- 1st most significant bit plane in CGC is just the PBC one
- given ith most significant bit plane in PBC, bit plane i in CGC becomes bit plane i in PBC XOR bit plane i-1 in PBC
-
CGC to PBC
- file to list of bytes
- list of bytes to list of 8-bytes each
- k = sum of bit flips along each row and column of block
- max_k = maximum number of k given an n-by-m block
- returns k/max_k
- read file as n bit planes
- PBC to CGC
- segment each bit plane into blocks
- mark each block as either simple or complex using threshold
- conjugate each secret block if its complexity is below threshold
- store this act in conjugation map
- insert secret blocks using ordering defined
- extra secret blocks are header (defining orderings?, and conjugation map)
- CGC to PBC
- write image
Notes:
- set info-threshold alpha (suggested alpha = 0.3)
- define function for sorting an image's blocks given its n bit planes
- define function for ordering a secret file's blocks
- define subset indices of complex blocks of image to be replaced with secret blocks
complexified: flip all grids with complexity < thresh
- cgc = rainbow
- pbc = silver
simplified: flip all grids with complexity > thresh
- cgc = normal, best_thresh ~ 0.35, ~12500 grids
- pbc = normal, best_thresh ~ 0.45, ~10500 grids