Abstract

Image reconstruction technique based on F-transform uses clearly defined basic functions. These functions have strong impact on the quality of reconstruction. We can use some predefined shape and radius, but also we can create a new one from the scratch. The aim of this paper is to analyze the creating process and based on that find best basic function for input set of damaged testing images.

1. Introduction

Image reconstruction aims at recovering damaged parts. In real situation this damage can be caused by various sources on various surfaces. Input information has to be digitalized as a first step and after that divided on damaged and nondamaged parts. Typical situation lays on photography. We can distinguish among many types of damage like stains, scratches, text, or noise. We can say that every kind of damage covers typical way of damaging process. Unwanted time or date stamp is covered by text. Scratches, cracks, and folds are covered by inpaint. These are shown in Figure 1 which includes also noise.

Target of reconstruction is removing damaged parts from input image and replacing them by the parts with recomputed values. These values are computed from the neighborhood ones. The technique mentioned in this paper is based on F-transform which brings particular way of valuation neighborhood pixels and their usage in the computation [1, 2]. Other methods [3, 4] differ by the choice at the technique.

In this paper, we will focus on the valuation part of the computation. Quality of reconstruction will be measured by RMSE value (RMSE stands for the root mean square error). In Figure 2 you can see damaged input images and reconstructed ones with usage of the ideal basic function described later. We will analyse influence of changing parameter on target quality.

2. F-Transform

In image reconstruction, a discrete version of the F-transform is used. Details can be seen in [5, 6]. In this section two-dimensional (2D) variant and also conditions for proper functioning will be briefly introduced.

2.1. Fuzzy Partition with Ruspini Condition

Let be fixed nodes within such that , and . We say that the fuzzy sets , identified with their membership functions defined on , establish a fuzzy partition with Ruspini condition of if they fulfill the following conditions for :(1),  ;(2) if , where for uniformity of notation, we set and ;(3) is continuous;(4), for , increases on , and , for , strictly decreases on ;(5)for all ,

The condition (1) is known as the Ruspini condition. The membership functions are called basic functions. A point is covered by basic function if .

2.2. Shape of the Basic Function

The shape of the basic functions is not predetermined, and therefore, it can be chosen according to additional requirements (e.g., smoothness). Let us give examples of various fuzzy partitions with the Ruspini condition. In Figure 3, two such partitions with triangular and cosine basic functions are shown. The formulas given below represent generic fuzzy partitions with the Ruspini condition and triangular functions: where and .

We say that a Ruspini partition of is-uniform if its nodes , where , are -equidistant; that is, , for , where , and two additional properties are met:(6), for all , ;(7), for all and , and , for all and .

An -uniform fuzzy partition of can be determined by the so called generating function , which is assumed to be even (The function is even if for all ,  ), continuous, have a bell shape, and fulfill . Basic functions of an -uniform fuzzy partition with generating function are shifted copies of in the sense that and for ,

As an example, we notice that the function is a generating function for any -uniform triangular partition. In the sequel, we will be using -uniform fuzzy partitions only and refer to as to a radius of partition [7].

2.3. Discrete 2D F-Transform

We say that the -matrix of real numbers is called the (discrete) F-transform ofwith respect to and if for all ,

The elements are called components of the F-transform.

The inverse F-transform is defined as follows:

We use discrete basic functions and . Our results show that sufficient image reconstruction is enough to use maximal radius . Discrete basic function with respect to Ruspini condition is building on top of template in Figure 4.

You can see white squares in Figure 4. These squares can be marked as parts of the basic function. One marked per column. After that is automatically computed mirrored part of the basic function as can be seen in Figure 5. We choose for the column . Value in column is the same, and because of Ruspini condition, values in columns 5 and 7 are easily computable as

Because of using Ruspini condition, we can use copies of the basic function for covering the whole range. Height of the template determines values on the axis. For better usability we choose value 0 for first row, 1 for last one, and twice 0.5 on the middle. Two basic functions with marked values can be seen in Figure 6.

The overlapping part of basic functions have functional values equal 1 in each column. For better visualization, black vertical lines are also plotted.

3. Influence of Basic Functions

Shapes of the basic functions can be nondecreasing, oscillating, or nonincreasing. Differences and influences on computation are described in [8]. We choose basic functions with radius 2 in the first step of reconstruction and radius 4 in the second step because of fully sufficient usage on the input set of testing images. In this paper, we focus on building shape of basic function step by step based on results provided by RMSE. We identified two ways of this process which will be demonstrated on template in Figure 4 where .

Column by Column. Find the best value for current column and continue with next column:(1)choose radius , (2)choose active column as (3)choose current row as , (4)based on those values create a basic function by mirroring and with respect to Ruspini condition formula (7), (5)use the basic function for image reconstruction, (6)compare reconstructed image with original undamaged one by RMSE, (7)if , then , and continue by step 3, (8)change current row as , (9)continue by step 4.

Radius by Radius. Find the best value for current radius and continue with next radius: (1)choose current radius as , (2)choose current column as (3)choose current row as , (4)based on those values create a basic function, (5)use the basic function for image reconstruction, (6)compare reconstructed image with the original undamaged by RMSE, (7)if and , then and continue by step 3, (8)if , then and continue by step 3, (9)choose current row as , (10)continue by step 4.

First way column by column is computed in Table 1. You can see that there is for column best RMSE value for . It means that we choose sixth row for column . Next column is the best RMSE value in row for the Lena and Nature images and for the Picture image. We choose basic function with values for column and for column . This function is in Figure 8.

Second way of basic function creation radius by radius is computed in Table 2. From the table comes that the best value is for and for column . This basic function is shown in Figure 7.

4. Conclusion

As a result we can say that step by step process converges to oscillating or linear shape. Column by column way is the best solution oscillating basic function. Value for column and for column provides RMSE values for Lena, for Picture, and for Nature. Because of very close results for Picture image between and , we choose value for all of them. Radius by radius is the best linear function with for column and for column . For Lena RMSE is equal to , for Picture is equal to , and for Nature is equal to .

Acknowledgment

This work was supported by SGS14/PRF/2013 (advanced techniques of applications of soft computing methods in image processing).