Inkscapeでビットマップをトレースする際に内部の穴を保持する方法
Inkscapeで内部の穴を保持するには、まずビットマップの白黒化しきい値を調整して、開口部が残るようにします。単色のキャラクターシルエットなら、単一スキャン → 明るさのしきい値から始めます。カラー作品の場合は、個別のスキャンを確認してください。ある図形に開口部があっても、その背後に別の塗りつぶされた図形がある場合があります。
この手順は、囲まれた開口部を透明なまま残したい人が、ラスター画像のキャラクター作品をトレースするためのものです。しきい値、色の分割、複数スキャンの出力に焦点を当て、開口部がどこで消えるかを特定する実用的な比較テストを紹介します。
1. どの明るい領域を穴にするか決める
トレースの前に、意図的に明るい色で描かれたディテールと、キャラクターの背後にあるものが見えるようにする開口部を区別します。白い装飾パッチと透明な開口部は、白いページ上では同じように見えることがありますが、求めるベクターの仕上がりは異なります。
保持する必要がある開口部を、小さいものから順に書き出します。トレース中はこれらを確認ポイントとして使います。たとえば、「中央の大きな開口部と、囲まれた小さな隙間2つを残す」とします。全体のシルエットが似ているかだけで判断するのではなく、具体的な合格基準を設けられます。
明るさのしきい値ではシルエット状のパスが作られ、複数スキャンでは個別のオブジェクトが作られます。追加のスキャンのほうが開口部を保持できると決めつけず、塗りつぶされたシルエットが1つ必要なのか、複数の色が必要なのかに応じて選んでください。Inkscape Beginners’ Guide: Tracing an Imageを参照してください。
2. 単色のシルエットで開口部を保持するには明るさのしきい値を使う
ファイル → インポートからビットマップを読み込み、選択して、パス → ビットマップのトレースを開きます。明るい背景に暗い作品がある場合は、単一スキャン → 明るさのしきい値を選びます。設定を変更したら、プレビューを更新してください。Inkscapeのガイドでは、この読み込み、選択、プレビューの手順が説明されています。Tracing an Image。
しきい値によって、どのピクセルが前景になるかが決まります。しきい値を上げると、白のまま残るピクセルが減り、中間ビットマップは暗くなります。そのため、しきい値を上げると、小さな開口部の周囲にあるグレーのピクセルが前景に取り込まれることがあります。下げるとそれらのピクセルを取り戻せますが、細い暗色のディテールが消える場合があります。この調整方向は、Inkscapeのトレースチュートリアルにある明るさのしきい値の説明に基づいています。
条件をそろえて比較します。
- 試行値の例として、しきい値を 0.50 に設定します。
- プレビューで、保持したい最小の開口部を確認します。
- 閉じてしまった場合は 0.40 を試し、周囲のシルエットを比較します。
- 前景の細部が消える場合は、少しずつ上げて戻します。
- 開口部と必要な前景のディテールの両方を保持できる設定を適用します。
これらの数値は試行用の設定例であり、画像に対する測定済みの推奨値ではありません。適切な設定はラスター画像によって異なります。穴をさらに復元すると必要なキャラクターのディテールが消え始めるところで調整を止めます。このトレードオフは、元画像をもっと明確に分離する必要があることを示しています。
3. ビットマップがきれいなしきい値処理に適さない場合を見極める
説明用のグレースケール例を考えてみましょう。キャラクターの暗い領域の明るさは 0.20、開口部は 0.80、外側の背景は 1.00 です。しきい値を 0.50 にすれば、暗い領域と2つの明るい領域を分離できます。圧縮や陰影によって開口部の一部が 0.45 になると、その部分は同じしきい値で前景に取り込まれることがあります。
この例は、しきい値の変更が役立つ場合と、それだけでは解決できない場合がある理由を説明しています。意図する開口部と、残す必要がある前景のディテールの明るさが重なっている場合、全体に適用する明るさのしきい値だけで両者を確実に分けることはできません。
続ける前に、ラスター画像を見やすい倍率で確認します。開口部がすでにはっきりしない場合は、ラスターエディターでその領域を明確にしてから、再読み込みしてトレースし直してください。しきい値を何度も変更するより、前景と背景が明確に分かれた画像を優先します。Chicago Public Libraryの元のメイカーチュートリアルでも、トレースにはコントラストの高い画像を推奨しています。How to Trace an Image in Inkscape。
4. 小さな穴を調べる際はディテールの除去を減らす
基本的な前景の選択が適切でも、ディテールの抑制によって小さな囲まれた開口部が失われることがあります。Potraceの元の技術文書では、背景領域は曲線で囲まれた穴として説明され、ノイズ除去パラメーターは面積しきい値を下回る曲線を削除します。このことから、不要な前景の点だけが影響を受けると決めつけず、抑制を弱めて小さな穴が失われるかを確かめられます。Potrace Library API。
診断用のトレースでは、スペックルを無効にするか、インターフェースで可能な場合は値を下げます。別の試行では、スムージングと最適化を弱めます。どの調整で開口部が戻るか分かるよう、一度に変更する設定は1つだけにします。クイーンズランド大学のInkscape資料では、スペックル、角のスムージング、最適化を強めると、ディテールが失われる代わりに出力が単純化されると説明されています。Inkscape: introduction to vector design。
開口部が残るようになったら、必要なクリーンアップだけを再度適用します。変更のたびに、最小の開口部を比較してください。重要な隙間が消えるなら、外側の輪郭が滑らかになっても有用な改善ではありません。
5. 複数スキャンを確認し、開口部の背後に図形がないか調べる
カラー作品では、マルチカラーのセクションを開きます。インターフェースによっては複数スキャンと表示されます。結果には個別のスキャンオブジェクトが含まれます。Inkscapeのガイドでは、確認のためにそれらをグループ解除する方法が紹介されています。個別のスキャンを動かす前に、組み立てた状態の結果を複製しておきます。Tracing an Image。
スタックオプションは、隣り合う色領域の間に隙間ができないよう、スキャンを重ねて配置します。これには実際的な影響があります。上のスキャンにある開口部から、下にある塗りつぶされたスキャンが見えることがあります。そのため、完成した作品は白の背景上では正しく見えても、組み立てた結果では透明になっていない場合があります。重なりの動作はクイーンズランド大学のトレース手順に説明されており、透明性への影響はこの構造から生じます。
他の設定は変えず、スタックを無効にした2つ目のトレースを作成します。両方の出力で、必要な開口部を比較します。これは構造を調べるテストです。スタックを無効にすると重なり方は変わりますが、明るい内側のディテールがすべて自動的に空白として分類されるわけではありません。
背景を削除を試し、残ったものを確認します。そのチェックボックスだけで成功かどうかを判断しないでください。クイーンズランド大学の資料では、画像のコントラストによっては背景が残ることがあると説明されています。また、内側の色領域は残したいものかもしれないため、スキャンを破棄する前に結果を確認してください。Inkscape: introduction to vector design。
6. 次のトレース方法を選ぶために、この判断表を使う
| 観察された状態 | 次に試すこと | 比較から分かること |
|---|---|---|
| 単一スキャンのプレビューで開口部がない | 明るさのしきい値を下げる | 明るいピクセルが前景に取り込まれているか |
| クリーンアップを弱めた場合だけ開口部が残る | クリーンアップ設定を1つずつ戻す | どの設定が小さな特徴を消すか |
| カラーの結果では開いて見えるが、個別のスキャンを確認すると下が塗りつぶされている | スタックの有効時と無効時を比較する | 重なりが塗りつぶされて見える原因かどうか |
| 外側の背景は消えるが、内側には色が残る | 個別のスキャンを確認する | 別の色領域がまだ開口部を占めているか |
| 開口部を復元すると必要な前景のディテールも消える | ラスター画像の前景と背景の分離を明確にする | 元画像が意図した分割に適しているか |
すべてのコントロールを同時に変更せず、表の順に確認してください。目的は、意図した開口部が最初に失われる段階を特定することです。元画像の分離、しきい値の選択、ディテールの抑制、スキャンを組み立てたときの領域の重なりのいずれかを確認します。
7. 結果を残す前に透明かどうかを確認する
適用したトレース結果を元のビットマップから離してから確認します。新しいベクターは元画像の真上に作られるため、両者の違いが分かりにくくなることがあります。InkscapeのガイドとChicago Public Libraryのチュートリアルはいずれも、確認のためにトレース結果をビットマップから離すことを推奨しています。How to Trace an Image in Inkscape。
ベクターの背後に、色の対比がはっきりした長方形を一時的に置きます。意図した穴からはすべて、その長方形が見えるはずです。複数スキャンの場合は、組み立てたグループと、関係する個別の図形の両方をテストします。1つのオブジェクトに開口部が見えても、スタック全体が透明であることの証明にはなりません。
必要な最小の開口部がこの確認を通り、周囲のキャラクターのディテールも保たれている場合にのみ、結果を残します。必要に応じて分割を明確にしてトレースし直せるよう、元のビットマップは別に保存します。こうすれば、穴を保持する処理を再現可能なトレース手順として扱えます。明るい領域を特定し、その境界を残し、別のスキャンがその領域を占めていないことを確認します。
