*pickup_Color
色トレース抽出フィルタ
**概要
特定の色域・彩度の部分を残して、他のエリアを抜き去ります。
主にアニメーションのセル画彩色の為に「色鉛筆の線」の部分をレイヤから抽出する
ために作成されています。

**使い方
対象のレイヤを直接書き換えますので、必要にしたがって画像の複製にたいして適用してください。

スライダの機能は以下の通り。Windows版ではなぜかスライダに名前をつけられないので、ナンバーでご確認ください

,color	,ctl(0) ,色値指定スライダ
,range	,ctl(1) ,抽出色相範囲
,threshold	,ctl(2)	,彩度域値
,bg	,ctl(2) ,背景域値
,line	,ctl(3) ,ラインパラメータ

色値指定スライダは、抽出する中心色をある指定します。
判定は全1024色相ですが、スライダの値が0-255なので4倍して使用しています。
ひとつのフィルタですべての色に対応しています。

抽出色相範囲は通常は 0で判定範囲が狭く/255で最大になります。
スキャナ画像から色鉛筆の線を抽出する場合は、デフォルトの127(中央)程度で適正です。
余分な色(線)が出る場合はこれを狭くして不要な線を排除します。

彩度域値は、一定以下の彩度のピクセルを除去するためのしきい値です。
安価なスキャナやデジカメでは、黒い線の周辺にそのような色ノイズがかなり多量にのります。
これは最近の製品の特色で言ってみれば「しょうがない」のでうまく調整してください。
グラフィックソフトで直書きした画像や事前処理が済んでいる場合などでは不要なケースもあります。

背景・ラインのパラメータは線の調子を整えます。
グラフィックソフト等で直書きした場合や、事前フィルタで調整済の線に対しては
デフォルトの背景=255/ライン=0 の初期値でご使用ください。(これが線の調子を最も保存します)

抽出は以下のパラメータを目安にしください。単色フィルタの設定値の1/4です。

,鉛筆の色,	中心色相(/255)
,ピンク	,	37
,赤	,	76
,黄色	,	121
,黄緑	,	138
,緑	,	169
,水色	,	216
,青	,	229


同じレイヤに対してフィルタを二回以上かけると全面ベタになります。これは仕様です。
**ソース
---(
r:
put(c2d(b-i,r-i)+512,0),
put(c2m(b-i,r-i),1),
put(0,2),
put(150,3),
put(r2x(get(2)+(ctl(0)*4),get(3)),4),
put(r2y(get(2)+(ctl(0)*4),get(3)),5),
put((get(4)+76),6),
put((get(5)+76),7),
put((256*76-29*get(4)-76*get(5))/150,8),
min(get(6),get(8))>get(7)?0:scl(get(7),min(get(6),get(8)),max(max(get(7),get(8)),get(6)),0,255)

g:
min(get(6),get(7))>get(8)?0:scl(get(8),min(get(6),get(7)),max(max(get(7),get(8)),get(6)),0,255)

b:
min(get(8),get(7))>get(6)?0:scl(get(6),min(get(7),get(8)),max(max(get(7),get(8)),get(6)),0,255)

a:
get(0)>(ctl(0)*4-ctl(1)) && (get(0)<(ctl(0)*4+ctl(1))) && get(1)*10>ctl(2)?255-scl(min(min(r,g),b),ctl(4),ctl(4)+((255-ctl(4))*ctl(3))/255,0,255):0
---)
**技術情報

ターゲットの色相値は、付属のgetColorInfo.jsxスクリプトを使って調べる事ができます。

置き替え用のダミーカラーは色相から似た色を自動生成していますが、原色に再加工している関係から指定の色相値ぴったりにはなりません。
指定中心色からちょっぴりズレていますのでご了承ください。

