Core Image for Swift Available for Pre-Order!
I'm super excited to be able to announce that Core Image for Swift, my guide to Apple's awesome framework for image processing, is now available for pre-order at iBooks Store. This is the first book in...
View ArticleProperly Typed Selectors in Xcode 7.3 beta 4
How many times have you had some innocuous looking code like this: let button = UIButton(type: .InfoDark) button.addTarget(self, action: "showInfo", forControlEvents: .TouchDown)...which compiles...
View ArticleCore Image for Swift: Advanced Image Processing for iOS
I'm delighted to be announce that my book, Core Image for Swift, is now available for sale in Apple's iBooks store. Core Image is Apple's awesome image processing and analysis framework. My book is a...
View ArticleSweetcorn: A Node Based Core Image Kernel Builder
While I've had some free time during a fortnight of conferences (try! Swift and RWDevCon were both amazing!), I've taken a small break from writing my book to create Sweetcorn - an open source OS X...
View ArticleCreating a Bulging Eyes Purikura Effect with Core Image
One of my fellow speakers at try! Swift, Mathew Gillingham, suggested I look at the "bulging" eyes effect used in Japanese Purikura photo booths. Always up for a challenge, I thought I'd spend a quick...
View ArticleCreating a Selective HSL Adjustment Filter in Core Image
The other day, while idly browsing Stack Overflow, I came across this question: the questioner was asking whether they could use Core Image to adjust the hue, saturation and luminance of an image...
View ArticleCore Image for Swift v1.2 Released!
I'm pleased to announce that today sees the release of version 1.2 of my book, Core Image for Swift. To the best of my knowledge, Core Image for Swift is the only book dedicated to Apple's awesome...
View ArticleCreating a Custom Variable Blur Filter in Core Image
Last night, I gave a talk at NSLondon on Apple's Core Image framework. Speaking to attendees afterwards, there were two frequent comments: "Core Image is far easier than I thought" and "Core Image is...
View ArticleA Look at Perspective Transform & Correction with Core Image
Hidden away in Core Image's Geometry Adjustment category are a set of perspective related filters that change the geometry of flat images to simulate them being viewed in 3D space. If you work in...
View ArticleNew Custom Core Image Filters
While writing Core Image for Swift, I've created quite a few custom Core Image filters all of which have been added to my Filterpedia app. To demonstrate the potential of filters based on custom kernel...
View ArticleCreating Procedural Normal Maps for SceneKit
Normal and bump mapping are techniques used in 3D graphics to fake additional surface detail on an object without adding any additional polygons. Whilst bump mapping uses simple greyscale images (where...
View ArticleRecreating Kai's Power Tools Goo in Swift
If, like me, you're old enough to fondly remember Kai's Power Tools Goo software, here's a fun little Swift and Core Image demo that will take you back to those heady days.SwiftGoo uses a custom Core...
View ArticleNew Core Image Procedural Noise Generators for Filterpedia
One of the great advantages of Core Image Kernel Language being such a close relative of GLSL is that I can scour through sites such as Shadertoy and GLSL Sandbox and copy some of the amazing work...
View ArticleHistogram Functions in Accelerate vImage
Whilst Core Image has an amazing range of image filters, the iOS SDK's Accelerate framework's vImage API includes some impressive histogram functions that CI lacks. These include histogram...
View ArticlevImage Histogram Functions Part II: Specification
In my last post, Histogram Functions in Accelerate vImage, I looked using vImage's contrast stretching function to improve the contrast of an image. In this post, I'll look at another vImage histogram...
View ArticleLoading, Filtering & Saving Videos in Swift
If you've ever used an application such as Adobe's After Effects, you'll know how much creative potential there is adding and animating filters to video files. If you've worked with Apple's Core Image...
View ArticleCreating a Lens Flare Filter in Core Image
Everybody loves a lens flare, don't they? If you want to give your iOS game or app that distinctive JJ Abrams look, you may be a tad disappointed that Core Image doesn't come bundled with a nice lens...
View ArticleSimulating Bokeh with Metal Performance Shaders
Bokeh is an optical effect where out of focus regions of an image take on the shape of a camera's iris - often a polygon such as a hexagon or octagon. This effect can be simulated in both vImage and...
View ArticleSimulating Depth-of-Field with Variable Bokeh in Core Image
Circular Masked Variable BokehHexagonal Masked Variable BokehContinuing on from my recent post on simulating bokeh with Metal Performance Shaders, I thought it would be interesting to create a filter...
View ArticleA Histogram Display Component in Swift for iOS
While I'm writing some new content for Core Image for Swift discussing histograms, I've found Core Image's own histogram display filters slightly wanting. Always eager for a challenge, I thought I'd...
View Article