Pages: [1]   Go Down
Print
Author Topic: chiarimento applicazione filtro generico  (Read 2580 times)
0 Members e 1 Utente non registrato stanno visualizzando questa discussione.
turì
Apprendista Forumista
**
Offline Offline

Posts: 275



« on: 06-02-2011, 13:00:47 »

data una matrice generica, per applicare un filtro qualsiasi, ad esempio il filtro x-sobel

-1 -2 -1
 0  0   0
 1  2   1

come lo applico?

thanks
Logged
Daréios89
Forumista Eroico
*****
Offline Offline

Gender: Male
Posts: 2.679


La musica è la forma d'arte suprema.


« Reply #1 on: 06-02-2011, 13:31:34 »

In genere nell' esercizio si ha una matrice come:

2,4,3,6,8
1,5,4,6,7
1,4,3,5,6
1,4,3,2,6

E poi viene chiesto di applicare il filtro all' immagine 3*3 che ha per centro un pixel preciso.
Per esempio essendo sobel un Kernel 3*3 supponiamo di applicarlo all' elemento (3,3)
Prendo solo una parte della matrice.

5 4 6
4 3 5
4 3 2

Poichè il centro è dato dall' elemento 3, e il resto è il contorno.
E poi fai il prodotto punto a punto se non sbaglio.
Logged

"Utilizzare sempre de l'Hôpital.....è come andare a caccia di farfalle con un bazooka".
turì
Apprendista Forumista
**
Offline Offline

Posts: 275



« Reply #2 on: 06-02-2011, 14:32:27 »

forse intendevi dire il punto (2,2) visto che si parte a contare gli indici da 0

se per caso lo chiede di fare su tutta la matrice al solito creo il bordo all'immagine con tutti 0 e poi lo faccio per ogni pixel, giusto?
Logged
Daréios89
Forumista Eroico
*****
Offline Offline

Gender: Male
Posts: 2.679


La musica è la forma d'arte suprema.


« Reply #3 on: 06-02-2011, 14:51:05 »

Si hai ragione partono da 0, si si uno dei metodi per risolvere il problema dei bordi per i filtri è immaginare che attorno vi sia 0, quindi anche io farei così 
Logged

"Utilizzare sempre de l'Hôpital.....è come andare a caccia di farfalle con un bazooka".
Geko
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 166


« Reply #4 on: 06-02-2011, 19:18:30 »

Per farla molto semplice devi scorrere la matrice ( gestendo i bordi) e fare la somma dei prodotti degli elementi del kernel con gli elementi dell'intorno del pixel su cui stai operando.



img
[1,2,3,4,5;
6,7,8,9,10;
11,12,13,14,15;
16,17,18,19,20;
21,22,23,24,25]

kernel
[a,b,c;
d,e,f;
g,h,i;]

se sei ad esempio nel pixel (2,2) = 7
prendi il suo intorno costituito dagli 8 connessi,
moltiplichi quello in alto a sx con il primo elemento del kernel e lo sommi a quello in altro centrale per il secondo elemento del kernel e lo sommi a .....

In pratica metti il centro del kernel nel pixel e fai la somma dei prodotti degli elementi con posizione uguale.

GC
Logged
turì
Apprendista Forumista
**
Offline Offline

Posts: 275



« Reply #5 on: 06-02-2011, 19:26:49 »

Per farla molto semplice devi scorrere la matrice ( gestendo i bordi) e fare la somma dei prodotti degli elementi del kernel con gli elementi dell'intorno del pixel su cui stai operando.



img
[1,2,3,4,5;
6,7,8,9,10;
11,12,13,14,15;
16,17,18,19,20;
21,22,23,24,25]

kernel
[a,b,c;
d,e,f;
g,h,i;]

se sei ad esempio nel pixel (2,2) = 7
prendi il suo intorno costituito dagli 8 connessi,
moltiplichi quello in alto a sx con il primo elemento del kernel e lo sommi a quello in altro centrale per il secondo elemento del kernel e lo sommi a .....

In pratica metti il centro del kernel nel pixel e fai la somma dei prodotti degli elementi con posizione uguale.

GC


quindi al 7 sostituisco la sommatoria dei prodotti dei valori del kernel per i rispettivi valori della matrice di input?

esempio

immagine

1 2 1
3 2 2
0 1 1

kernel

1 1 1
0 0 0
1 1 1

si fa che al posto dell'elemento centrale 2 sostituisco

1*1 + 2*1 + 1*1 + 3*0 + 2*0 + 2*0 + 0*1 + 1*1 + 1*1 = 7
Logged
Geko
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 166


« Reply #6 on: 06-02-2011, 19:31:44 »

yeh

GC
Logged
turì
Apprendista Forumista
**
Offline Offline

Posts: 275



« Reply #7 on: 06-02-2011, 19:32:38 »

grazie del chiarimento
Logged
Daréios89
Forumista Eroico
*****
Offline Offline

Gender: Male
Posts: 2.679


La musica è la forma d'arte suprema.


« Reply #8 on: 06-02-2011, 21:50:16 »

Scusa tu avevi detto la somma degli otto connessi, ma ho visto moltiplicare anche l' elemento centrale, quello non andrebbe escluso?
Logged

"Utilizzare sempre de l'Hôpital.....è come andare a caccia di farfalle con un bazooka".
pippo
Apprendista Forumista
**
Offline Offline

Posts: 150



« Reply #9 on: 06-02-2011, 21:52:44 »

Scusa tu avevi detto la somma degli otto connessi, ma ho visto moltiplicare anche l' elemento centrale, quello non andrebbe escluso?
va incluso anche quello naturalmente
Logged
Daréios89
Forumista Eroico
*****
Offline Offline

Gender: Male
Posts: 2.679


La musica è la forma d'arte suprema.


« Reply #10 on: 06-02-2011, 21:54:17 »

 pray  pray  pray
Logged

"Utilizzare sempre de l'Hôpital.....è come andare a caccia di farfalle con un bazooka".
Pages: [1]   Go Up
Print
Jump to: