next up previous contents index
Next: msegct Up: Reference Previous: fvar   Contents   Index

mschannel

$ \bigcirc$Name


mschannel Build a multi-scales multi-channels decomposition of an image




$ \bigcirc$Command Synopsis


mschannel [-N N] [-S S] [-W W] [-p p] in mov



-N N : # images per channel, default 1 (for local scale value)

-S S : standard deviation of the smoothing filter, default 1

-W W : pixel weight for the smoothing filter, default 1

-p p : scalar distance: ABS (p=1) or Quadratic (p=2,default)

in : input Fimage

mov : output Fmovie




$ \bigcirc$Function Summary


void mschannel (N , S , W , p , in , mov )

int *N , *W , *S , *p ;

Fimage in ;

Fmovie mov ;




$ \bigcirc$Description


This module build a multi-scales multi-channels representation of an image.

The aim of the algorithm is to create channels so as they can be used with msegct module in order to find the segmentation. We consider three kind of channels. Each channel correponds to a direction of a quadratic difference if p is set to 2 (default) or a simple difference in absolute value if (p=1). More over we consider different scale for each channel.

Let e the local scale, and N the number of channels per direction that the user wants to reach. So for each local scale we have three channels. Let Im, n the value of the original image's pixel (input Fimage). From the original image we calculate the channels (Fimage) associated with the value of the local scale :

For e = 1 we have :

Horizontal Channel : Hm, n(e=1) = (abs(Im+1, n - Im, n)p + abs(Im-1, n - Im, n)p)/2
Vertical Channel : Vm, n(e=1) = (abs(Im, n+1 - Im, n)p + abs(Im, n-1 - Im, n)p)/2
Diagonal Channel : Vm, n(e=1) = (abs(Im+1, n+1 - Im, n)p + abs(Im-1, n-1 - Im, n)p)/2
Those three channels correspond to the 3 images of the fmovie associeted with the first local scale e = 1. Then we compute the other channels belonging to the upper odd local scale. We need odd local scale because now we blur the input fimage. This is the multi-scale part of the algorithm. So we compute for e > 1 and odd :
Horizontal Channel : Hm, n(e > 1) = (abs($ \hat{{I}}_{{m+e,n}}^{{e}}$ - $ \hat{{I}}_{{m,n}}^{{e}}$)p + abs($ \hat{{I}}_{{m-e,n}}^{{e}}$ - $ \hat{{I}}_{{m,n}}^{{e}}$)p)/2
Vertical Channel : Vm, n(e > 1) = (abs($ \hat{{I}}_{{m,n+e}}^{{e}}$ - $ \hat{{I}}_{{m,n}}^{{e}}$)p + abs($ \hat{{I}}_{{m,n-e}}^{{e}}$ - $ \hat{{I}}_{{m,n}}^{{e}}$)p)/2
Diagonal Channel : Vm, n(e > 1) = (abs($ \hat{{I}}_{{m+e,n+e}}^{{e}}$ - $ \hat{{I}}_{{m,n}}^{{e}}$)p + abs($ \hat{{I}}_{{m-e,n-e}}^{{e}}$ - $ \hat{{I}}_{{m,n}}^{{e}}$)p)/2
$ \hat{{I}}^{{e}}_{}$ is the original fimage convolved with splitable blur filter of size e*e.
At least, all the channels are smoothed with a type of binomial filter. For that reason, the user needs to enter the standard deviation S and the weight W of the centered pixel . This filter is splitable and iterated (2 + W)*S2 times.




$ \bigcirc$See Also


fsepconvol, fsmooth.

segtxt.


$ \bigcirc$Version 1.3


Last Modification date : Thu Nov 29 20:23:56 2001


$ \bigcirc$Author


Yann Guyonvarc'h






next up previous contents index
Next: msegct Up: Reference Previous: fvar   Contents   Index
mw 2004-05-05