Skip to content

Instantly share code, notes, and snippets.

@mikebluestein
Created July 27, 2014 17:30
Show Gist options
  • Star 3 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save mikebluestein/e34ef9237619c09bcb7a to your computer and use it in GitHub Desktop.
Save mikebluestein/e34ef9237619c09bcb7a to your computer and use it in GitHub Desktop.
Core Image Detectors
using System;
using MonoTouch.CoreImage;
using MonoTouch.UIKit;
namespace CIDetectorsDemo
{
public class DetectorController : UIViewController
{
UIImageView imageView;
public override void ViewDidLoad ()
{
base.ViewDidLoad ();
var imageIn = UIImage.FromBundle("card.jpg");
//var imageIn = UIImage.FromBundle("qrcode.png");
var context = CIContext.FromOptions (null);
var options = new CIDetectorOptions {
Accuracy = FaceDetectorAccuracy.High
};
var detector = CIDetector.CreateRectangleDetector (context, options);
//var detector = CIDetector.CreateQRDetector (context, options);
var ciImage = CIImage.FromCGImage (imageIn.CGImage);
var features = detector.FeaturesInImage (ciImage);
var overlay = CIImage.ImageWithColor (CIColor.FromRgba (1.0f, 0.0f, 0.0f, 0.7f));
overlay = overlay.ImageByCroppingToRect (features [0].Bounds);
var ciImageWithOverlay = overlay.CreateByCompositingOverImage (ciImage);
var imageOut = UIImage.FromImage (ciImageWithOverlay);
imageView = new UIImageView (imageOut);
imageView.Frame = View.Frame;
Add (imageView);
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment