首页 文章

为自定义黑白过滤器添加阈值

提问于
浏览
0
- (UIImage *)pureBlackAndWhiteImage:(UIImage *)image {

unsigned char *dataBitmap = [self bitmapFromImage:image];

for (int i = 0; i < image.size.width * image.size.height * 4; i += 4) {

    if ((dataBitmap[i + 1] + dataBitmap[i + 2] + dataBitmap[i + 3]) < (255 * 3 / 2)) {
        dataBitmap[i + 1] = 0;
        dataBitmap[i + 2] = 0;
        dataBitmap[i + 3] = 0;
    } else {
        dataBitmap[i + 1] = 255;
        dataBitmap[i + 2] = 255;
        dataBitmap[i + 3] = 255;
    }
}

image = [self imageWithBits:dataBitmap withSize:image.size];

return image;

}

我使用核心Image非常新 . 我在网上找到了这个代码,它的作用是将图像转换为纯黑色和白色(无灰色) . 我想要做的是能够修改阈值 . 意思是我希望能够使它更白或更黑 . 我该怎么做?

1 回答

  • 0

    使用 (255 * 3 / 2) 表达式播放,直到您对结果满意为止 .
    此值越高,您将拥有的黑色像素越多 .

相关问题