2017-06-12 5 views
0

Pour le code ci-dessous, je me demande comment faire un noyau circulaire au lieu d'un noyau rectangulaire. Je regarde actuellement quelque chose de circulaire, et je veux trouver les valeurs moyennes de BGR pour cela. En ajustant mon noyau, mes données seront plus précises.Comment faire un noyau circulaire?

for center in c_1: 
    b = img2[center[0]-4: center[0]+5, center[1]-4: center[1]+5, 0] 
    g = img2[center[0]-4: center[0]+5, center[1]-4: center[1]+5, 1] 
    r = img2[center[0]-4: center[0]+5, center[1]-4: center[1]+5, 2] 

Répondre

1

région Obtenez le cercle quand donné le centre, vous pouvez essayer la fonction suivante:

def circleAverage(center, r = 4): 
    """ 
    """ 
    for i in range(center[0]-r, center[0]+r): 
     for j in range(center[1]-r, center[1] + r): 
      if (center[0] - i) ** 2 + (center[1] - j) ** 2 <= r**2: 
       // do your computation here. 

espoir que cela vous aide.