Problem to Threshold a Matrix
14 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
CharlesB
am 12 Apr. 2017
Kommentiert: Image Analyst
am 21 Apr. 2017

I need to threshold the surrounding pixels of the given matrix with respect to the centre pixel of the given matrix. If the surrounding values are greater than or equal to the center of the pixel they are given a 1 otherwise they are given a 0. Then I need to store all the values in the shown order to result in a vector which contains the binary value.
2 Kommentare
James Tursa
am 12 Apr. 2017
Have you tried coding this? What problems are you having? Not working, or too slow, or ???
Akzeptierte Antwort
Image Analyst
am 12 Apr. 2017
Let's call it what it is, okay? You're asking for the " local binary pattern".
For a FULL demo on the whole image, see the attached m-file. it creates this image

6 Kommentare
Image Analyst
am 21 Apr. 2017
I don't understand why you want to do that. And anyway, you don't have one LBP feature for the entire image. Every pixel has its own local binary pattern, so you have millions of patterns.
Weitere Antworten (1)
James Tursa
am 12 Apr. 2017
Bearbeitet: James Tursa
am 12 Apr. 2017
Using your small example:
>> x = 2;
>> y = 2;
>> matrix = [ 85 99 21; 54 54 86; 57 12 13]
matrix =
85 99 21
54 54 86
57 12 13
>> t = matrix >= matrix(y,x)
t =
1 1 0
1 1 1
1 0 0
>> b = [t(y,x-1) t(y+1,x-1:x+1) t(y,x+1) t(y-1,x+1:-1:x-1)]
b =
1 1 0 0 1 0 1 1
>> d = sum(b.*2.^(7:-1:0))
d =
203
Siehe auch
Kategorien
Mehr zu Graph and Network Algorithms finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!