Portfolio[UWM] Techniki Multimedialne / PIRO

Binaryzacja bitmapy

Zadanie
Zaimplementować funkcję binaryzacją bitmapę.

Obrazem wynikowym będzie obrazem czarno-białym.

ma parametry funkcji:
  • _BitMap źródło obrazka,
  • _Level granica binaryzacji,
BitMap threshold(BitMap _BitMap, int _Level)
{
	// utworzenie kopii bitmapy
	BitMap oNew = _BitMap; 
	oNew.Pixels = Clone(_BitMap);

	// proces przetwarzania 
	for(int y = 0; y < _BitMap.Height; y++)
		for(int x = 0; x < _BitMap.Width; x++)
		{
			Pix oPix = Get_PIX(x, y, _BitMap);
			oPix.Light = (oPix.Light > _Level) ? 255 : 0;
			int inGray = (oPix.Red + oPix.Green + oPix.Blue)/3;
			oPix.Red = (inGray > _Level) ? 255 : 0;
			oPix.Green = oPix.Red;
			oPix.Blue = oPix.Red;
			Set_PIX(x,y,oPix,oNew);
		}
	return oNew;
}

  • Administracja