private void buttonWhiteRefTest3_Click( object sender, EventArgs e )
{
int W = DEFAULT_WHITE_REFERENCE_IMAGE_SIZE;
int H = DEFAULT_WHITE_REFERENCE_IMAGE_SIZE;
ImageUtility.Bitmap WhiteRef = new ImageUtility.Bitmap( W, H, m_sRGBProfile );
ImageUtility.float3 xyY = new ImageUtility.float3( m_sRGBProfile.Chromas.W.x, m_sRGBProfile.Chromas.W.y, 0.0f );
for ( int Y=0; Y < H; Y++ )
{
float V = (float) Y / H;
for ( int X=0; X < W; X++ )
{
float U = (float) X / W;
xyY.z = Math.Min( 1.0f, 1.0f - 0.5f * V );
ImageUtility.float4 XYZ = new ImageUtility.float4( ImageUtility.ColorProfile.xyY2XYZ( xyY ), 1.0f );
WhiteRef.ContentXYZ[X,Y] = XYZ;
}
}
// Assign to the database
m_CalibrationDatabase.WhiteReferenceImage = WhiteRef;
UpdateWhiteReferenceImageUI();
}