画像処理入門 > 初級編 > 膨張

膨張


膨張
2値化後、白領域を膨張するプログラムです。

サンプルプログラム
void dilation(unsigned char *out, unsigned char *in, int inHeight, int inWidth, int value){ int ix, iy, jx, jy; int outX, outY; memset(out, 0, inWidth * inHeight); for(iy = 0; iy < inHeight; ++iy){ for(ix = 0; ix < inWidth; ++ix){ if(in[iy * inWidth + ix] == 255){ for(jy = -value; jy <= value; ++jy){ outY = iy + jy; // 画像領域外チェック if( (outY < 0) || (outY >= (inHeight - 1)) ){ continue; } for(jx = -value; jx <= value; ++jx){ outX = ix + jx; // 画像領域外チェック if( (outX < 0) || (outX >= (inWidth - 1)) ){ continue; } out[outY * inWidth + outX] = 255; } } } } } }