Outils pour utilisateurs

Outils du site


issue80:tuto_-_inkscape_-_p.20

In this instalment I'll be continuing to look at the Trace Bitmap dialog. Previously I covered the Single Scan algorithms that are used to create a single path from a bitmap image, and which tend to work best on simple line art. This time it's the turn of the Multiple Scans section of the dialog, which creates more than one path, and can often be a better option when dealing with colored images and logos. You may recall from last time that the Potrace code within Inkscape only traces a simple black and white image. The three Single Scan algorithms represent different ways to reduce an image down to a single collection of black and white pixels. The Multiple Scans option, on the other hand, creates a collection of different black and white images, and then passes each of them to the Potrace algorithm individually. The multiple paths that are created are then assembled into a single group before being inserted into your Inkscape document.

Dans cet épisode, je vais continuer à présenter la boîte de dialogue Vectoriser le bitmap. Auparavant, j'ai couvert les algorithmes d'analyse unique qui sont utilisés pour créer un chemin d'accès unique à partir d'une image bitmap, et qui ont tendance à mieux fonctionner sur de la ligne simple. Cette fois, c'est au tour de la section Passes multiples de la boîte de dialogue, ce qui crée plus d'un chemin, et qui peut souvent être une meilleure option lorsqu'il s'agit d'images et de logos colorés. Vous vous souvenez, la dernière fois, que le code Potrace Inkscape retrace seulement une image en noir et blanc simple. Les trois algorithmes de numérisation unique représentent différentes façons de réduire une image à une seule collection de pixels noirs et blancs. L'option de multiples balayages, d'autre part, crée une collection de différentes images en noir et blanc, et passe ensuite chacune d'elle à l'algorithme Potrace individuellement. Les multiples chemins qui sont créés sont ensuite assemblés en un seul groupe avant d'être insérés dans votre document Inkscape.

This part of the dialog has radio buttons for selecting one of three algorithms. Based on the top half of the dialog, you would be forgiven for thinking that the Scans spinbox applied to only the Brightness Steps algorithm, but it actually sets the number of paths that will be created regardless of which algorithm you choose. Similarly, the checkboxes at the bottom apply to all three algorithms.

Cette partie de la boîte de dialogue comporte des boutons radio pour sélectionner l'un des trois algorithmes. Si vous vous basez sur la moitié supérieure de la boîte de dialogue, vous seriez pardonné de penser que la boîte de choix Passes s'applique uniquement à l'algorithme Niveaux de luminosité, mais cette boîte fixe le nombre de chemins qui seront créés indépendamment de l'algorithme que vous choisissez. De même, les cases à cocher au bas s'appliquent aux trois algorithmes.

Let's begin by tracing the Full Circle Magazine logo. For this example, I'll use the “Colours” algorithm, with 8 scans and the “Smooth” and “Stack scans” checkboxes enabled – I'll explain all these options a little later. Selecting the logo and clicking the Update button suggests that the final result will be okay, so I can go ahead and click on the OK button to perform the trace. The result looks like this, with the original PNG image on the left and the traced version on the right.

Commençons par tracer le logo Full Circle Magazine. Pour cet exemple, je vais utiliser l'algorithme « Couleurs », avec 8 passes et en ayant coché les cases « Adoucir » et « Empiler les passes » - je vais vous expliquer toutes ces options un peu plus tard. La sélection du logo et un clic sur le bouton de mise à jour me suggère que le résultat final sera bon et que je peux continuer et cliquer sur le bouton OK pour exécuter le tracé. Le résultat ressemble à ceci, avec l'image originale PNG sur la gauche et la version tracée sur la droite.

It's not a perfect trace – though that was never to be expected, given that we've reduced it to 8 colors. But it's not too bad, and does represent the original image quite well. By ungrouping the 8 paths and separating them out against a gray background we can get a clearer view of the paths that have been created.

Ce n'est pas une trace parfaite, mais on n'a jamais cru que ce serait le cas, étant donné que nous l'avons réduit à 8 couleurs. Mais ce n'est pas trop mauvais et représente l'image originale très bien. En dissociant les huit chemins et en les séparant sur ​​un fond gris, nous pouvons obtenir une vue plus claire des chemins qui ont été créés.

There are a couple of things to note about these paths. The first is that there's a square path which is used as the background for the final trace. This obviously results in our round logo becoming square, even though the original image was a PNG with transparent corners. The second observation is that the paths stack up on top of each other: each scan sits on top of the one before it, obscuring the lower one and just letting it show through where holes have been left – the final image is created by successively hiding parts of the lower objects.

Il y a deux choses à noter à propos de ces chemins. La première, c'est qu'il y a un chemin carré qui est utilisé comme arrière-plan pour la trace finale. Il en résulte évidemment que notre logo rond devient carré, même si l'image originale est une image PNG avec des coins transparents. La deuxième observation est que les chemins s'empilent les uns sur les autres : chaque balayage se trouve au-dessus de celui qui le précède, obscurcissant le niveau inférieur et le laissant transparaître uniquement là où des trous ont été laissés ; l'image finale est créée en cachant successivement des parties des objets inférieurs.

Consider the three white circles in the final logo. As you can see, there is no single trace that contains three white circles. What you see in the final trace is the white background showing through the holes that have been left in each subsequent layer in the stack. Suppose you wanted to tidy up those circles a little. You would potentially have to modify seven of the eight paths!

Considérons les trois cercles blancs dans le logo final. Comme vous pouvez le voir, il n'y a aucune trace unique qui contienne trois cercles blancs. Ce que vous voyez dans la trace finale est le fond blanc qui se voit au travers des trous qui ont été laissés dans chaque couche suivante dans la pile. Supposons que vous vouliez ranger ces cercles un peu. Vous aurez potentiellement à modifier sept des huit chemins !

And what of the square background? You can remove it by checking the “Remove Background” option in the Trace Bitmap dialog, but that just creates 7 paths rather than 8. You get all the same paths as before, but the background path is removed. However, because the three white circles are the result of the background path showing through, we actually end up with three holes in the traced image instead.

Et que dire de l'arrière-plan carré ? Vous pouvez le supprimer en cochant l'option « Retirer l'arrière-plan » dans la boîte de dialogue Vectoriser le bitmap, mais cela créera seulement 7 chemins plutôt que 8. Vous obtenez les mêmes chemins qu'avant, sauf que le chemin de fond est éliminé. Cependant, parce que les trois cercles blancs sont le résultat de la superposition des chemins, nous nous retrouvons en fait avec trois trous dans l'image tracée.

In this case, it's not too tricky to fix up the results, regardless of whether you've chosen to automatically remove the background or not. As a general rule, if you're tracing a rectangular image with no transparency then there's little to be gained from removing the background. However, for tracing images where transparency is important, it's usually best to either check that box, or to manually remove the background layer afterwards. Be aware that you might have some fixing up to do, though.

Dans ce cas, il n'est pas trop difficile de corriger les résultats, peu importe si vous avez choisi de supprimer automatiquement le fond ou non. Généralement, si vous tracez une image rectangulaire sans transparence, alors il y a peu à gagner de la suppression du fond. Cependant, pour tracer des images où la transparence est importante, il est généralement préférable soit de cocher cette case-là, soit de supprimer manuellement la couche de fond après. Soyez conscient que vous pourriez avoir quelques corrections à apporter, cependant.

The way in which the paths sit on top of each other, with later paths obscuring those below, tends to give the best visual results. But not all Inkscape users are using it for artistic reasons; there's a vibrant community of people who use it to create files for vinyl cutters, plotters and laser cutters. For these users the stacked traces would result in some lines being cut and re-cut up to eight times. In the previous example the circular outline of the FCM logo is repeated across most of the paths. Not only is this inefficient, but it could also result in damage to the work being produced, or even to the machine itself. By un-checking the “Stack Scans” option, you will end up with a series of paths that fit inside each other without overlapping.

La manière dont les chemins sont placés l'un au-dessus de l'autre, avec des chemins de niveau supérieur obscurcissant ceux d'en dessous, tend à donner les meilleurs résultats visuels. Mais tous les utilisateurs d'Inkscape ne l'utilisent pas pour des raisons artistiques ; il y a une communauté dynamique de personnes qui l'utilisent pour créer des fichiers de découpe de vinyle, de traceurs et de découpe au laser. Pour ces utilisateurs, les passes empilées entraîneraient la découpe et la découpe répétée jusqu'à huit fois de certaines lignes. Dans l'exemple précédent, le contour circulaire du logo du FCM se répète dans la plupart des chemins. Non seulement cela est contre-productif, mais ça pourrait également endommager le travail en cours de production, ou encore la machine elle-même. En décochant l'option « Empiler les passes », vous allez vous retrouver avec une série de chemins qui s'emboîtent l'un à l'intérieur de l'autre sans se chevaucher.

There's no hiding of lower paths by those further up the z-index. In fact you could re-order the z-indexes and still get the same visual result. The circular outline of our logo now appears only twice – once as an interior path of the background trace, and once as the outside of the large orange path.

Il n'y a pas de masquage des chemins inférieurs par ceux qui ont un z-index plus élevé. En fait, vous pourriez réorganiser les z-index et obtenir le même résultat visuel de nouveau. Le contour circulaire du logo n'apparaît à présent que deux fois : une fois comme un chemin intérieur de la trace de fond, et une fois comme le côté extérieur du grand chemin d'orange.

For some tasks – even those that don't involve blades or lasers – a trace made in this way can be easier to edit than one made with “Stack Scans” enabled. As always, the only way to know for sure is to try both approaches and see which works best with your particular source image. Be aware, however, that disabling this option can leave small gaps, blobs and other artefacts between the traced paths. A close up of one of the white circles in the FCM logo reveals this issue all too clearly (the gray part is the background color showing through gaps between the paths).

Pour certaines tâches - même celles qui ne concernent pas des lames à découper ou des lasers - une trace réalisée de cette manière peut être plus facile à modifier que celle faite en activant « Empiler les passes ». Comme toujours, la seule façon de le savoir avec certitude est d'essayer les deux méthodes et voir celle qui fonctionne le mieux avec votre image source spécifique. Soyez conscient, toutefois, que la désactivation de cette option peut laisser de petits écarts, taches et autres artefacts entre les chemins tracés. Un zoom à proximité d'un des cercles blancs dans le logo du FCM illustre ce problème très clairement (la partie grise est la couleur de fond révélée au travers des espaces entre les chemins).

The last of the three checkboxes, “Smooth”, specifies whether the bitmap image is traced in its original form, or after slightly blurring it. The purpose of blurring it is to smooth out some of the minor color changes that often appear in an image, usually resulting in a trace that is less broken up and has fewer nodes. Because the Potrace algorithm produces only monochrome paths, the resultant trace will still be crisp and sharp, even with this option enabled. Usually I find it's better to leave this checked and benefit from simpler paths, but, if you want to preserve the fidelity of the original image as much as possible, then you may prefer to uncheck it.

La dernière des trois cases, « Adoucir », précise si l'image bitmap est tracée dans sa forme originale, ou après application d'un peu de flou. Le but de ce flou est d'aplanir certains des changements minimes de couleur qui apparaissent souvent dans une image, et qui entraînent en général une trace qui est moins brisée et a moins de noeuds. Parce que l'algorithme Potrace ne produit que des chemins monochromes, la trace résultante sera toujours claire et nette, même avec cette option activée. Généralement, je trouve que c'est mieux de la laisser cochée et de profiter de chemins plus simples, mais, si vous voulez conserver cette fidélité à l'image originale autant que possible, alors vous préférerez peut-être la décocher.

Now that I've explained the options, it's time to take a look at the other two algorithms. All the examples so far have used the “Colours” algorithm. The “Greys” algorithm is a trivial one to explain: it's exactly the same as the “Colours” algorithm except that the resultant paths are converted to shades of gray.

Maintenant que j'ai expliqué les options, il est temps de jeter un œil aux deux autres algorithmes. Tous les exemples jusqu'ici ont utilisé l'algorithme « Couleurs ». L'algorithme « Niveaux de gris » est facile à expliquer : c'est exactement le même que l'algorithme Couleurs, sauf que les chemins résultants sont convertis en nuances de gris.

The “Brightness steps” algorithm separates the bitmap image based on the brightness of each pixel, and produces a group of grayscale paths. The number of paths created is always one more than the “Scans” value, giving you a minimum of three paths. I've found this algorithm to be more problematic than the other two: on my machine it will create a preview for the FCM logo, but won't actually trace it at all! Fortunately it seems happy to trace renaissance paintings, so I've used an image of the Mona Lisa to create a sample grid of the same image traced using each of the three algorithms, with three different values for the “Scans” spinbox. I've only gone as far as 32 scans here – larger values will give more accurate traces but can take a long time to complete and result in a lot of paths and nodes to deal with.

L'algorithme « Niveaux de luminosité » sépare l'image bitmap en fonction de la luminosité de chaque pixel et produit un groupe de chemins en niveaux de gris. Le nombre de chemins créés est toujours un de plus que la valeur « Passes », avec, cependant, un minimum de trois chemins. J'ai trouvé cet algorithme plus problématique que les deux autres : sur ma machine, il a créé un aperçu du logo du FCM, mais ne veut pas le tracer du tout ! Heureusement, il semble content de tracer des tableaux de la Renaissance, alors je l'ai utilisé sur une image de la Joconde pour créer une grille d'échantillons de la même image tracée en utilisant chacun des trois algorithmes, avec trois valeurs différentes dans la zone « Passes ». Je suis seulement allé jusqu'à 32 passes ici - des valeurs plus grandes donnent des traces plus précises, mais peuvent prendre un certain temps à se réaliser et engendrer un grand nombre de chemins et de nœuds à traiter.

There are some other options in the Trace Bitmap dialog that apply to all the tracing algorithms, whether they are of the Single Scan or Multiple Scan variety. These are gathered together into their own tab in the dialog.

Il y a d'autres options dans la boîte de dialogue « Vectoriser le bitmap » qui s'appliquent à tous les algorithmes de traçage, qu'ils soient en Passe simple ou en Passes multiples. Ceux-ci sont rassemblés dans leur propre onglet dans la boîte de dialogue.

Each can be enabled or disabled using the checkboxes to the left, and each also takes a single parameter which is set in the corresponding spinbox to the right. I tend to leave these all enabled with the default settings, however you may wish to disable or edit them for particular traces.

Chacun peut être activé ou désactivé à l'aide des cases à cocher sur la gauche, et chacun prend également un paramètre unique qui est situé dans la zone de sélection numérique correspondante sur la droite. J'ai tendance à les garder tous activés avec les paramètres par défaut, mais vous pouvez les désactiver ou les modifier pour des traces particulières.

“Suppress speckles” removes all paths with a size that is less than the number specified. Turning this off can lead to some very long tracing times. Setting it to a higher value can speed up tracing, but lose fine detail in the process.

« Supprimer les parasites » supprime tous les chemins dont la taille est inférieure au nombre spécifié. Désactiver cette option peut conduire à des temps de traçage très longs. Un réglage à une valeur plus élevée peut accélérer le traçage, mais entrainer la perte des détails fins.

“Smooth corners” creates paths with rounded corners. Disabling this, or setting the threshold to 0 results in sharp corners instead. The threshold value determines the amount of rounding that is allowed. The effect of this option is most visible on images with sharp corners – if you want to trace a pixel image or a QR code and preserve the individual squares then you may want to disable this option.

« Adoucir les coins » crée des chemins avec des coins arrondis. Sa désactivation, ou un seuil fixé à 0, produit des coins pointus. La valeur de seuil détermine le niveau de l'arrondissement autorisé. L'effet de cette option est très visible sur des images avec des angles vifs - si vous voulez tracer une image en pixels ou un code QR et préserver les carrés individuels, vous pouvez désactiver cette option.

“Optimise paths” allows Inksape to reduce the number of nodes by simplifying the traced paths in a similar manner to the Ctrl-L shortcut. The resultant paths aren't a precise match for the original, but are usually close enough for artistic purposes. The Tolerance spinbox sets the amount of variation from the original path that is allowed, with higher values allowing more variation and resulting in fewer nodes.

« Optimiser les chemins » permet à Inksape de réduire le nombre de nœuds en simplifiant les chemins tracés d'une manière similaire à celle utilisée par le raccourci Ctrl-L. Les chemins résultants ne forment pas une copie exacte de l'original, mais y sont généralement assez proches pour des fins artistiques. La boîte de choix « Tolérance » fixe le niveau de la variation autorisée par rapport à la trajectoire initiale, des valeurs plus élevées permettant une plus grande variation et engendrant moins de noeuds.

There's one final option in the Trace Bitmap dialog that sits on its own in the top-right corner: “SIOX foreground selection”. This uses the Simple Interactive Object eXtraction algorithm (http://www.siox.org/) to separate a foreground object from the background prior to tracing. With this enabled, the dialog requires two objects to be selected: the image to be traced, and a filled path that roughly covers the foreground object to be extracted. You can see the effect with this trace of a picture of Horatio Nelson's statue on top of his eponymous column in London.

Il y a une dernière option dans la boîte de dialogue Vectoriser le bitmap qui se trouve seul dans le coin en haut à droite : « Sélection du premier plan avec SIOX ». Il utilise l'algorithme simple d'extraction interactif d'objet (http://www.siox.org/) pour séparer un objet de premier plan de l'arrière-plan avant le traçage. Quand cette option est activée, vous devez sélectionner deux objets dans la boîte de dialogue : l'image à tracer et un chemin rempli qui couvre à peu près l'objet de premier plan à extraire. Vous pouvez voir l'effet dans cette trace d'une image de la statue de Horatio Nelson, sur sa colonne éponyme, à Londres.

Although this mode might appear useful, in practice it can be difficult to get a good result. The previous example only worked well when I reduced the original high-resolution image down to something with fewer pixels. In my experience, you would be better off separating out the foreground using The GIMP (which has its own, more interactive, implementation of the SIOX algorithm) and then tracing the result.

Bien que ce mode puisse paraitre utile, en pratique il peut être difficile d'obtenir un bon résultat. L'exemple précédent ne fonctionnait bien que quand j'ai réduit l'image en haute résolution d'origine à quelque chose avec moins de pixels. Selon mon expérience, vous feriez mieux de séparer le premier plan à l'aide de GIMP (qui a son propre outil, plus interactif, de mise en œuvre de l'algorithme de SIOX,), puis de vectoriser le résultat.

Automatic tracing of images is no magic bullet. It's not a practical way to convert a bitmap to an infinitely scalable vector unless you're also prepared to accept a loss of color depth and fine detail. And whilst it can be useful for tracing logos and line art, the resultant paths are likely to still require additional editing. Often the time spent trying to tidy up the results of an automatic trace would have been better spent manually tracing instead: it's better to manually trace a round logo as a circle than to automatically trace it and end up with an approximately circular path, for example. Don't rule out the possibility of mixing both methods, though. As always, you really need to experiment with your own images in order to decide which approach works best for you.

La vectorisation automatique des images n'est pas une solution magique. Ce n'est pas une façon pratique de convertir un bitmap en un vecteur infiniment extensible, à moins que vous ne soyez également prêt à accepter une perte de profondeur de couleur et de détails fins. Et, alors que cela peut être utile pour le traçage de logos et de dessins au trait, les chemins résultants sont susceptibles d'exiger encore des modifications. Souvent, le temps passé à essayer d'arranger les résultats d'une trace automatique aurait été mieux utilisé avec un tracé manuel : il est préférable de tracer manuellement un logo rond comme un cercle plutôt que de le vectoriser automatiquement et de vous retrouver avec un chemin circulaire approximatif, par exemple. Il ne faut pas exclure la possibilité de mélanger les deux méthodes, cependant. Comme toujours, vous devez expérimenter avec vos propres images afin de décider de l'approche qui fonctionne le mieux pour vous.

Image Credits “La Gioconda” (aka “Mona Lisa”) by Leonardo da Vinci http://en.wikipedia.org/wiki/File:Mona_Lisa,_by_Leonardo_da_Vinci,_from_C2RMF_retouched.jpg Statue of Admiral Nelson, at the top of Nelson's Column, London. http://commons.wikimedia.org/wiki/File:Admiral_Horatio_Nelson,_Nelson%27s_Column,_Trafalgar_Square,_London.JPG

Crédits images : La Joconde (aussi connue sous le nom Mona Lisa) de Léonard de Vinci. http://en.wikipedia.org/wiki/File:Mona_Lisa,_by_Leonardo_da_Vinci,_from_C2RMF_retouched.jpg

Statue de l'Amiral Nelson, au sommet de la colonne Nelson, Londres. http://commons.wikimedia.org/wiki/File:Admiral_Horatio_Nelson,_Nelson%27s_Column,_Trafalgar_Square,_London.JPG

issue80/tuto_-_inkscape_-_p.20.txt · Dernière modification : 2014/05/07 19:00 de gsxfred