//获取转换后的图片 public Mat GetMat() { for (int row = 0; row < Dst.Rows; row++) { for (int col = 0; col < Dst.Cols; col++) { int num_0 = 0;//黑色数量 int num_1 = 0; //对源图片的划分区域遍历计算 for (int x = 0; x < calc_range_x; x += leap_num) { for (int y = 0; y < calc_range_y; y += leap_num) { //直接第一通道即可,不适合可以选择分割hsv,再计算h通道 int pix_value = Src.Get <byte>(row * calc_range_y + y, col * calc_range_x + x); if (pix_value >= thresold_var) { num_1++; } else { num_0++; } } } if (num_1 > num_0) { Dst.Set(row, col, (byte)255); } else { Dst.Set(row, col, (byte)0); } } } return(Dst); }