Core Image Filter Explorer & Showcase

Related tags

Image Filterpedia
Overview

Filterpedia

Core Image Filter explorer

screenshot

Filterpedia is an iPad app for exploring (almost) the entire range of image filters offered by Apple's Core Image framework. It is designed as a companion app to my upcoming book, Core Image for Swift which is due for publication in February 2016.

The UI is split into two sections: the table view on the left allows the user to navigate through and select a filter, the panel on the right then displays all the parameters of the selected filter which can be adjusted using horizontal sliders.

Filterpedia is also a showcase for custom filters I'm creating that are discussed in the book. These include simple compositions of existing CIFilter, CIKernel based filters using GLSL and filters that use Metal kernel functions as their filtering engine.

Core Image for Swift is available from:

Custom Filters

Filterpedia includes many custom Core Image filters which can be used in other projects. They include:

Advanced Monochrome

screenshot

Bleach Bypass

screenshot

Carnival Mirror

screenshot

Caustic Noise

screenshot

Caustic Refraction

screenshot

Chromatic Abberation

screenshot

Circular Bokeh (with bias)

screenshot

CMYK Levels

screenshot

CMYK Registration Mismatch

screenshot

CMYK Tone Curve

screenshot

Color Directed Blur

screenshot

Color Swatch from Black Body Temperature

screenshot

Color Scalar Noise

screenshot

Compound Eye

screenshot

Concentric Sine Waves

screenshot

Contast Stretch

screenshot

Cathode Ray Tube

screenshot

Difference of Gaussians

screenshot

Eight Bit

screenshot

Flame

screenshot

Hexagonal Bokeh

screenshot

Histogram Equalization

screenshot

Histogram Specification

screenshot

Homogeneous Color Blur

screenshot

Kuwahara

screenshot

Lens Flare

screenshot

Masked Variable Circular Bokeh

screenshot

Masked Variable Hexagonal Bokeh

screenshot

Mercurialize

screenshot

Metal Perlin Noise

screenshot

Metal Pixellate

screenshot

Multiband Hue, Saturation & Brightness Controls

screenshot

Normal Map

screenshot

Polar Pixellate

screenshot

Pseudo Color

screenshot

Refracted Text

screenshot

RGB Brightness & Contrast

screenshot

RGB Compositing

screenshot

RGB Tone Curve

screenshot

Scatter

screenshot

Simple Plasma

screenshot

Simple Sky Generation

screenshot

Sky Generation

screenshot

Smooth Threshold

screenshot

Starburst

screenshot

Technicolor

screenshot

Threshold

screenshot

Threshold to Alpha

screenshot

Transverse Chromatic Aberration

screenshot

VHS Tracking Lines

screenshot

Voronoi Noise

screenshot

Comments
  • iOS 12 CIKernel Filters CRASH

    iOS 12 CIKernel Filters CRASH

    Many of the Filters Including EightBit, CRT, Bayer Dither, Lens Flare, Lens Correction etc. based on CIKernel are crashing due to new changes.

    ERROR: parameter has unexpected type 'vec4' (should be a sampler type) vec2 uv = samplerCoord(image);

    This seems to be a common error message among most crashing filters. please check.

    opened by abhi-dave 13
  • More Permissive License, Perhaps?

    More Permissive License, Perhaps?

    I don't want to presume that choosing GPL was not intentional, but are you aware that it does not allow for commercial use (distribution) unless the app you're using it in is also open-source (ref: http://softwareengineering.stackexchange.com/questions/47032/can-i-use-gpl-software-in-a-commercial-application)? Is there any chance you'd be willing to license it under something more permissive like MIT or BSD?

    opened by perlmunger 5
  • Swift 3

    Swift 3

    This code should be merged to a new branch named swift-3. @FlexMonkey Please create a new branch and I will create the PR again.

    This should not be merged in master as of now, since Xcode 8 is still in beta mode.

    opened by RishabhTayal 1
  • Add a search bar?

    Add a search bar?

    You've added so many great filters that I sometimes struggle to find a specific one. (Take that as a compliment!)

    Would you be interested in adding a search function to the filter list? I've been considering making a pull request, but wanted to check that you'd be interested in merging it, and that you're not already working on it.

    opened by ryanmasondavies 1
  • Add gitignore, tidy up project

    Add gitignore, tidy up project

    I wanted to make some changes and noticed there wasn't a gitignore, so I've added one to make contributing easier.

    I also moved coffeecup.jpg into the assets folder and renamed the asssets Xcode group to assets. Nothing major! I've tested the coffeecup.jpg move and it doesn't seem to have affected anything.

    Thank you for the great project!

    opened by ryanmasondavies 1
  • No such module 'MetalKit' / a way to run the app in the simulator

    No such module 'MetalKit' / a way to run the app in the simulator

    For us folks without iPads, it would be great to use filterpedia in the simulator. Looks like this is related to MetalKit not being supported in the simulator.

    http://stackoverflow.com/questions/24086194/how-do-you-import-metal-in-swift

    I bring this up because it may deter some people from buying your book, and I want you to sell a lot of copies of your book :-)

    opened by ivanlesko 1
  • Non Diffusion Dithering: Bugfix & Enhancements

    Non Diffusion Dithering: Bugfix & Enhancements

    Bug: (Incorrect mod used) Affected 2x2, 3x3 and 8x8 (only 4x4 work as expected)

    Enhancements: (Color Palettes extended)

    • Black 0x00 and white 0xFF using only the red component.
    • Commodore 64
    • Vic-20
    • Apple II
    • ZX Spectrum Bright
    • ZX Spectrum Dim
    • RGB
    opened by AfricanSwift 1
  • Filterpedia.AdvancedMonochrome warning on launch

    Filterpedia.AdvancedMonochrome warning on launch

    Running in iPad Air 2 iOS 9.3 simulator in Xcode 7.3 on OS X 10.11.4:

    2016-04-13 20:25:17.738 Filterpedia[5960:487581] __64+[CIFilter(CIFilterRegistryPrivate) filterWithName:setDefaults:]_block_invoke520 [constructor filterWithName:AdvancedMonochrome] returned an object of class Filterpedia.AdvancedMonochrome.
    

    Looks like CIFilter doesn't like modules in this instance. I had a quick look around the code but couldn't figure out why.

    opened by ryanmasondavies 0
  • How to implement HSV with UISlider?

    How to implement HSV with UISlider?

    I am implementing feature with red, orange, yellow, green, aqua, blue, purple color selection and one UISlider. I am not understanding how to use MultiBandHSV with UISlider properly.

    Thank you.

    opened by ChanakyaHirpara 0
  • Swift 5 & memory safe warning fixes

    Swift 5 & memory safe warning fixes

    bumped swift syntax to swift 5 fixed a case where the demo would crash if a filter was unwrapped unsafely resolved swift warnings pertaining to memory safety.

    more info on why the issue resolution was important

    opened by mredig 1
  • Updates Filterpedia to Swift 4.2 (Xcode 10.1)

    Updates Filterpedia to Swift 4.2 (Xcode 10.1)

    • update swift syntax from swift 2 to swift 4.2
    • adds support for iPhone (landscape orientation only)
    • fix some GLSL and metal relation crashes
    • update .gitignore and remove .xcuserstated from the repo
    opened by truemetal 3
  • swift 3 builds and fixed some nsnumber values for correct default slider values

    swift 3 builds and fixed some nsnumber values for correct default slider values

    Most of the edits were actually pulled from another fork I picked at random that fixed the swift 3 build issues.

    However, I noticed that a lot of filters has horrible slider ranges and default values (I believe as a result of the swift 3 conversion), so I found the issue and cast the filter values as NSNumbers and then used the "floatValue" of an NSNumber to get those min, max, and default values, instead of casting NSNumbers as Float.

    opened by mredig 0
  • Actually a feature request...

    Actually a feature request...

    Any chance of publishing this for Mac OS too?

    I'd LOVE to help - but I'm struggling myself with applying CIFilters onto live camera input on Mac OS, and I seem to miss some of the basics there.

    Otherwise - I'm very experienced in Application design and development. Please let me know if you're interested.

    opened by Motti-Shneor 0
  • Kuwahara metal vs GLSL

    Kuwahara metal vs GLSL

    In my tests, your MetalKuwaharaFilter is actually 50% slower then KuwaharaFilter however here Simon mentions Metal is supposed to be 50% faster.

    Any idea why it is like that?

    opened by truemetal 0
๐Ÿ“ท A composable image editor using Core Image and Metal.

Brightroom - Composable image editor - building your own UI Classic Image Editor PhotosCrop Face detection Masking component ?? v2.0.0-alpha now open!

Muukii 2.8k Jan 3, 2023
๐Ÿ“ท A composable image editor using Core Image and Metal.

Brightroom - Composable image editor - building your own UI Classic Image Editor PhotosCrop Face detection Masking component ?? v2.0.0-alpha now open!

Muukii 2.8k Jan 2, 2023
FlexibleImage is implemented with the hope that anyone could easily develop an app that provides features such as Camera Filter and Theme.

FlexibleImage is implemented with the hope that anyone could easily develop an app that provides features such as Camera Filter and Theme. When you wr

Jungwon An 815 Dec 30, 2022
A SwiftUI app to filter & search runewords for Diablo II

Runewords App This small SwiftUI app have two purposes: Making a clean, fully SwiftUI app using all the latest iOS 16 / Xcode 14 features. Browse, sea

Thomas Ricouard 44 Dec 18, 2022
An implementation of High Pass Skin Smoothing using Apple's Core Image Framework

YUCIHighPassSkinSmoothing An implementation of High Pass Skin Smoothing using CoreImage.framework Available on both OS X and iOS. Ports A MetalPetal b

Yu Ao 1.2k Dec 17, 2022
Syntactic Sugar for Accelerate/vImage and Core Image Filters

ShinpuruImage Syntactic Sugar for Accelerate/vImage and Core Image Filters ShinpuruImage offers developers a consistent and strongly typed interface t

simon gladman 100 Jan 6, 2023
Playing with Core Image and Metal Shader Language for fun.

Playing with Core Image and Metal Shader Language for fun.

Makeeyaf 6 Jan 5, 2023
An image download extension of the image view written in Swift for iOS, tvOS and macOS.

Moa, an image downloader written in Swift for iOS, tvOS and macOS Moa is an image download library written in Swift. It allows to download and show an

Evgenii Neumerzhitckii 330 Sep 9, 2022
AsyncImage before iOS 15. Lightweight, pure SwiftUI Image view, that displays an image downloaded from URL, with auxiliary views and local cache.

URLImage URLImage is a SwiftUI view that displays an image downloaded from provided URL. URLImage manages downloading remote image and caching it loca

Dmytro Anokhin 1k Jan 4, 2023
AYImageKit is a Swift Library for Async Image Downloading, Show Name's Initials and Can View image in Separate Screen.

AYImageKit AYImageKit is a Swift Library for Async Image Downloading. Features Async Image Downloading. Can Show Text Initials. Can have Custom Styles

Adnan Yousaf 11 Jan 10, 2022
A complete Mac App: drag an image file to the top section and the bottom section will show you the text of any QRCodes in the image.

QRDecode A complete Mac App: drag an image file to the top section and the bottom section will show you the text of any QRCodes in the image. QRDecode

David Phillip Oster 2 Oct 28, 2022
Convert the image to hexadecimal to send the image to e-paper

ConvertImageToHex Convert the image to hexadecimal to send the image to e-paper Conversion Order // 0. hex๋กœ ๋ณ€ํ™˜ํ•  ์ด๋ฏธ์ง€ var image = UIImage(named: "sample

Hankyeol Park 0 Feb 26, 2022
Twitter Image Pipeline is a robust and performant image loading and caching framework for iOS clients

Twitter Image Pipeline (a.k.a. TIP) Background The Twitter Image Pipeline is a streamlined framework for fetching and storing images in an application

Twitter 1.8k Dec 17, 2022
Image-cropper - Image cropper for iOS

Image-cropper Example To run the example project, clone the repo, and run pod in

Song Vuthy 0 Jan 6, 2022
An instagram-like image editor that can apply preset filters passed to it and customized editings to a binded image.

CZImageEditor CZImageEditor is an instagram-like image editor with clean and intuitive UI. It is pure swift and can apply preset filters and customize

null 8 Dec 16, 2022
Agrume - ๐Ÿ‹ An iOS image viewer written in Swift with support for multiple images.

Agrume An iOS image viewer written in Swift with support for multiple images. Requirements Swift 5.0 iOS 9.0+ Xcode 10.2+ Installation Use Swift Packa

Jan Gorman 601 Dec 26, 2022
AlamofireImage is an image component library for Alamofire

AlamofireImage AlamofireImage is an image component library for Alamofire. Features Image Response Serializers UIImage Extensions for Inflation / Scal

Alamofire 3.9k Dec 29, 2022
Image slide-show viewer with multiple predefined transition styles, with ability to create new transitions with ease.

ATGMediaBrowser ATGMediaBrowser is an image slide-show viewer that supports multiple predefined transition styles, and also allows the client to defin

null 200 Dec 19, 2022
FMPhotoPicker is a modern, simple and zero-dependency photo picker with an elegant and customizable image editor

FMPhotoPicker is a modern, simple and zero-dependency photo picker with an elegant and customizable image editor Quick demo Batch select/deselect Smoo

Cong Nguyen 648 Dec 27, 2022