fuzzy logic for image processing

2 Ansichten (letzte 30 Tage)
nayomi ranamuka
nayomi ranamuka am 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 Kommentare
nayomi ranamuka
nayomi ranamuka am 29 Mai 2011
Furthermore I need r,g,b components separately for determining membership function. Can anybody help me ?
jagkaran
jagkaran am 25 Okt. 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 ....

Melden Sie sich an, um zu kommentieren.

Antworten (2)

Vito
Vito am 25 Okt. 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 Kommentar
Dil
Dil am 16 Okt. 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...

Melden Sie sich an, um zu kommentieren.


Arkadiy Turevskiy
Arkadiy Turevskiy am 7 Mär. 2014
This new example might help: Fuzzy Logic Image Processing .

Kategorien

Mehr zu Fuzzy Logic Toolbox finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by