@Override
    public boolean equals(Object a){
        if (!a.getClass().equals(this.getClass())){
            return false;
        }
        if (((PGM)a).maxNiveauGris!=this.maxNiveauGris || ((PGM)a).hauteur!=this.hauteur ||
              ((PGM)a).largeur!= this.largeur || ((PGM)a).niveauxGris.size()!= this.niveauxGris.size()){
            return false;
        }
        for (int i=0; i<niveauxGris.size(); i++){
            if (!Objects.equals(((PGM)a).niveauxGris.get(i), niveauxGris.get(i))){
                return false;
            }
        }
        return true;
    }