将PIX对象转换为UIImage

时间:2013-06-22 09:51:55

标签: ios objective-c

我正在尝试使用带有函数

的leptonica图像库来应用阈值
l_int32 pixOtsuAdaptiveThreshold()

我相信我已成功使用此功能,但正如您所见,它返回一个int。我不确定如何从这里转换为UIImage或将我传入的PIX对象转换为UIImage?基本上我只是想在应用阈值后回复UIImage。

此功能的API可在此处找到:http://tpgit.github.io/Leptonica/binarize_8c.html#aaef1d6ed54b87144b98c72f675ad7a4c

有谁知道我必须做些什么来恢复UIImage?

谢谢!

1 个答案:

答案 0 :(得分:0)

这是另一个将数据转换为图像的用户...... Reading binary image data from a web service into UIImage

但是,如果你能,我会调查brad larsons真棒gpu图像过滤器可能更适合你https://github.com/BradLarson/GPUImage非常容易使用

添加了添加GPUImage框架的答案:抱歉,我不能帮助第一个,如果您想继续使用第二个,如果您只需要一个所需的阈值效果,您可以使用gpuimage作为框架工作,并在设置自适应阈值后我只是使用一个开关盒来表示不同的效果或者调用init你想要什么,我用一个滑块来获得效果控制或选择一个预定的值,但代码最终就像这样简单

 case GPUIMAGE_ADAPTIVETHRESHOLD:
    {
        self.title = @"Adaptive Threshold";
        self.filterSettingsSlider.hidden = NO;

        [self.filterSettingsSlider setMinimumValue:1.0];
        [self.filterSettingsSlider setMaximumValue:20.0];
        [self.filterSettingsSlider setValue:1.0];


        UIImage *newFilteredImage =  [[[GPUImageAdaptiveThresholdFilter alloc] init] imageByFilteringImage:[self.originalImageView image] ];
        self.myEditedImageView = newFilteredImage;
    }; break;