Struct rawloader::RawImage [−][src]
pub struct RawImage {}Show fields
pub make: String, pub model: String, pub clean_make: String, pub clean_model: String, pub width: usize, pub height: usize, pub cpp: usize, pub wb_coeffs: [f32; 4], pub whitelevels: [u16; 4], pub blacklevels: [u16; 4], pub xyz_to_cam: [[f32; 3]; 4], pub cfa: CFA, pub crops: [usize; 4], pub blackareas: Vec<(u64, u64, u64, u64)>, pub orientation: Orientation, pub data: RawImageData,
Expand description
All the data needed to process this raw image, including the image data itself as well as all the needed metadata
Fields
make: String
camera make as encoded in the file
model: String
camera model as encoded in the file
clean_make: String
make cleaned up to be consistent and short
clean_model: String
model cleaned up to be consistent and short
width: usize
width of the full image
height: usize
height of the full image
cpp: usize
number of components per pixel (1 for bayer, 3 for RGB images)
wb_coeffs: [f32; 4]
whitebalance coefficients encoded in the file in RGBE order
whitelevels: [u16; 4]
image whitelevels in RGBE order
blacklevels: [u16; 4]
image blacklevels in RGBE order
xyz_to_cam: [[f32; 3]; 4]
matrix to convert XYZ to camera RGBE
cfa: CFA
color filter array
crops: [usize; 4]
how much to crop the image to get all the usable area, order is top, right, bottom, left
blackareas: Vec<(u64, u64, u64, u64)>
Areas of the sensor that is masked to prevent it from receiving light. Used to calculate black levels and noise. Each tuple represents a masked rectangle’s top, right, bottom, left
orientation: Orientation
orientation of the image as indicated by the image metadata
data: RawImageData
image data itself, has width
*height
*cpp
elements
Implementations
Outputs the inverted matrix that converts pixels in the camera colorspace into XYZ components.
Outputs the inverted matrix that converts pixels in the camera colorspace into XYZ components normalized to be easily used to convert to Lab or a RGB output space
Not all cameras encode a whitebalance so in those cases just using a 6500K neutral one is a good compromise
Normalize matrix so that inm * (1,1,1) is (1,1,1,1) and then invert
Matrix inversion that deals with 4x3 matrices
Returns the CFA pattern after the crop has been applied (and thus the pattern potentially shifted)
Checks if the image is monochrome
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for RawImage
impl UnwindSafe for RawImage
Blanket Implementations
Mutably borrows from an owned value. Read more