public static function imageDenoise(&$image, $sizeX, $sizeY) { // 初始化 self::$image = $image; self::$visit = array_fill(0, 120, array_fill(0, 60, FALSE)); self::$denoised = self::$visit; self::$sizeX = $sizeX; self::$sizeY = $sizeY; // 去噪 for ($x = 0; $x < $sizeX; $x++) { for ($y = 0; $y < $sizeY; $y++) { if (!self::$visit[$x][$y] && self::$image[$x][$y] != 255) { $size = self::getBlockSize($x, $y, 0); // 求块大小 if ($size < 10) { // 根据块大小判断噪点簇 self::deletePixel($x, $y); } } } } return self::$image; }