pub struct AiGenProfile {
pub model_id: String,
pub channel_weights: [f64; 3],
pub carrier_map: HashMap<String, Vec<CarrierBin>>,
}Expand description
Spectral fingerprint for a single AI image generator model.
Stores per-resolution carrier frequency maps extracted from reference
images (pure-black / pure-white outputs dominated by the watermark
signal). The carrier_map key is "WIDTHxHEIGHT" (e.g. "1024x1024").
Fields§
§model_id: StringGenerator identifier, e.g. "gemini", "midjourney-v7".
channel_weights: [f64; 3]Per-channel embedding weights [R, G, B] (G is reference=1.0).
carrier_map: HashMap<String, Vec<CarrierBin>>Map from "WxH" resolution string to carrier bin list.
Implementations§
Source§impl AiGenProfile
impl AiGenProfile
Sourcepub fn carrier_bins_for(&self, width: u32, height: u32) -> Option<&[CarrierBin]>
pub fn carrier_bins_for(&self, width: u32, height: u32) -> Option<&[CarrierBin]>
Return carrier bins for the given resolution, or None if unknown.
Trait Implementations§
Source§impl Clone for AiGenProfile
impl Clone for AiGenProfile
Source§fn clone(&self) -> AiGenProfile
fn clone(&self) -> AiGenProfile
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for AiGenProfile
impl Debug for AiGenProfile
Source§impl<'de> Deserialize<'de> for AiGenProfile
impl<'de> Deserialize<'de> for AiGenProfile
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for AiGenProfile
impl RefUnwindSafe for AiGenProfile
impl Send for AiGenProfile
impl Sync for AiGenProfile
impl Unpin for AiGenProfile
impl UnsafeUnpin for AiGenProfile
impl UnwindSafe for AiGenProfile
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more