Cocoapotrace
ラスタ画像からベクタ画像を生成

当サイト再開時に出会った素晴らしいソフト「Cocoapotrace」。jpgやpngといったビットマップ画像をEPSデータに変換してくれます。アイコンがそれを的確に表してますね。

OS 9の頃は「Adobe Streamline 4.0」を使用していました。カラーデータも扱えし、猛烈にコストパフォーマンスが高いソフトでした。ところがOS X版は発売される様子が無く、気がついたら販売終了してるじゃないですか! まあクラシック環境もインストールしていないぐらいなので、久しく使ってなかったから別によかったんですけどね。ところが今年、公私共々トレース作業*1が多く、なんとかならんものか、とWebを徘徊していて出会ったのがこれです。

「Cocoapotrace」アイコン

使い方はとっても簡単。起動すると以下のような画面が出てきます。

「Cocoapotrace」起動直後

変換したい画像を左のボックスにドロップすると、右側のボックスに返還後のプレビューが表示されます。CocoapotraceのアイコンにドラッグアンドドロップでもOKです。プレビューが気に入らなければ、各パラメーターを調整してから「アップデート」ボタンを押すと更新されます。元の画像や値によっては時間がかかる場合があるので気長に待ちましょう。

そうそう、大事なことですが、Streamlineと違いCocoapotraceは2階調でしか変換できません。カラー情報は破棄され「黒か白」になるので、カラー画像は一旦グレースケールに変換し、レベル補正などを行ったほうが望みの結果を得やすいと思います。

各パラメーターの意味ですが、こればっかりは素人の僕ではわかりませんので実際に値をいじって調べてみました。

「Cocoapotrace」初期状態で変換
初期状態のままパラメーター未修正で変換した場合のプレビュー。何が何だかさっぱりわからない。

ハイパスフィルタ

まず「ハイパスフィルタ」。これはおそらく境界線をなぞってるのではないかと思います。つまり、「どれだけくっきりと輪郭を出すか」だと思います。値が大きいほどくっきりします。

「Cocoapotrace」ハイパスフィルタ「4」で変換
ハイパスフィルタ「4」で変換。やっとなにかわかるようになった。
「Cocoapotrace」ハイパスフィルタ「2」で変換
ハイパスフィルタ「2」で変換。ちょっと薄すぎるがとても絵の上手い人が鉛筆で描いたような雰囲気で良いかもいれない。
「Cocoapotrace」ハイパスフィルタ「8」で変換
ハイパスフィルタ「8」で変換。くっきりして見やすいが、猫の種類が変わってしまったような気がする。

スケール

「スケール」に関しては、いろいろ値やオプションを変えてみましたが、それによって生じる変化を制御できませんでした。詳しい方、教えてください。

しきい値

「しきい値」は言葉で説明するのが難しいですが、Cocoapotraceが元の画像を「黒か白か」つまり「0か1か」を判断するときに基準とする値だと思います。しきい値が「0.45」ならそれより少しでも大きければ「1」つまり「黒」で、少しでも小さければ「0」つまり「白」になると。これ、逆かも知れませんが(笑)、考え方はあってると思います。

「Cocoapotrace」しきい値「0.45」で変換
しきい値「0.45」で変換。なんの画像が判断するための情報がつぶれてしまってさっぱりわからない。
「Cocoapotrace」しきい値「0.35」で変換
しきい値「0.35」で変換。猫であることはわかるようになった気がするが、元の画像があるからかもしれない。
「Cocoapotrace」しきい値「0.55」で変換
しきい値「0.55」で変換。黒が多すぎて判別不可能。

この結果から、元画像の見せたい部分との境界がはっきりさせておいた方がいいことがわかります。

パスの分解

「パスの分解」はいろいろやってみましたがさっぱり変化が見られませんでした。詳しい方(略

ドットの抑制

「ドットの抑制」はおそらくその値より小さいピクセルの集まりは無視してしまえということのようです。大きくすれば、ゴミのような点点が消えていきます。つまり、小さいとそれだけ丁寧、といってもいいかもしれません。ハイパスフィルタを有効にしないと結果が意味不明だったので、「12」に設定して変換しています。

「Cocoapotrace」ドットの抑制「2」で変換
ドットの抑制「2」で変換。写真でみると気がつかないノイズまでトレースしています。
「Cocoapotrace」ドットの抑制「64」で変換
ドットの抑制「64」で変換。不要なゴミも少なく、ディティールも再現していていい感じです。
「Cocoapotrace」ドットの抑制「128」で変換
ドットの抑制「128」で変換。「64」とさほど変わりありませんが、カーペットの凹凸が減っています。これでも十分だと思います。

あのですね、ここまで自力で必死に調べていたのですが……なんと「アルゴリズム」の各オプションにカーソルを持っていくと、その説明をしてくれます。

「Cocoapotrace」ポップアップヘルプ

後はそれで調べてください(笑)。まあでもこの説明読んだからといって、直感的にわかる人は少ないと思います。負け惜しみじゃなくて(笑)。そして、残念ながら残りの項目については使用している写真では劇的な変化が表れなかったので、どうなるのかわかりませんでした。

忘れてましたが、左下にある「バッチ」というのは、同じ設定を連続して複数のファイルに適用させる事ができる、と思います。試してませんが。似たような画像を大量にベクタ変換したい時に重宝するでしょうね。それがどういう時なのかちょっと想像できませんが。

バルーンヘルプを発見して、猛烈な徒労感に襲われましたが、とにかくすごいアプリケーションです。OS Xユーザーなら持っていて損はしませんよ。ただ、これのみで思い通りの結果を得るのは難しいので、書き出した後にイラストレーターとかで編集する、といった感じで使用するとますます存在感が増す、名脇役が本来のポジションでしょうね。寺島進みたいなもんです。

Cocoapotrace

1. トレースするのと、ラスタ→ベクタ変換はまた別ですが、それでも楽になることはあります。

Mac

Text by pushman