2014年6月10日火曜日

Centering Camera(芯だしカメラ)の製作 (その5)



Centaring CameraのプログラムをKnoppix(USB版)にインストールする方法です。

Ⅰ.用意するもの


1. Knoppix7.2.0がインストールされたUSBメモリ(8GB以上)
Knoppix7.2.0日本語isoファイルknoppix_v7.0.2DVD_20120530-20120615.isoをDVDに焼いて起動し、そこからUSBメモリ(8GB)にインストールます。

KnoppixのUSBへのインストール方法等はインターネットで確認してください。
間違ってもハードディスクにインストールしないようにくれぐれも気をつけてください


Knoppix7.2.0日本語DVD版のisoファイルはhttp://www.risec.aist.go.jp/project/knoppix/
がKnoppix日本語版の本元ですが。2014.6.3現在接続できないようです。
かわりに、Knoppixのアーカイブのftp://ftp.dnsbalance.ring.gr.jp/archives/linux/knoppix/iso/からknoppix_v7.0.2DVD_20120530-20120615.isoをダウンロードできます。



2. USBカメラ
 エラー処理ができていないので、パソコンにカメラがついていない状態では起動できません。事前に用意してください。





センタリングする上では、レンズ部を回転させることでピント調整できるものがよいです。個人的にはUCAM-DLK130TBKのようなものがお勧めです。私は2年前に電気店で¥980で購入しました。



Ⅱ.インストール

Knoppix7.2.0には python2.7、pygame、Wxpython、Numpy がすでにインストールされていますので OpenCv と pgu をインストールするだけで済みます。
Knoppixを起動してインターネットに接続します。

3. OpenCvをインストール

“設定”の中にある、Synapticパッケージマネージャーを使用します。

Synapticパッケージマネージャーが起動したら、“再読み込み”をクリックし、更新してから opencv を検索します。検索結果の中から、“python-opencv”を選択してインストールします。



4. pgu (pygameユーティリティ) のインストール

pguを解凍してできたpguホルダーとdataホルダーをデスクトップに置くだけです。

方法は
http://code.google.com/p/pgu/ などからpgu-0.16.zipをダウンロードして解凍する。
※pgu-0.18では動きませんでした。注意してください。

② 解凍してできたフォルダーの中の
・pguホルダーと
・dataホルダー
をデスクトップにコピーする。

この作業はknoppix上で出来ますが、Windows上で行ってknoppixにコピー&ペーストしても同じです。




5. プログラムファイルのコピー&ペースト

 Centaring Camera(芯出しカメラ)の製作(その7)を開き、Web画面上からファイルをコピー&ペーストしてテキストファイル形式で保存します。 

これらのファイルは /home/knoppix に置きます。

/home/knoppix/Desktop/KNOPPXではありません

使うのはknoppixのウェブ・ブラウザとKnoppixのLeafpadです。

保存時の文字コードに関しては”現在のロケール(UTF-8)” ”LF"の設定です。

Windows環境では文字化けが起きてうまくいきませんでした。


(1) CenteringCam_VerB.py(プログラム本体)を /home/knoppix に保存。

(2) resolution.txt(使用するカメラの解像度が記入されている。)を保存。

(3) coordinate.txt(座標データが保存される。)を保存する。


この写真にはmanual.jpgがまだ置かれていません。



(4)  manual.jpg を(その7)のWeb画面から画像をクリックしてコピーし、resolution.txt 、 coordinate.txt と同じフォルダーに置いてください。





Ⅲ.プログラムの起動

プログラムの名前 : CenteringCam_VerB.py

WebCameraが接続されていることを確認して早速起動してみます。
方法1  コマンド入力
 Terminal emulatorを起動して、



のようにコマンドを入力して起動します。

しかし、この方法は面倒ですし、Terminarl も開いてしまいます。

方法2  アイコンクリック
プログラムのアイコンをクリック して下の写真のようにプロパティを編集します。


開くアプリケーションに python と入力します。



”実行可能にする”のチェックを外します。



これで、アイコンをクリックするとプログラムが起動します。



以上でインストールは終了です。





【起動しない場合】

(1) カメラのID番号は0番から始まります。
 250行目あたりの

   capture = cv.CreateCameraCapture(int(0))

 がWEBカメラのID番号指定です。カメラのID番号は0番から始まります。 2台目のカメラだと0を1に変える必要があります。もし起動しないときはint( )の数値を変えてみてください。
 私の経験では、USBを抜き差しすると、CenteringCamを起動してプログラムが動いた後数秒経つと動かなくなるなど動作が不安定な機種がありました。

(2) カメラの解像度が合っていないのかも知れません。resolution.txt の数値を確認してください。

(3) ファイルの名前が間違っていると動きません。resolution.txt 、 coordinate.txtを確認してください。 

ちなみに、我が家ではデスクトップ1台とノート2台の上で順調に動いています。




【現在判明している問題点】

Linuxで動かすと

①NumLockを押すとテンキーで数値を入力できるようになりますが、テンキーのEnterキーはうまく機能しません。

②全角入力モードの場合、数値入力時にTabでデータを選択するようになっています。半角入力で数値を入力してください。



【寸法測定の注意点】工作物の上にスケールを置いてmm/dotを計算しても、スケールの厚さがあるために工作物の表面上の値にはなりません。mm/dotを確定した後に工作物をスケールの厚さだけカメラに近づける必要があります。



【プログラムの使用に関して】
このプログラムは個人の趣味で作成したものです。不具合や間違いがあるかもしれません。また、使い勝手の悪い点が多々あります。インストールも含めて、すべて自己責任で使用してください。



【参考】
・バッファローコクヨサプライのBSW3K04Hで640×480、800×600、1280×960のすべてのモードで動作することを確認をしました。
・ELECOMのUCAM-DLK130TBKで640×480、800×600、1024×768、1280×800、1280×960、1280×1024の各モードで動作することを確認をしました。







0 件のコメント:

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。

Centaring Camera(芯だしカメラ)の製作 (その4)

光軸ずれ補正プログラムの使い方と開発 本題に入る前に少し遊んでみました。 千円札の野口英世の瞳です。 この瞳の中心にセンタリングすることも可能?です。 拡大鏡としても使えるなぁー。 (使用カメラはELECOM UCAM-DLK130T...