J'aimerais savoir comment je peux sélectionner un pixel avec un clic de souris dans une image (qimge) et obtenir la position et la valeur de pixels. P>
merci p>
3 Réponses :
Tout d'abord, vous devez dessiner l'image. Vous pouvez faire cela mon fabrication d'un Vous pouvez obtenir des clics de souris en sous-classant le qlabel code> widget et appelez setpixmap code>. Vous devez convertir votre qimage code> vers qpixmap code> avant de le faire (vous pouvez utiliser qpixmap.fromImage (img) code>). P>
qimage code> et interceptant sourispressevent code>. Recherchez la valeur pixelle avec qimage.pixel () code>. P>
Existe-t-il un exemple court complet qui peut être exécuté à Python? Je ne semble pas comprendre.
self.image = QLabel()
self.image.setPixmap(QPixmap("C:\\myImg.jpg"))
self.image.setObjectName("image")
self.image.mousePressEvent = self.getPos
def getPos(self , event):
x = event.pos().x()
y = event.pos().y()
Cette question est vieille mais pour tout le monde d'arriver ici, comme moi, c'est ma solution basée sur Jareds Réponse: Assurez-vous que la taille de l'étiquette correspond à la taille de l'image, Sinon, les coordonnées de la souris X et Y doivent être transformées en coordonnées d'images. Et je suppose qu'il est également possible d'utiliser la méthode .pixel () code> directement sur un pixmap également, mais l'objet QImage semble fonctionner mieux dans mon cas. P> P>
Et si l'image était en format à l'échelle grise, comment puis-je obtenir l'intensité?
Avez-vous un exemple qui peut fonctionner?