#include "image.h" namespace Image { void threshold(SDL_Surface *image, int lowerBound, int upperBound) { int x, y; for (int i = 0; i < image->w * image->h; ++i) { int gray = GRAY(((uint32_t*)image->pixels)[i]); if (gray > lowerBound && gray < upperBound) ((uint32_t*)image->pixels)[i] = 0xffffffff; else ((uint32_t*)image->pixels)[i] = 0xff000000; //gray | (gray << 8) | (gray << 16); } } SDL_Surface *copySurface(SDL_Surface *s) { SDL_Surface *copy = SDL_CreateRGBSurface(SDL_SWSURFACE, s->w, s->h, s->format->BitsPerPixel, s->format->Rmask, s->format->Gmask, s->format->Bmask, s->format->Amask); SDL_BlitSurface(s, NULL, copy, NULL); return copy; } }