ユーザインタフェース

CreateTrackbar

Comments from the Wiki

CreateTrackbar(trackbarName, windowName, value, count, onChange) → None

トラックバーを作成し,指定されたウィンドウに追加します.

パラメタ:
  • trackbarName (str) – 作成されるトラックバーの名前.
  • windowName (str) – 作成されるトラックバーの親として利用されるウィンドウの名前.
  • value (int) – スライダ位置の初期値.0から count までの値.
  • count (int) – スライダ位置の最大値.最小値は常に0です.
  • onChange (PyCallableObject) – OpenCV は,スライダの位置が変更される度に onChange を呼び出します. OpenCV は,これを func(x) として呼び出し,この x はスライダの新しい位置を表します.

関数 cvCreateTrackbar は,指定された名前と可動範囲をもつトラックバー(スライダ,レンジコントロールとも呼ばれます)を作成します.この関数の引数には,トラックバーの位置に同期する変数と,トラックバーの位置変化に応じて呼び出されるコールバック関数を指定します.作成されたトラックバーは,指定されたウィンドウの最上段に表示されます.

[Qt バックエンドのみ] Qt 固有機能の詳細:

  • windowName トラックバーの親として利用されるウィンドウの名前.トラックバーがコントロールパネル上に追加される場合は,NULL を指定できます.

windowName が正しく与えられた場合,作成されたトラックバーはウィンドウ の下部に表示されます.あるいは, windowName が NULL であれば,コントロールパネル上に表示されます.

トラックバーのラベルをクリックすると,トラックバーの値を直接編集することができます.

DestroyAllWindows

Comments from the Wiki

DestroyAllWindows() → None

すべてのHighGUIウィンドウを破棄します.

関数 cvDestroyAllWindows は,オープンされているHighGUIウィンドウをすべて破棄します.

DestroyWindow

Comments from the Wiki

DestroyWindow(name) → None

ウィンドウを破棄します.

パラメタ:name (str) – 破棄されるウィンドウの名前.

関数 cvDestroyWindow は,指定された名前のウィンドウを破棄します.

GetTrackbarPos

Comments from the Wiki

GetTrackbarPos(trackbarName, windowName) → None

トラックバーの位置を取得します.

パラメタ:
  • trackbarName (str) – トラックバーの名前.
  • windowName (str) – トラックバーの親ウィンドウの名前.

関数 cvGetTrackbarPos は,指定されたトラックバーの現在位置を返します.

[Qt バックエンドのみ] Qt 固有機能の詳細:

  • windowName トラックバーの親として利用されるウィンドウの名前.トラックバーがコントロールパネル上に追加される場合は,NULL を指定できます.

MoveWindow

Comments from the Wiki

MoveWindow(name, x, y) → None

ウィンドウの位置を変更します.

パラメタ:
  • name (str) – 移動されるウィンドウの名前.
  • x (int) – 左上コーナーの移動後の x-座標.
  • y (int) – 左上コーナーの移動後の y-座標.

関数 cvMoveWindow は,ウィンドウの位置を変更します.

NamedWindow

Comments from the Wiki

NamedWindow(name, flags=CV_WINDOW_AUTOSIZE) → None

ウィンドウを作成します.

パラメタ:
  • name (str) – ウィンドウの識別に用いられるウィンドウ名で,ウィンドウのタイトルバーに表示されます.
  • flags (int) – ウィンドウのフラグ.現在サポートされているフラグは CV_WINDOW_AUTOSIZE のみです.このフラグがセットされていると,表示される画像サイズに合わせてウィンドウサイズが自動的に調整されます( ShowImage を参照してください).その場合,ユーザが手動でウィンドウサイズを変更することはできません.

関数 cvNamedWindow は,画像とトラックバーのプレースホルダとして利用されるウィンドウを作成します.このウィンドウは,その名前によって参照されます.

同じ名前のウィンドウが既に存在する場合は,この関数は何もしません.

[Qt バックエンドのみ] Qt 固有機能の詳細:

  • flags ウィンドウのフラグ.現在サポートされるフラグは以下のとおりです:

    • CV_WINDOW_NORMAL or CV_WINDOW_AUTOSIZE: CV_WINDOW_NORMAL を指定すると,ユーザがウィンドウサイズを変更できるようになります.逆に CV_WINDOW_AUTOSIZE を指定すると,表示画像( ShowImage を参照してください)にフィットする様にウィンドウサイズが自動的に調整され,ユーザはウィンドウサイズを変更することができなくなります.
    • CV_WINDOW_FREERATIO or CV_WINDOW_KEEPRATIO: CV_WINDOW_FREERATIO を指定すると,アスペクト比を保たずに画像サイズが調整され,逆に CV_WINDOW_KEEPRATIO を指定すると,アスペクト比を保つように調整されます.
    • CV_GUI_NORMAL or CV_GUI_EXPANDED: CV_GUI_NORMAL を指定すると,ステータスバーとツールバーのない以前のウィンドウを表示することができます.逆に CV_GUI_EXPANDED を指定すると,機能強化された新しいGUIが表示されます.

    このパラメータはオプションです.新たにウィンドウを作成する場合のデフォルトのフラグは, CV_WINDOW_AUTOSIZE , CV_WINDOW_KEEPRATIO , CV_GUI_EXPANDED です.

    フラグを変更したい場合は, OR 演算子でこれらを組み合わせることができます.以下に例を示します:

    cvNamedWindow( "myWindow",  ``CV_WINDOW_NORMAL``  |  ``CV_GUI_NORMAL`` );
    

ResizeWindow

Comments from the Wiki

ResizeWindow(name, width, height) → None

ウィンドウサイズを変更します.

パラメタ:
  • name (str) – リサイズされるウィンドウの名前.
  • width (int) – 新しい幅.
  • height (int) – 新しい高さ.

関数 cvResizeWindow は,ウィンドウサイズを変更します.

SetMouseCallback

Comments from the Wiki

SetMouseCallback(windowName, onMouse, param) → None

マウスイベントに対してコールバックを割り当てます.

パラメタ:
  • windowName (str) – ウィンドウの名前.
  • onMouse (PyCallableObject) – 指定ウィンドウ内でマウスイベントが発生する度に呼び出される呼び出し可能オブジェクト.これは `` Foo(event, x, y, flags, param)-> None `` という形式でなければいけません. ここで event は, CV_EVENT_* の内の1つで, xy は(ウィンドウ座標系ではなく)画像座標系におけるマウスポインタの座標, flagsCV_EVENT_FLAG_* の論理和です.また, param は, cvSetMouseCallback 関数呼び出しの際に渡されるユーザ定義パラメータです.
  • param (object) – コールバック関数に渡される,ユーザ定義パラメータ.

関数 cvSetMouseCallback は,指定ウィンドウ内で発生するマウスイベントに対するコールバック関数を設定します.

event パラメータは,以下の内の1つです:

  • CV_EVENT_MOUSEMOVE マウスが移動した
  • CV_EVENT_LBUTTONDOWN 左ボタンが押された
  • CV_EVENT_RBUTTONDOWN 右ボタンが押された
  • CV_EVENT_MBUTTONDOWN 中ボタンが押された
  • CV_EVENT_LBUTTONUP 左ボタンが離された
  • CV_EVENT_RBUTTONUP 右ボタンが離された
  • CV_EVENT_MBUTTONUP 中ボタンが離された
  • CV_EVENT_LBUTTONDBLCLK 左ボタンがダブルクリックされた
  • CV_EVENT_RBUTTONDBLCLK 右ボタンがダブルクリックされた
  • CV_EVENT_MBUTTONDBLCLK 中ボタンがダブルクリックされた

flags パラメータは,以下の内の1つです:

  • CV_EVENT_FLAG_LBUTTON 左ボタンが押されている
  • CV_EVENT_FLAG_RBUTTON 右ボタンが押されている
  • CV_EVENT_FLAG_MBUTTON 中ボタンが押されている
  • CV_EVENT_FLAG_CTRLKEY Ctrl キーが押されている
  • CV_EVENT_FLAG_SHIFTKEY Shift キーが押されている
  • CV_EVENT_FLAG_ALTKEY Alt キーが押されている

SetTrackbarPos

Comments from the Wiki

SetTrackbarPos(trackbarName, windowName, pos) → None

トラックバーの位置をセットします.

パラメタ:
  • trackbarName (str) – トラックバーの名前.
  • windowName (str) – トラックバーの親ウィンドウの名前.
  • pos (int) – トラックバーの新しい位置.

関数 cvSetTrackbarPos は,指定されたトラックバーの位置をセットします.

[Qt バックエンドのみ] Qt 固有機能の詳細:

  • windowName トラックバーの親ウィンドウの名前.トラックバーがコントロールパネル上に配置されている場合は,NULL を指定できます.

ShowImage

Comments from the Wiki

ShowImage(name, image) → None

指定されたウィンドウ内に画像を表示します.

パラメタ:
  • name (str) – ウィンドウの名前.
  • image (CvArr) – 表示される画像.

関数 cvShowImage は,指定されたウィンドウ内に画像を表示します.もし,ウィンドウ作成時にフラグ CV_WINDOW_AUTOSIZE が指定されていれば,画像は元来のサイズで表示されます.そうでなければ,ウィンドウサイズに合わせて表示画像サイズが変更されます.この関数は,画像のビット深度によっては,それを変更する可能性があります:

  • 符号なし8ビットである場合,そのまま表示されます.
  • 符号なし16ビット,あるいは32ビットの整数である場合,ピクセル値を256で割ります.つまり, [0,255*256] の範囲が [0,255] にマッピングされます.
  • 32ビット浮動小数点数である場合は,ピクセル値に255をかけます.つまり,[0,1] の範囲が [0,255] にマッピングされます.

WaitKey

Comments from the Wiki

WaitKey(delay=0) → int

キーが押されるまで待機します.

パラメタ:delay (int) – ミリ秒単位で表される遅延時間.

関数 cvWaitKey は,無限に( \texttt{delay} <= 0 ),あるいは delay ミリ秒だけキーイベントを待ちます.キーが押された場合はそのキーコードが,キーが押されないまま指定されたタイムアウト時間が過ぎてしまった場合は -1 が返されます.

注意: この関数は,HighGUI においてイベントを取得して扱うための唯一の手段です.よって,実行環境がイベント処理を扱ってくれる場合を除けば,通常のイベント処理ではこの関数を周期的に呼び出す必要があります.

[Qt バックエンドのみ] Qt 固有機能の詳細: 現在の Qt の実装では,これが,ウィンドウの再描画 ldots などのイベントを処理する唯一の方法です.