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?