#include #include "Error.hpp" #include "Math.hpp" float CalcMSE3( const Bitmap& bmp, const Bitmap& out ) { float err = 0; const uint32_t* p1 = bmp.Data(); const uint32_t* p2 = out.Data(); size_t cnt = bmp.Size().x * bmp.Size().y; for( size_t i=0; i> 8 ) - ( ( c2 & 0x0000FF00 ) >> 8 ) ); err += sq( ( ( c1 & 0x00FF0000 ) >> 16 ) - ( ( c2 & 0x00FF0000 ) >> 16 ) ); } err /= cnt * 3; return err; } float CalcMSE1( const Bitmap& bmp, const Bitmap& out ) { float err = 0; const uint32_t* p1 = bmp.Data(); const uint32_t* p2 = out.Data(); size_t cnt = bmp.Size().x * bmp.Size().y; for( size_t i=0; i> 24 ) - ( c2 & 0xFF ) ); } err /= cnt; return err; }