6
Colour quantisation for colour texture analysis J. Scharcanski H.C. Shen A.P. Alves da Silva Indexing ferm.7 ' Computer colour nsion, Colour re.xrure nnalysrs, Neural nerworks Abstract: The problem of describing texture colours in a concise way is analysed. This problem is formulated as a colour quantisation problem, where the texture image is quantised using the smallest number k of representative colours given some criteria. These colours are the texture char- acteristic colours, and an algorithm is proposed to obtain them. It is shown that a network of simple processing elements implements a generalisation of the algorithm that outperforms it in many cases. Some applications of the proposed approach are colour texture discrimination and classification. 1 Introduction Real visual textures are in fact colour textures, but in the last decade most of the literature about texture analysis concentrates on the achromatic (grey scale) aspect. Various topics in texture analysis have been intensively discussed, and a great deal of work has been put into selecting features that efficiently represent visual textures 1, but it is still an active research area. Colour textures may present the same colours and dif- ferent structural patterns, the same structural patterns in different colours, or yet, different colours and structural patterns. Therefore, a texture description should include the colour and the structural aspects. Surprisingly, the literature introduced various methods to represent the structural aspect of visual textures, but not much work has been done about the colour aspect. In this paper, characteristic colours are proposed as a feature set to represent the colour aspect of visual tex- tures. This set contains the smallest number of colours satisfying some criteria. An algorithm (i.e. sequential approach) and a network (i.e. parallel distributed approach) are proposed to obtain this feature set. The network outperforms the algorithm in terms of the colour set conciseness, without an appreciable increase in quant- isation error. It means that the network obtains a signifi- cantly reduced feature set that is virtually as informative as the set obtained by the algorithm. This improved per- formance is attributed to the fact that the network imple- ments a generalisation of the algorithm, as we detail later. Paper 9339E (C3, E4), first received I Ith December 199 I and in final revised form 12th October 1992 J Scharcanski and H.C. Shen are with the Pattern Analysis & 'Machine Intelligence Laboratory, Department of Systems Design Engineering. University of Waterloo, Waterloo, Ontario, Canada A.P. Alves da Silva is with the Department of Electrical Engineering. Catholic University of Rio de Janeiro, Rio de Janeiro, Brazil ILL PROCEEDINGS-E. Vol 140, No. 2> MARCH 1993 The characteristic colours set is useful in tasks where the colour aspect is relevant, such as texture discrimination and classification. 2 Representation for colour aspect of texture The input colour texture image itself may be regarded as the best representation. Unfortunately it contains exces- sive data, much of it is often irrelevant to the problem. Usually, colours are fuzzy in colour space, causing texture images to have ambiguous representations for computer texture classification and discrimination. Some authors proposed to deal with the colour fuzziness problem using fuzzy sets [2], but for practical colour texture analysis situations (that may involve hundreds or even thousands of colours) this approach can be of a pro- hibitive computational cost. To minimise the amount of irrelevant data and the ambiguity in colour texture representation, a representa- tive colours approach is pursued. The problem of selec- ting a set of colours to represent the colour gamut of an image and compute the mapping from colour space to representative colours is known as colour image quant- isation, and many approaches have been proposed in the literature [3]. Usually, a number k of representative colours is chosen, and then used for realistic repro- ductions of colour images in computer graphics. To achieve realistic results in colour image exhibition (e.g. smooth contours), some regions of the colour space are oversampled compared to the others (i.e. adaptive quantisation). For colour texture representation purposes, the approaches proposed for colour image quantisation are not appropriate. In this case, the interest is shifted from display quality to representational aspects (e.g. conciseness), Usually, the number k of characteristic (or representative) colours that produces a concise and infor- mative texture description is not known in advance. In this paper, the smallest representative colour set (according to an established criteria) is proposed as a feature set in computer colour texture representation. The elements of this feature set are the characteristic colours of the texture. Each one of these colours is associ- ated with a measure of importance, as discussed in detail later. An algorithm to obtain these characteristic colours is also proposed, and the results obtained experimentally discussed. This work was partially supported by the Nation- al Research Council (CNP,) of Brazil. I09

Colour quantisation for colour texture analysis

  • Upload
    ufrgs

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Colour quantisation for colour texture analysis

J. Scharcanski H.C. Shen A.P. Alves da Silva

Indexing ferm.7 ' Computer colour nsion, Colour re.xrure nnalysrs, Neural nerworks

Abstract: The problem of describing texture colours in a concise way is analysed. This problem is formulated as a colour quantisation problem, where the texture image is quantised using the smallest number k of representative colours given some criteria. These colours are the texture char- acteristic colours, and an algorithm is proposed to obtain them. It is shown that a network of simple processing elements implements a generalisation of the algorithm that outperforms it in many cases. Some applications of the proposed approach are colour texture discrimination and classification.

1 Introduction

Real visual textures are in fact colour textures, but in the last decade most of the literature about texture analysis concentrates on the achromatic (grey scale) aspect. Various topics in texture analysis have been intensively discussed, and a great deal of work has been put into selecting features that efficiently represent visual textures 1, but it is still an active research area.

Colour textures may present the same colours and dif- ferent structural patterns, the same structural patterns in different colours, or yet, different colours and structural patterns. Therefore, a texture description should include the colour and the structural aspects. Surprisingly, the literature introduced various methods to represent the structural aspect of visual textures, but not much work has been done about the colour aspect.

In this paper, characteristic colours are proposed as a feature set to represent the colour aspect of visual tex- tures. This set contains the smallest number of colours satisfying some criteria. An algorithm (i.e. sequential approach) and a network (i.e. parallel distributed approach) are proposed to obtain this feature set. The network outperforms the algorithm in terms of the colour set conciseness, without an appreciable increase in quant- isation error. It means that the network obtains a signifi- cantly reduced feature set that is virtually as informative as the set obtained by the algorithm. This improved per- formance is attributed to the fact that the network imple- ments a generalisation of the algorithm, as we detail later.

Paper 9339E (C3, E4), first received I Ith December 199 I and in final revised form 12th October 1992 J Scharcanski and H.C. Shen are with the Pattern Analysis & 'Machine Intelligence Laboratory, Department of Systems Design Engineering. University of Waterloo, Waterloo, Ontario, Canada A.P. Alves da Silva is with the Department of Electrical Engineering. Catholic University of Rio de Janeiro, Rio de Janeiro, Brazil

I L L PROCEEDINGS-E. Vol 140, No. 2> M A R C H 1993

The characteristic colours set is useful in tasks where the colour aspect is relevant, such as texture discrimination and classification.

2 Representation for colour aspect of texture

The input colour texture image itself may be regarded as the best representation. Unfortunately it contains exces- sive data, much of it is often irrelevant to the problem. Usually, colours are fuzzy in colour space, causing texture images to have ambiguous representations for computer texture classification and discrimination. Some authors proposed to deal with the colour fuzziness problem using fuzzy sets [2], but for practical colour texture analysis situations (that may involve hundreds or even thousands of colours) this approach can be of a pro- hibitive computational cost.

To minimise the amount of irrelevant data and the ambiguity in colour texture representation, a representa- tive colours approach is pursued. The problem of selec- ting a set of colours to represent the colour gamut of an image and compute the mapping from colour space to representative colours is known as colour image quant- isation, and many approaches have been proposed in the literature [ 3 ] . Usually, a number k of representative colours is chosen, and then used for realistic repro- ductions of colour images in computer graphics. To achieve realistic results in colour image exhibition (e.g. smooth contours), some regions of the colour space are oversampled compared to the others (i.e. adaptive quantisation).

For colour texture representation purposes, the approaches proposed for colour image quantisation are not appropriate. In this case, the interest is shifted from display quality to representational aspects (e.g. conciseness), Usually, the number k of characteristic (or representative) colours that produces a concise and infor- mative texture description is not known in advance.

In this paper, the smallest representative colour set (according to an established criteria) is proposed as a feature set in computer colour texture representation. The elements of this feature set are the characteristic colours of the texture. Each one of these colours is associ- ated with a measure of importance, as discussed in detail later. An algorithm to obtain these characteristic colours is also proposed, and the results obtained experimentally discussed.

This work was partially supported by the Nation- al Research Council (CNP,) of Brazil.

I09

2.1 The way we approach the problem of selecting a set of k characteristic colours to represent the texture colours of a texture pattern is similar to a colour image quantisation problem, with the difference that we d o not know in advance the number k of colours to select. In fact, we wish this number to be the smallest possible (given a cri- terion and constraints).

Assume that ci, is the colour of the pixel at row i and column j in the original image, and h,, is the colour of the same pixel in the final (quantised) image. The colour quantisation procedure that we describe consists of: a set of k characteristic colours Y = { y [ , I = 1, 2, ..., k } ; and a function that maps the colours in the original image to the set of characteristic colours f;,; = p(ci, j)(J, j ~ Y ) . In this work, the mapping p corresponds to the nearest neighbour criterion, and colours are represented in terms of the three primaries: red (R) , green (G) and blue (B).

To measure the difference between the original and the quantised images (the total quantisation error), the fol- lowing formula is used [3]:

Color texture image quantisation problem

where d(c i , , , fi, ,) ,is the Euclidean distance between the colours ct, and f,,, in the RGB colour space. Once we have discribed the problem, it remains to present the algorithm used to obtain the k characteristic colours of a texture.

3

The characteristic colours are the smallest set of repre- sentative texture colours according to specific criteria. We have adopted a criterion for the representativity of a colour, and another criterion to decide when a certain set of representative colours is the smallest set obtainable. We assume that two colours x, and x, are similar when their distance in the RGB colour space d(x,, x.) < R. It defines spheric colour tolerance volumes of radius R (any colours belonging to the same volume are considered similar) [4]. A colour tolerance volume of radius R defines the vicinity V of a colour in colour space.

The representavity of colours is decided locally in the colour space, and the most important (or frequent) colour within its vicinity V is taken as the vicinity's representa- tive. I f to each colour is associated a vicinity V , depend- ing on the colour we start with, different representatives may be obtained. Unless an initialisation criterion is established, the obtained results are not reliable. There- fore, we prioritise the densest regions in colour space and choose the most frequent colours as the best candidates to start the quantisation process.

If to each vicinity corresponds a unique representative, the larger the vicinity I/, the smaller the number of repre- sentatives. But at the same time, the larger the vicinity V the larger the total quantisation error D. We propose to use R = 2hmx- ' - rJ , where b,,, is the maximum number of bits available for each channel (i.e. red, green and blue), and be,, is the number of bits effectively used. Usually, b,,, is predefined. Most equipment uses 24 bit per colour, or eight bits per channel. However, be,, depends on the application. Some applications require less than b,,, bit,' channel per pixel in terms of colour resolution. This cri- terion says explicitly to adopt the smallest meaningful R value, given that only be,, bit per channel are being used in each pixel (i.e. the least significant (b,,, - b,,,) bit per channel are set null). Therefore, the smallest set of repre-

I10

Algorithm t o select characteristic colours

sentative colours, given the preceding criteria and con- straints, are the texture characteristic colours.

Next, an algorithm is described to select these colours. The proposed algorithm is inspired by the popularity algorithm for colour image quantisation [3]. The popu- larity algorithm chooses the k' most frequent (or popular) colours in the image as the set of representatives, where k' is a number defined in advance. Our algorithm uses the concept of colour tolerance volumes to find the smallest number k of representative colours. This algorithm chooses the smallest number k of the most frequent colours that satisfy simultaneously the following criteria: they are at distance greater than R from each other in the RGB space; and they correspond to the centres of the k colour tolerance volumes of radius R covering the entire colour gamut presented by the input texture image (i.e. each occurred colour is in the vicinity V of at least one of the k representative colours).

(a) For each colour x, compute its relative frequency

where n = 1, . . , N and N is the number of colours in the input texture image

(b) Sort the colours in decreasing order based onf(x,) (c) For-n = 1, .., N - 1

if (f(x,) # 0) then f o r m = n + l , . . , , N if (d(x,, x,) < R ) then discard colour x , ( f ( x , ) = 0)

( d ) For n = I , . . . , N iff(xn) > 0 then include x, in the set of characteristic colours

(e) Quantise the input image using the nearest neigh- bour criteron.

3.1 The measure of importance is a feature that complements the characteristic colours in the texture represenJation. The relative frequency of a characteristic colour f(yJ in the final image is taken as its measure of importance Ml(y,). Therefore characteristic colours that are more fre- quent, are more important in the texture colour aspect.

Measure of importance of characteristic colours

4

Our proposed parallel distributed approach consists of a network of competitive linear units. This network oper- ates continuously in time, and its organisation and dynamics are described next.

The human colour vision system has been subject of intensive studies, and several researchers contributed to improve our understanding of its intricate mechanisms [4, 51. Zeki [6] has provided evidence that true colours perceived in visual stimuli have a corresponding code in the visual cortex (i.e. cells tuned to specific wavelength compositions). Therefore, it looks sensible to conceive a collection of units corresponding each one to a colour i.e. an (r , g, b) triplet. These units are topographically organised according to the colours they represent [7]. For simplicity, we suppose an organisation where a unit U, is an immediate neighbour of a unit U, if they corre- spond to colours that are immediate neighbours in the RGB colour space. These units interact with their vicin- ity, but before describing how they interact, examine what input they receive and how they are activated.

Network t o select characteristic colours

I E E P R O C E E D I N G S - € , Vol . 140, Nu. 2, M A R C H 1993

4.1 Unit activation An unit U, (coding a colour xn) has its activation given by I,, whose intensity depends on the presence of the colour x, within its receptive field [8] (the texture image).

(3) f (X") I, =f(x.) = 7 c f ( x J

p = 1

where f (xJ denotes the frequency of occurrence of x, in the unit receptive field. The unit U, is activated if In > 0. Assume that for each unit U, there is an input matrix $", whose elements $"(i, j ) are binary-valued:

(4)

In the case of a single Hebbian linear unit, the unit activation I:bb is [SI :

v C wn(i, j)$Ai, j ) ( 5 ) I p b b = 1 . J

This network operates in continuous time. We adopt the simplifying assumption that changes in connection weights are negligible enough, with respect to the change in unit excitation values, that weights can be considered constant [lo]. Therefore, the unit activation I , (eqn. 3) is a particular case of the Hebbian linear rule where w"(i, j ) = 1 and it is used a multiplicative normalisation constant 1 = ( l /NI x NJ) (i.e. 4 = [1/2, f(x,)]).

4.2 Unit lateral interactions In this network, each active unit interacts with its neigh- bourhood by exciting the immediately neighbouring units with strength e and inhibiting the next-to-immediate neighbour units with strength h. Both excitatory and inhibitory connection strengths diminish as a function of the distance to unit U,. These units keep interacting until convergence is achieved, and the network settles down in a stable state. They are named lateral (or on-centre off- surround) interactions, and have been studied before within various contexts [8-111.

Without loss of generality, analyse the interaction of a single unit U, (with activation I , ) laterally with its neigh- bourhood. And define the neighbourhood (or vicinity) of unit U, as all the units spatially located within a distance R. These interactions are described by

where I : denotes the new unit activation level, and the coefficient r,,, equals rh in the vicinity of radius R of the unit U, (i.e. within the vicinity V the neighbouring active units inhibit U,, and the units outside the vicinity of radius R have no influence over the unit U"). The thresh- old E determines when U, is in steady state. We adopted E, = E (Vn, n = 1 , 2, ..., U), where E is in (0, 13 and U is the number of network units (U = 23b',1J). It is a special case (lateral inhibition [SI) of the general on-centre off- surround interactions described in Reference 8 (i.e. in the equation we have assumed the coefficients s,, = 0, z,, = 1 when n = p and zn, = 0 anywhere else).

4.3 Effective vicinity of a unit The activation of a unit U, is influenced by units located even beyond its vicinity V . At a certain moment in time, the unit activation I , depends of the unit U, and the

1: =eptn / , S n p ~ 1, / , r , , + 1, /,z,,,

I t E PROCEEDINGS-€, Vol 140. N o . 2, M A R C H I Y Y 3

activations I , of the vicinity V units (U,). Without loss of generality, consider a small time increment At. The unit activation I n ( t ) may be described by

Q I,(t) = I& - At) ~ rh I,(t ~ At) (7)

p = I

where Q is the number of units in the vicinity V of a unit U,. However, the activation of each neighbouring unit u p depends on itself and also on its own vicinity V units (U,,):

Q

q = 1 I,(t - At) = I,(t - 2 At) - rh 1 I , ( f - 2 At) (8)

Substituting the above expressions and changing sub- scripts gives the following expression for the activation of U, :

I,(t) = I,(t ~ A t ) - rh

rh f [ I p 2 ( t ~ 3 At) - Pi = 1

where the upl units are in the vicinity V of U,, a upI unit is in the vicinity V of a upI, and so on. It means that, a t a certain moment in time, the activation I , depends on the unit U, and on the previous activations of large number of units. The unit lateral interactions eventually involve all units, but the further away a unit is, the smaller its influence. In practice, one may consider an effective vicinity which influences a unit U,. It is larger than vicinity V , and its size depends on r h . Notice that the network behaviour described holds in continuous time (i.e. in the limit At -+ 0). Therefore, the network changes (or generalises) the concept of a well defined vicinity V around a unit U,, to a larger effective vicinity not so well defined. As a consequence, the results obtained with the network differ from those obtained by the algorithm, where the vicinity V is used strictly.

4.4 Network stability and convergence We make some comments about the network global sta- bility (i.e. the eventual stabilisation of all unit activations from any initial input) and convergence (i.e. the eventual minimisation of error between the desired and the com- puted unit outputs) 191. Assume that inputs are stable patterns, then the dynamic behavior of a unit U, in this network is described by

U

P r"P (10) AIn = I : - I , = - 1 I p = I

Since rnP is an element of a symmetric matrix with non- negative values, and I , only assumes positive values, the activation of a single unit decreases assymptotically as the lateral interactions actions progress in time. There- fore, for any arbitrary input pattern the network is stable (i.e. it eventually achieves steady state with a negligible deviation E, see eqn. 6).

It is quite intuitive that the computation done by this network converges to the high activation units within a vicinity V . When I : > E, eqn. 6 may be written as

and the computation converges to the unit with higher activation level (i.e. the unit corresponding to the most

I l l

frequent colour within the vicinity V ) . Notice that the convergence may terminate, and instead of a single unit, a set of units with high activation get selected. The smaller the value of r h , the higher the chance of a unique state termination (i.e. the smaller r h , the smaller differ- ences in activation levels among units that may be discriminated), on the other hand the convergence time gets longer.

After the network has achieved steady state, a set of representative colours have been selected (given a certain input pattern and vicinity V ) . Each colour is associated with one of the remaining active units u,(m = 1, 2, . . . , T and T < U ) . These are the texture characteristic colours. Given this colour set, the input pattern (colour texture image) is recoded or quantised, and a final pattern is obtained.

4.5 Pattern recoding Each colour c I , in the input spatial pattern is quantised by a colour U, using the nearest neighbour criterion, i.e. the colour U, that is located at the smaller distance from ci,,{d(ci, j , U,)) in the R G B space is its nearest neighbour. This computation may be carried out by a network that at each point ci, , of the input pattern minimises the energy function:

E(m) = d(c,, j , U,) m = 1, 2, . ._, T (12) At the end of this computation a final image is obtained (i.e. the quantised version of the input image). The measure of importance of each characteristic colour cor- responds to the relative frequency of this colour in the final image (analogous to eqn. 3).

5 Attentional mechanism

An algorithm to obtain the texture characteristic colours was proposed in Section 2. This algorithm initially per- forms a sorting of the texture colours according to their frequency of occurrence in the image and afterwards it searches for representative colours within different vicin- ities V , starting with the most frequent colour in the image. The most frequent colour within a vicinity V is the vicinity’s representative. These vicinity representatives are the texture characteristic colours. In this algorithm, when a vicinity V is selected the colours located outside this vicinity have no influence over the choice of the vicinity’s representative. In the general operating mode of the network, the choice of a vicinity’s representative involves units located in a neighbourhood larger than a single vicinity V . In fact, this process may be interpreted as a collective choice of a representative among overlap- ping vicinities V .

The computation performed by the algorithm in Section 2 may also be executed by the network in a par- ticular mode of operation produced by an attentional mechanism [12], as discussed subsequently. The purpose of this attentional mechanism is to direct a spotlight to a particular set of units, and to inhibit the rest of the units in the network. It constrains the network interactions exclusively to the bounds of the spotlight. Therefore, in a given moment the units within the spotlight dominate the network global activity.

The spotlight size comprises the vicinity V around a particular unit U, (where attention is focused). When this attentional mechanism is introduced eqn. 6 is written as

U

Ib = I , - c ~ n ~ p n a , , (13) ,= 1

112

where the term a,, denotes the focus of attention centred on unit U,. Within the vicinity V of U, the mechanism enables the unit lateral interactions (a,, = I), and outside this vicinity the mechanism inhibits the unit interactions (a,, = 0).

5.1 Guiding the spotlight This spotlight is guided by a higher level process [12] that imposes a sequencing in the network activity. It establishes a hierarchical order among the units in the network, based on their activation level. The larger the activation of a unit, the higher its priority for the atten- tional mechanism. Therefore, initially the spotlight is put on the unit with the largest activation and its vicinity V , and the overall network activity concentrates on this spotlight.

Units interact in on-centre off-surround fashion within the spot where the attention is being focused (the vicinity V of the unit U,). The next spot in the hierarchy becomes active only after the activity ceases in the current spot. Therefore, the network’s activity moves sequentially from the high to the low priority spots, and the priorities are updated as the unit interactions progress (see eqn. 13). The competition among units within a spot converges to the unit with higher activation. When the interactions cease in a spot, the units with low activation become inactive, and fewer units are potentially able to attract the spotlight (i.e. focus of attention).

Notice that the introduction of this focus of attention mechanism makes the network execute the algorithm proposed in Section 2. The external mechanism guides the spotlight from the unit with the highest to the unit with the lowest activation level, and the most active unit within the spotlight (i.e. a vicinity V ) is selected. Since the number of spots for a given input pattern is finite, the network is stable for any input pattern.

6 Experimental results

A set of texture images with resolution 256 x 256 is used to demonstrate the effectiveness of our approach for texture colours representation. In these experiments be,, = 4 was used (i.e. a palette with 4,096 colours). For the network simulation the following parameter setting was used: rh =

Table 1 presents the number of colours in the original and the quantised images. The average quantisation error

Table 1 : Number of texture image colours

and E =

Image Original Quantised

Alaorithm Attentional mech Network

w p l 74 36 36 13

wp3 90 37 37 15 wp4 162 66 66 24

wp2 42 21 21 11

(D = D / N I x N J ) is presented in Table 2. Notice particu- larly the image wp4. The original image presented 162 colours (i.e. ( r , g, b) triplets). The algorithm described in

Table 2: Average auantisation error (DI Image Alaorithm Attentional mech k-means network

w p l 7 11 7 11 11 37 8 2 1 wp2 7 0 5 7 0 5 9 8 9 7 8 9 wp3 9 2 4 9 2 4 1 1 8 3 1 0 2 3 wp4 8 3 9 8 3 9 1265 1 0 1 2

IEE PROCEEDINGS-,! V o l 140, N o 2, M A R C H 1993

Table 3: Characteristic colours of wp2 (algorithm)

r g b M l

240 176 240 0544037 240 160 224 0343826 240 144 208 0067688 240 176 208 0016678 240 160 192 0008209 240 192 224 0007553 240 128 192 0005249 240 144 240 0002487 240 144 176 0001373 224 144 192 0000809 224 128 176 0000793 224 128 208 0000473 224 112 192 0000351 240 128 224 0000214 208 112 176 0000092 208 128 192 0000046 208 112 208 0000031 240 112 176 0000031 240 160 160 0000031 240 176 176 0000015 192 112 160 0000015

Table 4: Characteristic colours of wp2 (network)

r q b M I

240 176 240 0.551804 240 160 224 0.362381 240 144 208 0.075867 224 128 192 0.007034 224 144 176 0.001389 224 112 208 0.000137 208 112 192 0.000183 240 112 176 0.000473 240 160 160 0.000290 240 176 176 0.000412 192 112 160 0000031

Section 2 selected 66 characteristic colours, and produced an average quantisation error DOlq = 8.40. The network selected 24 characteristic colours, and produced an average quantisation error D,, = 10.21. Notice that the

0 b

C d

Fig. 1 Original image3

<I wpl h wp2 < wp3 d wp4

number of characteristic colours k is determined in differ- ent ways in the algorithm and in the network contexts. In the algorithm, each characteristic colour is associated with a colour tolerance volume of radius R, and k is the number of colour tolerance volumes selected. In the

I E E PROCEEDINGS-E. Vol. 140, No. 2, MARCH lYY3

network, each unit is associated with a colour, and k cor- responds to the number of active units U, (i.e. I , > 0) when the network is in steady state. The colours associ- ated with these k active units are the characteristic colours.

C d

Fig. 2 Quuntired imuyrs using alqurithm-obtained data (i wpl h wp2 c wp3 d wp4

0 b

C d

Fig. 3 Q u u n r w l [muyes uxng network-ohruinrd dutu ii wpl h u p ? < wp3 d wp4

Notice that the quantised images closely resemble their originals. The network selects a more concise set of characteristic colours without an appreciable increase in quantisation error. In our experiments, the characteristic colours selected by the algorithm described in Section 2 and the network driven by the attentional mechanism described in Section 4 were identical.

The results obtained under similar circumstances by the network and the k- means algorithm (a conventional unsupervised clustering method) were compared. The k-means represents the occurring colours in each image by k cluster centres (prototypes), where k was made equal to the number of characteristic colours selected by the network. Table 2 shows the average quantisation error D obtained for the network and the k-means data. The network performed better than the k-means algorithm in our experiments, presenting the smaller average quantisa- tion error.

113

The characteristic colours obtained by the network and the algorithm differ (e.g.. the colour sets obtained for the image wp2, presented in Tables 3 and 4). However, in spite of being distinct, these colour sets produce image quantisation results that are visually similar. The original images are shown in Fig. 1, and the quantised images are shown in Fig. 2 and Fig. 3.

In our experiments we found a large variation in execution time depending on the image of interest. The algorithm described in Section 2 executed from 6.6 to 43.2 times faster than the simulation of the network using a sequential computer. However, a parallel distributed implementation of this network is expected to reduce its execution time drastically.

7 Concluding remarks

A feature set has been proposed to represent concisely the colour aspect of visual textures. This feature set is constituted by the texture characteristic colours and their respective measure of importance. To obtain these char- acteristic colours, an algorithm inspired by the popularity algorithm for colour image quantisation [3] was pro- posed. This algorithm uses the concept of colour toler- ance volumes to find the smallest number k of representative colours that satisfy simultaneously the fol- lowing criteria: they are at distance of at least R from each other in RGB space; and they correspond to centres of a set of colour tolerance volumes of radius R, covering the entire colour gamut presented by the input texture image.

The proposed parallel distributed approach consists of a network of competitive linear units. Each colour triplet ( r , 8. b) in RGB space corresponds to one unit. The activation function of each unit is the Hebbian linear rule, and the units interact in a lateral inhibition fashion. The network operates continuously in time, and it is assumed that weight changes are neglegible compared to unit activation values.

This network executes the algorithm described in Section 2 in one particular mode of operation:

(a) the unit interactions are constrained to one spot (i.e. the vicinity V of a certain unit) at a time, and outside this spot no unit interactions take place

(b) the spot moves in time from the highest to the lowest activation units

(c) the spot only moves from one point to another when the unit interactions stabilise.

When the network units freely interact using lateral inhi- bition, the concept of a well-defined vicinity V is changed (or generalised) to a larger effective vicinity whose bound- aries are not precisely defined. Therefore, we can say that the network generalises the algorithm in the sense that it enables units to interact in a larger vicinity, and it allows overlapping vicinities to interact with each other.

The experimental results showed that the network out- performs the algorithm in terms of conciseness of the characteristic colours set, without an appreciable increase in the total quantisation error. Visually, the images quan- tised using the characteristic colours closely resemble their originals. An extension of this work is to consider the weight changes in the Hebbian units. It introduces interesting computational properties that we will address in a future paper.

8 References

1 TOMITA, F., and TSUJI, S. . ‘Computer analysis of visual textures’ (Kluwer, 1990)

2 PIENKOVSKY, E.K.. ‘Artificial colour perception using fuzzy tech- niquea in digital image processing’ (Verlag TUV Rheinland, 1989)

3 HECKBERT, P: ‘Color image quantisation for frame buffer display’, Compur. Graph., 1982, 16, (3). pp. 297-307

4 WYSZECKI, G.. and STILES, W S . : ‘Color science: concepts and methods. quantitative data and formulae’ (Wiley, 1982)

5 ROSE, D., and DOBSON, V.G.: ‘Models of the visual cortex’ (Wiley, 1985)

6 ZEKI. S.. ‘The representation of colours in the cerebral cortex’, Nufurr, 1980,284, pp. 412-418

7 KOHONEN, T ‘The self-organiring map’, Proc. I E E E , 1990, 78, pp. 1464-1480

8 GROSSBERG, S ’Adaptive pattern classification and universal recoding: I. parallel development and coding of neural feature detec- tors’, Biol. Cyhern., 1976, 23, pp. 121 -134

9 HERTZ, J., KROGH, A., and PALMER, R.G.: ’Introduction to the theory of neural computation’ (Addison-Wesley, 1991)

I O COHEN, M.A., and GROSSBERG, S.: ‘Absolute stability of global pattern formation and parallel memory storage by competitive neural networks’, I E E E Truns., 1983, SMC-13, pp. 815-825

1 I GROSSBERG. S.: ’On the development of feature detectors in the visual cortex with applications to learning and reaction-diffusion systems’, Biological Cybernetics, 1976, 21, pp. 145-159

I2 MOZER, M.C.: ‘A connectionist model of selective attention in visual perception’ Technical report CRG-TR-88-4, University of Toronto, Canada, 1988

I I4 i t t . P R O C E E D I N G S - E . voi 140, N O 2, M A R C H 1993