pub trait AdaptiveOptimiser {
// Required method
fn optimise(
&self,
stego: CoverMedia,
original: &CoverMedia,
target_db: f64,
) -> Result<CoverMedia, AdaptiveError>;
}Expand description
Adversarial embedding optimiser port (STC-inspired).
Reorders bit assignments after embedding to minimise chi-square distance from the unmodified cover’s statistical distribution.
Required Methods§
Sourcefn optimise(
&self,
stego: CoverMedia,
original: &CoverMedia,
target_db: f64,
) -> Result<CoverMedia, AdaptiveError>
fn optimise( &self, stego: CoverMedia, original: &CoverMedia, target_db: f64, ) -> Result<CoverMedia, AdaptiveError>
Optimise stego to stay within target_db of the original’s
statistical distribution.
§Errors
Returns AdaptiveError::BudgetNotMet if no permutation achieves
the target.