Accessing data of leptonica PIX data

This is mainly as a reference

 
/**
 * Get Pixel value at given  point
 */
l_uint32 pixAtGet(PIX* pix, int_t x, int_t y)
{
    l_int32 wpl    = pixGetWpl(pix);
    l_uint32* data = pixGetData(pix);
    l_uint32* line = data + y * wpl;
    l_uint32 value = GET_DATA_BYTE(line, x);
    return value;
}

To set a pixel value we can use this

/**
 * Set Pixel value at given  point
 */
void pixAtSet(PIX* pix, int_t x, int_t y, byte_t value)
{
	l_int32 wpl     = pixGetWpl(pix);
	l_uint32* data  = pixGetData(pix);
	l_uint32* line  = data + y * wpl;
	SET_DATA_BYTE(line, x, value);
}

Leave a Comment

Your email address will not be published. Required fields are marked *