class P1::ImageSdk::SensorBayerOutput#

Overview#

In-memory representation of the image sensor Bayer output data. More…

#include <P1ImageBitmapImage.hpp>

class SensorBayerOutput: public P1::ImageSdk::BitmapBase
{
public:
    // methods

    BayerFormat Format() const;
    Rect ActiveArea() const;
    uint32_t FullWidth() const;
    uint32_t FullHeight() const;
    void OverwriteData(BitmapImage* refBitmap);
    void Transform(float a, float b, float c, int axis);
    void Transform(float ax, float bx, float cx, float ay, float by, float cy);
    void GainAndOffset(BitmapImage* gainBitmap, BitmapImage* offsetBitmap);
};

Inherited Members#

public:
    // methods

    int64_t ByteSize() const;
    uint32_t Stride() const;
    uint32_t BitsPerSample() const;
    uint32_t SamplesPerPixel() const;
    bool IsRowAligned() const;
    MSVC_ALLOW_PUBLIC_STL(std::shared_ptr<uint8_t>  Data());

Detailed Documentation#

In-memory representation of the image sensor Bayer output data.

Methods#

BayerFormat Format() const

The pixel format of the Data array.

Rect ActiveArea() const

The area of the sensor in pixels, that is exposed to light.

uint32_t FullWidth() const

Full sensor width in pixels, including borders not exposed to light.

uint32_t FullHeight() const

Full sensor height in pixels, including borders not exposed to light.

void Transform(float a, float b, float c, int axis)

Transform with 2nd order polynomial a * x^2 + b * x + c, axis: 0 for x, 1 for y.

void Transform(float ax, float bx, float cx, float ay, float by, float cy)

Transform with 2nd order polynomial (ax * x^2 + bx * x + cx)*(ay * y^2 + by * y + cy)

void GainAndOffset(BitmapImage* gainBitmap, BitmapImage* offsetBitmap)

Transform pixelwise: image = gainBitmap * image + offsetBitmap.