# Documentation

### This is machine translation

Translated by
Mouseover text to see original. Click the button below to return to the English verison of the page.

# roifilt2

Filter region of interest (ROI) in image

## Syntax

```J = roifilt2(h, I, BW) J = roifilt2(I, BW, fun) ```

## Description

`J = roifilt2(h, I, BW)` filters the data in `I` with the two-dimensional linear filter `h`. `BW` is a binary image the same size as `I` that defines an ROI used as a mask for filtering. `roifilt2` returns an image that consists of filtered values for pixels in locations where `BW` contains 1's, and unfiltered values for pixels in locations where `BW` contains 0's. For this syntax, `roifilt2` calls `filter2` to implement the filter.

`J = roifilt2(I, BW, fun)` processes the data in `I` using the function `fun`. The result `J` contains computed values for pixels in locations where `BW` contains 1's, and the actual values in `I` for pixels in locations where `BW` contains 0's. `fun` must be a function handle. Parameterizing Functions, in the MATLAB Mathematics documentation, explains how to provide additional parameters to the function `fun`.

## Class Support

For the syntax that includes a filter `h`, the input image can be logical or numeric, and the output array `J` has the same class as the input image. For the syntax that includes a function, `I` can be of any class supported by `fun`, and the class of `J` depends on the class of the output from `fun`.

## Examples

This example continues the `roipoly` example, filtering the region of the image `I` specified by the mask `BW`. The `roifilt2` function returns the filtered image `J`, shown in the following figure.

### Filter Image Using Polygonal Mask

Read an image into the workspace.

`I = imread('eight.tif');`

Define the vertices of the mask polygon.

```c = [222 272 300 270 221 194]; r = [21 21 75 121 121 75];```

`BW = roipoly(I,c,r);`

Filter the region of the image `I` specified by the mask `BW`.

```H = fspecial('unsharp'); J = roifilt2(H,I,BW);```

Display the original image and the filtered image.

`imshow(I)`

```figure imshow(J)```