utilisation de ginput avec images
Bonjour à tous !!
Alors je vous expose le dernier de mes soucis :weird:
Donc en fait j'ai une image sur lequel j'aimerai récupérer des valeurs de pixels.
J'ai pensé à utiliser le programme suivant :
[CODE]
pl.imshow(image)
points = ginput()
[CODE]
En gros je clique sur mon image pour selectionner mes points cest plus rapide que d'écrire une à une toute les coordonnées de mes points surtout si il y en as beaucoup!
Du coup après j'ai une liste d'un nombre n de points de la forme
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
In [159]: points
Out[159]:
[(74.5, 319.29166666666663),
(103.66666666666669, 280.75),
(132.83333333333331, 239.08333333333331),
(164.08333333333331, 195.33333333333331),
(190.125, 160.95833333333331),
(213.04166666666663, 126.58333333333331),
(233.875, 92.208333333333314),
(267.20833333333331, 49.5),
(294.29166666666663, 16.166666666666629)] |
En gros j'aimerai pouvoir récupérer les valeurs de pixel de mon image en ces points. En faisant un truc comme :
Code:
1 2 3 4 5
|
points=np.array(points)
x=points[:,0]
y=points[:,1]
valeur_pixel=image[y,x] |
mais bon comme c'est x et y sont des array cela ne marche pas très bien :
Code:
1 2
|
image[points[:,0],points[:,1]] |
me renvoie :
Code:
1 2 3
|
IndexError: arrays used as indices must be of integer (or boolean) type |
alors que si je fais à part image[74.5, 319.29166666666663] ca marche!
Une idée pour orienter mes recherches ?? merci d'avance