我有一个CIImage我需要在我的Cocoa/Objective C程序中从颜色转换为Black和White.Peter H.之前向我指出了这个链接http://www.codingadventures.com/2008/06/threshold-filter-in-glsl/作为一种潜在的解决方案...但是我在那里编译内核例程时遇到了麻烦(参见单独的线程,如果感兴趣).
所以我想知道其他一个内置的CIFilter是否会完成我想要做的事情.我不想要灰度图像...我希望结果图像中的每个像素都是黑色或白色 - 我只需要能够告诉过滤器如何确定哪些像素应该变成黑色哪个像素应该变成白色.Photoshop中的"阈值"滤镜就是这样 - 它让我指定"阈值"然后它使用此值来决定哪些像素变为白色而哪些像素变为黑色.这就是我试图通过我的Xcode项目中的代码"复制".
如果其中一个内置过滤器可以用于此任何想法?谢谢.
我试图找出如何改变UIImage的颜色/色调.我发现iOS5有很多图像过滤器,但我很难找到正确使用CIColorMatrix过滤器的文档.
-(void)doCIColorMatrixFilter
{
//does not work, returns nil image
CIImage* inputImage = [CIImage imageWithCGImage:[[UIImage imageNamed:@"button.jpg"]CGImage]];
CIFilter *myFilter;
NSDictionary *myFilterAttributes;
myFilter = [CIFilter filterWithName:@"CIColorMatrix"];
[myFilter setDefaults];
myFilterAttributes = [myFilter attributes];
[myFilterAttributes setValue:inputImage forKey:@"inputImage"];
//How to set up attributes?
CIContext *context = [CIContext contextWithOptions:nil];
CIImage *ciimage = [myFilter outputImage];
CGImageRef cgimg = [context createCGImage:ciimage fromRect:[ciimage extent]];
UIImage *uimage = [UIImage imageWithCGImage:cgimg scale:1.0f orientation:UIImageOrientationUp];
[imageView setImage:uimage];
CGImageRelease(cgimg);
}
Run Code Online (Sandbox Code Playgroud)
这个过滤器的字典里面有什么代码?
我正在使用来自AFNetworking库的setImageWithUrl在表格单元格中设置UImageViews,但我需要图像为灰度...有什么方法可以做到这一点.我已经尝试了一些UIImage灰度转换器,但我猜它们不起作用,因为我设置的东西尚未下载.
我想做的就是采用基本的arkit视图并将其转换为黑白视图.现在基本视图是正常的,我不知道如何添加过滤器.理想情况下,在截取屏幕截图时,黑白过滤器会添加到屏幕截图中.
import UIKit
import SceneKit
import ARKit
class ViewController: UIViewController, ARSCNViewDelegate {
@IBOutlet var sceneView: ARSCNView!
override func viewDidLoad() {
super.viewDidLoad()
sceneView.delegate = self
sceneView.showsStatistics = true
}
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
let configuration = ARWorldTrackingConfiguration()
sceneView.session.run(configuration)
}
override func viewWillDisappear(_ animated: Bool) {
super.viewWillDisappear(animated)
sceneView.session.pause()
}
@IBAction func changeTextColour(){
let snapShot = self.augmentedRealityView.snapshot()
UIImageWriteToSavedPhotosAlbum(snapShot, self, #selector(image(_:didFinishSavingWithError:contextInfo:)), nil)
}
}
Run Code Online (Sandbox Code Playgroud) 我正在使用 AlamofireImage 从我的 CDN 下载图像,但是我想对下载的某些图像应用自定义过滤器(灰度)。目前我正在使用 scrollView 来显示所有可用图像,如果图像具有特定属性,则应用过滤器。
我是 AlamofireImage 的新手,所以我不知道如何应用自定义过滤器。
我已经申请
let imageFilter = BlurFilter(blurRadius: 10)
Run Code Online (Sandbox Code Playgroud)
到过滤器参数,所以我知道实际的过滤器过程正在工作,但有人可以帮助创建自定义过滤器以将灰度应用于下载的图像吗?
objective-c ×3
ios ×2
afnetworking ×1
arkit ×1
cocoa ×1
core-image ×1
filter ×1
ios5 ×1
iphone ×1
scenekit ×1
swift ×1
swift4 ×1
uiimageview ×1