犬ぶよツールズ制作記録

Javaによる研究生活のためのパッケージ、犬ぶよツールズ。
その開発と保守のための備忘録

Tracing Paper の使い方

2006-12-03 12:40:11 | about
● 準備
Javaをインストールしておいてください。

● Tracing Paperのインストール
ダウンロードしたtracing.jarを好きな場所においてください。

● Tracing Paperの起動
tracing.jarをダブルクリックする。

(他の方法)
Javaに詳しい方なら様々な方法をご存知でしょう。
+ ターミナル(Windowsならコマンドプロンプト等)にて
tracing.jarがあるディレクトリで以下を実行する。

> java -jar tracing.jar

あるいは

> java -cp tracing.jar tracing.TracingPaper

など。

起動すると次のようなウィンドウが現れます。



● Tracing Paperの使い方

0.ボタンパネル

左から、画像の拡大(+)、画像の縮小(-)、モード切替、
X軸の目盛りの値(x scale)、Y軸の目盛りの値(y scale)、
画像の回転角度(angle)、メッセージ(起動時はwelcome!)、色設定(color)


1.画像ファイルを読み込む
メニューの file -> open あるいは、キーボードでctrl+oでファイルを開きます。
(Mac OSでもctrl+oになっています。お気をつけください。)
以下のようなダイアログが開きます。


(注意点)
+ たくさんファイルがあるフォルダは表示に時間がかかります。

(他の方法)
起動時にファイルを指定できます。
> java -jar tracing.jar picture.jpg
> java -cp tracing.jar tracing.TracingPaper picture.jpg
など。


無事ファイルが開かれると以下のように表示されます。

画像が大きいとスクロールバーが付きます。

2.画像の設定をする

大きさと角度を調整します。アナログな作業に例えると、
元の画像の上にトレーシングペーパーを重ねてピンで留めることに
相当します。ですから、トレースを始める前に設定を済ませましょう。

(1)大きさを調整します
一番左の2つのボタン、画像の拡大(+)、画像の縮小(-)を押して、
作業しやすい大きさで画像を表示します。
点の位置を読み取る精度は画面上での1ピクセルになります。
精度良く読み取りたい場合にはなるべく大きく表示するようにしてください。

(注意点)
+ 現在、縮小は1段階、拡大は2段階しかできません。
+ 拡大には多少時間がかかります。

(2)角度を調整します
画像の縁や、画像上に表示されている青い線と、読み取りたいグラフの座標軸が
平行になるように、画像を回転します。
angleという文字の左にあるテキストボックスに数字を入れて
リターンキーを押してください。

+ 数字は -0.1~0.1ぐらいが適当です。
微調整では0.001程度の値になるかもしれません。
申し訳ありませんが、試行錯誤して数字の大きさは決めてください。

+ 画像が大きい時は全体を見ながら角度を決めてください。
スキャナで取り込んだ図の場合、ゆがんでいる事がありますので、
厳密に平行にならないかもしれません。

3.座標軸を設定する
画面上のピクセルの位置と、グラフが表す数値との関係を決めます。
モード切替ボタンを押すと、trace以外に
x=0
y=0
x=a
y=a
という4つのモードが出てきます。
これらのモードが画面上の青と緑2本ずつ、計4本の線に対応しています。
ですが、どの線がどのモードに対応しているか覚える必要はありません。
上から順にやれば大丈夫です。

(1)Y軸を決める
x=0のモードを選びます。画像上でマウスを適当にドラッグすると、
緑の縦線がマウスの動きについてきます。
この線をY軸と重なるように動かします。
他の4つの直線も同様の操作です。

(2)X軸を決める
y=0のモードを選びます。
緑の横線が動きます。
X軸と重なるようにします。

(3)x=aの位置を決める
x=aのモードを選びます。
青の縦線が動きます。
これをX軸上の好きな目盛りにあわせます。

(4)y=aの位置を決める
y=aのモードを選びます。
青の横線が動きます。
これをY軸上の好きな目盛りにあわせます。

(5)スケールを決める
x=a、y=aの直線をあわせた目盛りの値を入力します。
X軸の目盛りの値をx scaleの右隣、
Y軸の目盛りの値をy scaleの右隣に入れてください。
それぞれリターンキーを押す必要があります。

+ この設定はトレースの作業中でも可能です。

4.トレースする

いよいよデータを読み取る作業に入ります。
モード切替ボタンをtraceにしてください。
データを読み取りたい画像上の位置をクリックしてください。
クリックした位置に円が表示されます。


方向キーで点の位置を1ピクセルずつ動かせます。
メニューの edit -> remove point あるいは、キーボードでctrl+xで最新の点を
削除できます。

各点のデータは別ウィンドウ(Point Table)に書き出されます。

x、yはクリックされたピクセルの位置です。
読み取りたいデータはx data、y dataです。
期待通りの値になっているか確認しましょう。

5.色の設定
点の位置を表示する円の色は設定することができます。
一番右にあるcolorボタンを押してください。
図のようなダイアログが現れます。


(注意点)
+ 現在、色設定のダイアログを閉じた時点で色の表示がそのままのことがあります。
何か操作すると新しい色になると思います。
(これはプログラマの怠慢です。直します。)

6.表を保存する
メニューの file -> save あるいは、キーボードでctrl+sで
点のデータを保存します。
例によってダイアログが開きます。
デフォルトでは、元の画像ファイル名_trace.txtという名前にしようとします。
ただのテキストファイルです。
できたファイルをエディタで確認しましょう。
以下の例ではTeraPadで表と比べています。


(注意点)
+ コメントは行頭の#、区切りは半角スペースです。
他の形式には対応していません。
+ 保存されるのは点のデータだけです。
最後まで作業して、忘れずに保存しましょう。

● Tracing Paperの終了
本体のウィンドウを閉じてください。

● ヘルプについて
この文書が現在、唯一のヘルプです。
Tracing Paper本体やtracing.jarにはついていません。

● 問い合わせ、バグレポートなど
このブログにコメントしていただければよいと思います。

Tracing Paper (ver. 1.0 release )

2006-12-01 00:08:58 | news
Tracing Paperは画像ファイルから、点や線の位置を数値として読み取るための
アプリケーションです。グラフやプロットの数値を読み取るのに適しています。
もともと、ペンレコーダーが書き出したグラフをスキャナで読み取り、
データをなるべく正確に数値化するために作成しました。

● 機能
1.画像ファイルを読み込み、表示する。
+ 読み込める画像ファイルはインストールされているJavaによります。
通常、jpeg, gif, pngの形式が利用可能です。
+ 画像は任意の角度に回転できます。

2.画面での座標を、画像内のグラフやプロットの座標に変換する。
+ ユーザーは画像上でのX軸、Y軸、x=a、y=b(a, bは任意の定数)の4つの直線の位置を指定します。
これによりX座標、Y座標ごとに、変換(一次変換)します。

3.クリックした点の位置を取得する。
+ 点は画像上に円として表示されます。
+ 点の座標は表として別ウィンドウに表示されます。
この表は画面上での座標と、グラフやプロットでの座標からなります。
この表はテキストファイルとして保存できます。

● 動作環境
Java。JRE 1.4以上。
(動作確認)
+ J2SE 1.5.0 on Windows 2000
+ J2SE 1.4.2 on Mac OS X
+ J2SE 1.4.0 on Solaris

● 配布について
実行可能なjarファイルです。
classファイルが含まれています。
ソースコードは同梱していません。

● 利用条件
フリーです。
再配布不可。
jarファイルに含まれるclassを使用したプログラムを公開する場合には
(注・可能ですが、ありえないと思います)
こちらを経由して別途入手してもらうようにしてください。

● ダウンロード
tracing.jar (28,297 bytes)

● その他
+ ヘルプは作成中です。
+ 今後、設定用のGUIを用意することで操作方法を改善すると思われます。
アプリケーション自体の大幅な機能変更・拡張の予定はありません。
(パッケージとしての配布を意図していないのでjarに含まれる
classは断り無く変更します。)
+ このソフトはもともと2004年に修士論文制作時に必要となったため
作成したものです。
+ 同様の機能を目的をしたアプリケーションに
GetPointXがあります。