---
title: "init(imageURL:options:)"
framework: coreimage
role: symbol
role_heading: Initializer
path: "coreimage/cifilter-swift.class/init(imageurl:options:)"
---

# init(imageURL:options:)

Creates a filter that allows the processing of RAW images.

## Declaration

```swift
init!(imageURL url: URL!, options: [CIRAWFilterOption : Any]! = [:])
```

## Parameters

- `url`: The location of a RAW image file.
- `options`: An options dictionary. You can pass any of the keys defined in doc://com.apple.coreimage/documentation/CoreImage/raw-image-options.

## Return Value

Return Value A CIFilter object.

## Discussion

Discussion The first step when working with RAW images in Core Image is to process the image using either init(imageData:options:) or init(imageURL:options:). These initializers create a CIFilter object with an outputImage which is a CIImage representation of the supplied RAW image. The newly created filter object allows you fine control over the image processing that isn’t available when working with processed images such a JPEG. The following listing shows how to create a Core Image filter based on a URL named imageURL. The image is processed so that its neutral temperature is set to 2,000 Kelvin (giving a blue tint) and its baseline exposure doubled. Finally, a Core Image vignette filter is applied to the processed image in the same way it would be with any other source image: let rawFilter = CIFilter(imageURL: imageURL, options: nil) rawFilter?.setValue(2000,                         forKey: kCIInputNeutralTemperatureKey) if let baselineExposure = rawFilter?.value(forKey: kCIInputBaselineExposureKey) as? NSNumber {         rawFilter?.setValue(baselineExposure.doubleValue * 2.5,                        forKey: kCIInputBaselineExposureKey) } let vignettedImage = rawFilter?.outputImage?.applyingFilter(         "CIVignette",         withInputParameters: [kCIInputIntensityKey: 5]) if let outputImage = vignettedImage {         imageView.image = UIImage(ciImage: outputImage) } important: Core Image doesn’t process the supplied RAW image until the filter’s outputImage is rendered. For this reason, if you supply this initializer with a RAW image of an unsupported format, the filter object will be initialized but its outputImage will be nil.

## See Also

### Deprecated

- [init(CVPixelBuffer:properties:options:)](coreimage/cifilter-swift.class/init(cvpixelbuffer:properties:options:)-7qpsv.md)
- [init(imageData:options:)](coreimage/cifilter-swift.class/init(imagedata:options:).md)
- [CIRAWFilterOption](coreimage/cirawfilteroption.md)
- [serializedXMP(from:inputImageExtent:)](coreimage/cifilter-swift.class/serializedxmp(from:inputimageextent:).md)
- [filterArray(fromSerializedXMP:inputImageExtent:error:)](coreimage/cifilter-swift.class/filterarray(fromserializedxmp:inputimageextent:error:).md)
- [supportedRawCameraModels()](coreimage/cifilter-swift.class/supportedrawcameramodels().md)
