Je suis un débutant en programmation Java. Je dois soumettre un projet de serveur-client et je suis bloqué dans la comparaison des pixels. .selon le code Il accepte BufferedImage
et compare les pixels. Comment stocker la différence de pixels dans la deuxième image elle-même et la renvoyer ?
Réponse
Trop de publicités?Jetez un coup d'œil à BufferedImage
's getRGB(int x, int y) méthode. Cette méthode fournit une valeur RVB approximative pour l'emplacement (x, y) donné sous la forme d'un int, qui peut ensuite être comparé à l'emplacement correspondant dans l'autre image.
Si vous souhaitez effectuer une comparaison plus détaillée, vous devrez itérer sur chaque bande d'image séparément, en comparant les échantillons de cette bande avec la bande correspondante de l'autre image. (Par exemple, une image codée RGBA a quatre bandes individuelles à comparer, alors qu'une image en niveaux de gris n'en a qu'une).
Vous pouvez évidemment commencer par comparer les dimensions des images pour vous assurer qu'elles sont égales avant de procéder à une comparaison plus détaillée.
De même, ne vous attendez pas à ce que les gens collent des solutions de code détaillées ; ce n'est pas la façon dont Stack Overflow fonctionne. specific problems
Vous devriez donc essayer de coder la solution et poster un extrait de code si vous êtes bloqué.