11
votes

Mise en œuvre des «bords d'affichage» de Photoshop's -Filter

J'essaie de savoir quels effets le filtre Photoshop "Poster Bordges" est composé de. Il semble que c'est une combinaison de détection de bord et de postérisation, mais je n'ai pas été en mesure de le dupliquer, pas même de près, avec ceux-ci, je suppose que je manque quelque chose. L'image ci-dessous montre la même image avant et après le filtre des bords d'affiches:

text alt

J'ai essayé d'effectuer une postérisation (et une quantification) sur l'image, ainsi que la détection des bords à l'aide de SOBEL, mais apparemment Photoshop fait quelque chose de différent, car les résultats sont très différents. Fondamentalement, la postérisation semble très différente et les bords sont très faibles que le filtre Photoshop.

Ainsi, tout le monde sait comment le filtre des bords d'affiches est mis en œuvre ou avoir une idée du traitement de l'image à effectuer pour atteindre cette dernière image de l'ancienne.

Pas que cela compte vraiment, mais j'utilise Java, et mon code de filtrage d'image est basé sur la plupart des filtres trouvés ici: http://www.jhlabs.com/ip/filters/index.html

Modifier Description du filtre à partir d'Adobe.com:

Les bords d'affiches réduisent le nombre de couleurs d'une image (poserisé) en fonction de l'option de postérisation que vous définissez et trouvez les bords de l'image et dessine des lignes noires sur elles. Les grandes zones larges ont une ombrage simple et des détails sombres fins sont répartis dans l'image.


0 commentaires

3 Réponses :


0
votes

Je soupçonne que vous devez le faire à plusieurs échelles, afin de filtrer la réponse des bords.

  1. Exécutez votre détection de bord à plusieurs niveaux (échelles) d'une pyramide lissée gaussienne de l'image d'entrée [SIGMA_MIN, SIGMA_MAX]
  2. Ensuite, Somme ou sélectionnez des magnitudes de bord maximum sur les échelles
  3. Postériser avec l'image d'origine (mélange?)

4 commentaires

Vous êtes probablement sur la bonne voie, et c'est assez proche de ce que je fais, mais je cherche quelque chose qui me dit exactement quoi faire. J'ai fait un lot d'essais et d'erreurs avec différentes combinaisons et il ne produit toujours pas le résultat souhaité.


Une solution exacte ne peut pas être suggérée sans regarder le code source. Pouvez-vous le partager?


Je pourrais, mais étant donné que le code ne fait pas l'affaire (le résultat est faux comme une chance de 99% est que la séquence des effets est incorrecte et manque), je ne vois pas la valeur dedans. Ce que je regarde dans ce cas, c'est une réponse qui dit "le résultat peut être atteint avec X, Y et Z". La réponse dans ce cas est contenant des mots "suspect", "soit", etc.


Hmm ... Première Enter-KeyAction là-bas ... Couper mon commentaire court. Pour résumer: le problème n'est pas la source existante, le problème est que je ne sais pas comment atteindre l'effet. Ce que vous décrivez, c'est semblable à l'autre anser, mais la solution actuelle semble mentir dans un détail qui manquait, au lieu des paramètres réels aux filtres existants. Photoshop fait quelque chose qui n'a pas été signalé ici et je n'ai pas compris.



0
votes

Copiez l'image d'origine, puis appliquez un postérizefilter . Ensuite, appliquez EdgeFilter , grisscalefilter et invertfilter à la copie. Enfin multiplier l'original postérisé avec la copie. À ce moment-là, vous devriez avoir quelque chose près de des bords d'affiches .


8 commentaires

Avec cela, je reçois ceci: img.skitch.com/20101010-m9y5101010-m9y5eqbtmkkug7xqm9sshxmr.jpg GAUCHE est la photoshop -version, à droite est la création par programme.


C'est ce que j'ai obtenu en suivant la même procédure dans Photoshop IMG137.IMAGESSHACK.US/IMG137/ 8885 / 89390115.png


Hmm ... je me demande si je fais quelque chose de mal. Pouvez-vous l'essayer avec cela? img.skitch.com/20101010-QM28E4WRR1I9DCETA4TWFEDCBD.jpg


Pas aussi bien que le premier que je dois admettre: img135.imageshack.us/img135/ 3664 / 13699800.png


Essayez-vous de reproduire le "scanner sombre" / "réveil de la vie"?


La comparaison "Scanner Darkly" est assez proche. Je pense que le problème est les niveaux de couleur dans la deuxième image. Le premier est plus approprié pour le filtrage, mais la deuxième image a de mauvaises couleurs. La solution peut donc être jouée avec les couleurs / les niveaux de couleur avant de filtrer l'image.


Désolé Mate, j'ai essayé plusieurs combinaisons de reproduire l'effet sans chance ...


L'effet "Scanner Darkly" est également appelé rooscopage - peut-être que cela vous aidera à trouver des informations plus pertinentes?



9
votes

en ce qui concerne les bords: Je supposerais que Photoshop utilise quelque chose de plus sophistiqué qu'un simple filtre dérivé (comme Sobel) pour la détection des bords. Il y a des algorithmes de détection des bords qui tentent de ne trouver que des arêtes «saillantes», c'est-à-dire ceux qui sont pertinents pour la vision humaine, bords d'un artiste humain tirait s'il fait un croquis de ligne. Un ancien algorithme simple et (plutôt) qui va dans cette direction (au moins un peu) est le Détecteur de bord de canny < / a>. Vous devriez être capable de trouver une implémentation de celle-ci. Google pour "bords saillants" pour la littérature de recherche actuelle, mais ne vous attendez pas à des implémentations ou à un pseudocode agréable dans les documents de recherche.

en ce qui concerne la postéralisation: Compte tenu de leurs discussions sur Siggraph, les gars d'Adobe sont beaucoup dans le filtrage bilatéral (veuillez google, je ne peux plus vous connecter), une technique de lissage qui conserve des arêtes importantes. Je pense que si vous appliquez le filtre bilatéral et poserisez ensuite vous devriez vous rapprocher du look souhaité. Malheureusement, la mise en œuvre efficace du filtre bilatéral n'est pas triviale.

Mise à jour pour toute personne toujours intéressée par ce sujet

Le filtre bilatéral que j'ai suggéré ci-dessus est de plus en plus remplacé par le Filtre guidé , du moins dans la communauté de vision de l'ordinateur (les personnes graphiques ne semblent pas encore réaliser le filtre guidé). Le filtre guidé atteint des résultats similaires, mais il est beaucoup plus facile de mettre en œuvre efficacement. L'algorithme exact du filtre guidé est très efficace, tandis que le filtrage bilatéral efficace nécessite des approximations ou des algorithmes incroyablement compliqués.


6 commentaires

Merci pour les pointeurs. J'ai effectivement essayé la détection des bords de canny, mais les résultats des images de test étaient en fait un peu plus faible qu'avec Sobel (semble être des bords plus faibles de Canny, bien que peu plus précisément, et je cherche des bords plus forts, mais ce n'est pas être si précis). Le filtrage bilatéral Googling donne des résultats que je pense que vous pourriez avoir raison. Malheureusement, en regardant l'algorithme, il semble aussi très non trivial. Je dois creuser ces vieux livres de maths universitaires ...


Les bords de cannies sont en effet "faible" en ce sens qu'ils ne sont que 1 pixel large. Les bords de cannies indiquent juste qu'il y a un bord là-bas. J'essaierais de détecter d'abord des "bonnes" bords, puis "grandir", probablement proportionnellement à leur longueur, en utilisant, par exemple la dilatation.


Après quelques tests, je reçois maintenant des résultats qui commencent à ressembler à des bords d'affiche de PS. Néanmoins pas là, mais maintenant, je pense que c'est plus une question de réglage des paramètres. Un grand merci pour votre aide. Maintenant, pour obtenir le filtrage pour courir dans un délai raisonnable: p


@Tuomasr, pourriez-vous partager avec nous les résultats et la procédure? Merci.


Je suis intéressé à utiliser un filtre guidé à la place d'un filtre bilatéral pour améliorer les performances de calcul. Un filtre guidé est-il une bonne alternative au bilatéral pour Downsample Images?


@solvingPuzzle, question intéressante. Je n'ai pas beaucoup entendu parler de l'utilisation du filtre bilatéral pour descente, j'ai donc du mal à évaluer le filtre guidé de cette optique. Avez-vous des sources que vous faites référence à un filtrage bilatéral pour la rédaction? Dans tous les cas, le filtre guidé est assez simple à mettre en œuvre. Vous pouvez donc l'essayer (au moins pour les images en niveaux de gris).