fuzzy logic for image processing

2 vues (au cours des 30 derniers jours)
nayomi ranamuka
nayomi ranamuka le 28 Mai 2011
Dear all,
I want to use fuzzy logic for image processing. But I've following problem.
1) How to transfer the input image for fuzzy logic functions.
I need to evaluate each pixels in a particular area.
Thank you.
  2 commentaires
nayomi ranamuka
nayomi ranamuka le 29 Mai 2011
Furthermore I need r,g,b components separately for determining membership function. Can anybody help me ?
jagkaran
jagkaran le 25 Oct 2011
u can gather your info from http://www.icgst.com/gvip/volume9/issue5/p1150913709.pdf
RGB components can be seperated by using ...
red = image(:, :, 1);
green = image(:, :, 2);
blue = image(:, :, 3);
image can be noisy or original ....

Connectez-vous pour commenter.

Réponses (2)

Vito
Vito le 25 Oct 2011
"Fuzzy logic" is one of variants of neural networks.
From - for restrictions, for image processing doesn't approach.
"Fuzzy logic" it is equivalent to statistics.
"Membership Functions"-functions of distribution probability.
Therefore the result which is received on an output, no more than a probability estimation of input values.
Considering that result of any logical expression - one value (for sample: (a) or not (a) =true), application "Fuzzy logic" as an image handling facility is extremely restricted.
If the task - an estimation pixel in area "Fuzzy logic" can be used.
Let's admit, the image represents RGB.
The array from three values - R, G, B will be input.
input (R, G, B)-> output (estimation).
But on an output, there will be a probability allocation of these values to all set.
If it is necessary to estimate in some area it is necessary to break set into classes (for example: a red class, a green class, a blue class).
The first network (anfis1).
R G B output
trnData = [255 0 100 (R*1+G*2+B*3)/1530=355/1530=0.23;
50 255 0 (R*1+G*2+B*3)/1530=305/1530=0.1993;
0 200 255 (R*1+G*2+B*3)/1530=455/1530 = 0.2974;];
........ We receive fuzzy sets (areas).
Output defines area and pixel. The estimation shows a level of product of sets R, G, B.
Changing, after training value of any of input parameters, we will receive a pixel estimation (and accordingly area).
output (anfis1) = range [0, 1];
That is we can analyze the image about color blending.
For example.
estimation = 1 = (R or G or B) = white color (perfect square)
estimation = 0.5 = (R or G or B) = gray color (half of square)
It is possible to add and the second network.
The second network (anfis2).
trnData = [output (anfis1) R G B estimation = (R*1+G*2+B*3)/1530]
output (anfis2) = range [0, 1];
Changing value output (anfis1), we will receive various points in once square.
------------- |
| A |output (anfis2)
| |
| _ ______ |
output (anfis1)
A (x=output (anfis1), y=output (anfis2)) = A (0.5,0.5) will correspond to pixel having gray color.
But it is better to use powerful neural networks.
  1 commentaire
Dil
Dil le 16 Oct 2013
Can you explain how can I link the output from image processing to fuzzy controller model? For example say we calculate some distance between two objects in the image. how can i set this distance as an input to the fuzzy controller? thank you...

Connectez-vous pour commenter.


Arkadiy Turevskiy
Arkadiy Turevskiy le 7 Mar 2014
This new example might help: Fuzzy Logic Image Processing .

Catégories

En savoir plus sur Fuzzy Logic Toolbox dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by