filtres / matrices de convolution - Infographie 2D - Graphisme
Marsh Posté le 28-05-2006 à 14:50:19
ce serait pas par la valeur absolue des coeffs qu'il faudrait diviser ?
Marsh Posté le 28-05-2006 à 15:42:46
bon en fait je crois que j'ai résolu le problème, dans ces cas là genre matrice de Laplace il ne faut pas diviser ( enfin par 1 ... )
ça vous semble correct comme filtre pour obtenir les contours:
obtenue avec une matrice [0 1 0]
[1 -4 0]
[0 1 0]
Sinon vous connaissez des liens vers des matrices de convolution sympatiques de taille quelquonques ? ( mon programme accepte toutes matrice carré de taille inférieures à l'image )
Marsh Posté le 28-05-2006 à 17:16:18
ReplyMarsh Posté le 28-05-2006 à 18:21:15
godbeni a écrit : |
J'imagine
Sinon, tu peux essayer dans différentes directions (extraire les contours horizontaux mais pas verticaux), faire du flou directionnel...
Edit : j'ai comme l'impression qu'il y a un petit problème dans ton programme, un motif "carré" semble se répéter sur l'image filtrée... mais c'est peut-être une juste impression.
Edit 2 : A la réflexion, le motif "carré" est peut-être dû à la compression jpeg de l'image que tu prends comme source.
Marsh Posté le 28-05-2006 à 18:28:54
kzimir a écrit : J'imagine |
exact merci !
kzimir a écrit : |
exact, y a un motif carré, je viens de m'en rendre compte. Y a surement un problème je vais voir ça, c'est pas évident de coder ça proprement et en plus je suis pas calé en programmation, j'ai débuté la programmation y a 6 mois.
effectivement j'ai déjà essayé de faire des flous directionels par exemple et ça marche bien.
Marsh Posté le 28-05-2006 à 18:44:20
godbeni a écrit : exact merci ! |
Si c'est un carré 8*8 et que ton image en entrée est jpeg, c'est peut-être pas un problème, hein Je vois mal comment tu peux avoir ce genre de problème avec un programme d'application de matrice de convolution (à moins que ton image soit décomposée en tiles plutôt qu'une grosse matrice)
Marsh Posté le 28-05-2006 à 22:32:38
kzimir a écrit : Si c'est un carré 8*8 et que ton image en entrée est jpeg, c'est peut-être pas un problème, hein Je vois mal comment tu peux avoir ce genre de problème avec un programme d'application de matrice de convolution (à moins que ton image soit décomposée en tiles plutôt qu'une grosse matrice) |
merci à vous deux, le problème venait bien du jpeg et les carré faisait bien 8 pixels
Marsh Posté le 28-05-2006 à 14:48:44
Bon je savais pas trop ou poster ça mais comme c'est pas un problème de programmation mais de compréhension et que ça touche à l'infographie 2D, je poste ici. Si ça ne convient pas, pas de problème pour changer de sous cat
Je code actuellement en java un petit logiciel rapide et portable de retraitement d'image et j'ai un problème de compréhension au niveau des matrices de convolution, je les appliques indépendament sur les canaux rvb et alpha. Pour trouver la valeur du pixel central, il faut, à un moment, diviser par la somme des coefficients de la matrice de convolution, le problème c'est que dans les matrices d'amélioration des bords, par exemple:
[ 0 0 0 ]
Mat A = [ -1 1 0 ] La somme des coeffs fait 0 ... On fait comment dans ce cas là ?
[ 0 0 0 ]
Pour les autres matrices ça marche du tonnerre! j'ai implémenter le flou gaussien, l'accentuation des contour, la netteté et toussa. C'est juste les matrices ou la somme des coeffs fait 0 qui me pose problème.
Par avance merci.