OpenCV 5.0.0
Open Source Computer Vision
読み込み中...
検索中...
見つかりません
🤖 AIによる機械翻訳(非公式) — これは OpenCV 5.0.0 公式リファレンス(英語)を AI (Claude) で自動翻訳したものです。訳に誤りを含む場合があります。正確な情報は 公式英語版(原文) を参照してください。
Qt 新規関数

詳細説明

image

この図はQt* GUIで実装された新機能を説明する。新しいGUIはステータスバー、ツールバー、コントロールパネルを提供する。コントロールパネルにはトラックバーやボタンバーを取り付けることができる。コントロールパネルが表示されない場合は、Ctrl+Pを押すか、任意のQtウィンドウを右クリックしてDisplay properties windowを選択する。

図を生成するために使用した例を以下に示す:

int main(int argc, char *argv[])
{
int value = 50;
int value2 = 0;
namedWindow("main1",WINDOW_NORMAL);
namedWindow("main2",WINDOW_AUTOSIZE | WINDOW_GUI_NORMAL);
createTrackbar( "track1", "main1", &value, 255, NULL);
String nameb1 = "button1";
String nameb2 = "button2";
createButton(nameb1,callbackButton,&nameb1,QT_CHECKBOX,1);
createButton(nameb2,callbackButton,NULL,QT_CHECKBOX,0);
createTrackbar( "track2", NULL, &value2, 255, NULL);
createButton("button5",callbackButton1,NULL,QT_RADIOBOX,0);
createButton("button6",callbackButton2,NULL,QT_RADIOBOX,1);
setMouseCallback( "main2",on_mouse,NULL );
Mat img1 = imread("files/flower.jpg");
VideoCapture video;
video.open("files/hockey.avi");
Mat img2,img3;
while( waitKey(33) != 27 )
{
img1.convertTo(img2,-1,1,value);
video >> img3;
imshow("main1",img2);
imshow("main2",img3);
}
destroyAllWindows();
return 0;
}
int main(int argc, char *argv[])
Definition highgui_qt.cpp:3

クラス

struct  cv::QtFont
 QtFont はQtでのみ利用可能。cv::fontQt を参照。 続き...
 

列挙型

enum  cv::QtButtonTypes {
  cv::QT_PUSH_BUTTON = 0 ,
  cv::QT_CHECKBOX = 1 ,
  cv::QT_RADIOBOX = 2 ,
  cv::QT_NEW_BUTTONBAR = 1024
}
 Qtの「ボタン」タイプ。 続き...
 
enum  cv::QtFontStyles {
  cv::QT_STYLE_NORMAL = 0 ,
  cv::QT_STYLE_ITALIC = 1 ,
  cv::QT_STYLE_OBLIQUE = 2
}
 Qtのフォントスタイル。 続き...
 
enum  cv::QtFontWeights {
  cv::QT_FONT_LIGHT = 25 ,
  cv::QT_FONT_NORMAL = 50 ,
  cv::QT_FONT_DEMIBOLD = 63 ,
  cv::QT_FONT_BOLD = 75 ,
  cv::QT_FONT_BLACK = 87
}
 Qtのフォントの太さ。 続き...
 

関数

void cv::addText (const Mat &img, const String &text, Point org, const QtFont &font)
 画像にテキストを描画する。
 
void cv::addText (const Mat &img, const String &text, Point org, const String &nameFont, int pointSize=-1, Scalar color=Scalar::all(0), int weight=QT_FONT_NORMAL, int style=QT_STYLE_NORMAL, int spacing=0)
 画像にテキストを描画する。
 
int cv::createButton (const String &bar_name, ButtonCallback on_change, void *userdata=0, int type=QT_PUSH_BUTTON, bool initial_button_state=false)
 コントロールパネルにボタンを追加する。
 
void cv::displayOverlay (const String &winname, const String &text, int delayms=0)
 ウィンドウ画像上にテキストをオーバーレイとして指定した時間だけ表示する。
 
void cv::displayStatusBar (const String &winname, const String &text, int delayms=0)
 指定した期間、ウィンドウのステータスバーにテキストを表示する。
 
QtFont cv::fontQt (const String &nameFont, int pointSize=-1, Scalar color=Scalar::all(0), int weight=QT_FONT_NORMAL, int style=QT_STYLE_NORMAL, int spacing=0)
 画像にテキストを描画するためのフォントを生成する。
 
void cv::loadWindowParameters (const String &windowName)
 指定したウィンドウのパラメータを読み込む。
 
void cv::saveWindowParameters (const String &windowName)
 指定したウィンドウの引数を保存する。
 
int cv::startLoop (int(*pt2Func)(int argc, char *argv[]), int argc, char *argv[])
 
void cv::stopLoop ()
 

列挙型詳解

◆ QtButtonTypes

#include <opencv2/highgui.hpp>

Qtの「ボタン」タイプ。

列挙値
QT_PUSH_BUTTON 
Python: cv.QT_PUSH_BUTTON

プッシュボタン。

QT_CHECKBOX 
Python: cv.QT_CHECKBOX

チェックボックスボタン。

QT_RADIOBOX 
Python: cv.QT_RADIOBOX

ラジオボックスボタン。

QT_NEW_BUTTONBAR 
Python: cv.QT_NEW_BUTTONBAR

ボタンが新しいボタンバーを作成する。

◆ QtFontStyles

#include <opencv2/highgui.hpp>

Qtのフォントスタイル。

列挙値
QT_STYLE_NORMAL 
Python: cv.QT_STYLE_NORMAL

標準フォント。

QT_STYLE_ITALIC 
Python: cv.QT_STYLE_ITALIC

イタリックフォント。

QT_STYLE_OBLIQUE 
Python: cv.QT_STYLE_OBLIQUE

斜体フォント。

◆ QtFontWeights

#include <opencv2/highgui.hpp>

Qtのフォントの太さ。

列挙値
QT_FONT_LIGHT 
Python: cv.QT_FONT_LIGHT

太さ25。

QT_FONT_NORMAL 
Python: cv.QT_FONT_NORMAL

太さ50。

QT_FONT_DEMIBOLD 
Python: cv.QT_FONT_DEMIBOLD

太さ63。

QT_FONT_BOLD 
Python: cv.QT_FONT_BOLD

太さ75。

QT_FONT_BLACK 
Python: cv.QT_FONT_BLACK

太さ87。

関数詳解

◆ addText() [1/2]

void cv::addText ( const Mat & img,
const String & text,
Point org,
const QtFont & font )
Python:
cv.addText(img, text, org, nameFont[, pointSize[, color[, weight[, style[, spacing]]]]]) -> None

#include <opencv2/highgui.hpp>

画像にテキストを描画する。

関数addTextは、特定のフォントfontを使用して画像img上にテキストtextを描画する(例としてcv::fontQt を参照)

引数
imgテキストを描画する8ビット3チャンネルの画像。
text画像に書き込むテキスト。
org画像上でテキストの描画を開始する Point(x,y)
fontテキストの描画に使用するフォント。

◆ addText() [2/2]

void cv::addText ( const Mat & img,
const String & text,
Point org,
const String & nameFont,
int pointSize = -1,
Scalar color = Scalar::all(0),
int weight = QT_FONT_NORMAL,
int style = QT_STYLE_NORMAL,
int spacing = 0 )
Python:
cv.addText(img, text, org, nameFont[, pointSize[, color[, weight[, style[, spacing]]]]]) -> None

#include <opencv2/highgui.hpp>

画像にテキストを描画する。

引数
imgテキストを描画する8ビット3チャンネルの画像。
text画像に書き込むテキスト。
org画像上でテキストの描画を開始する Point(x,y)
nameFontフォントの名前。名前はシステムフォントの名前(例: Times*)と一致している必要がある。フォントが見つからない場合は、デフォルトのフォントが使用される。
pointSizeフォントのサイズ。指定しない場合、ゼロまたは負の場合は、フォントのポイントサイズがシステム依存のデフォルト値に設定される。通常これは12ポイントである。
colorBGRA形式でのフォントの色。A = 255 のとき完全に透明である。
weightフォントの太さ。利用可能な操作フラグは次の通り: cv::QtFontWeights より細かく制御するために正の整数を指定することもできる。
styleフォントのスタイル。利用可能な操作フラグは次の通り: cv::QtFontStyles
spacing文字間のスペース。負または正の値を取りうる。

◆ createButton()

int cv::createButton ( const String & bar_name,
ButtonCallback on_change,
void * userdata = 0,
int type = QT_PUSH_BUTTON,
bool initial_button_state = false )

#include <opencv2/highgui.hpp>

コントロールパネルにボタンを取り付ける。

関数createButtonはコントロールパネルにボタンを取り付ける。各ボタンは最後のボタンの右側のボタンバーに追加される。コントロールパネルに何も取り付けられていなかった場合、コントロールパネルに最後に取り付けられた要素がトラックバーだった場合、または型にQT_NEW_BUTTONBARフラグが追加された場合は、新しいボタンバーが作成される。

cv::createButton 関数呼び出しのさまざまな例を以下に示す: :

createButton("",callbackButton);//create a push button "button 0", that will call callbackButton.
createButton("button2",callbackButton,NULL,QT_CHECKBOX,0);
createButton("button3",callbackButton,&value);
createButton("button5",callbackButton1,NULL,QT_RADIOBOX);
createButton("button6",callbackButton2,NULL,QT_PUSH_BUTTON,1);
createButton("button6",callbackButton2,NULL,QT_PUSH_BUTTON|QT_NEW_BUTTONBAR);// create a push button in a new row
int createButton(const String &bar_name, ButtonCallback on_change, void *userdata=0, int type=QT_PUSH_BUTTON, bool initial_button_state=false)
Attaches a button to the control panel.
@ QT_CHECKBOX
Checkbox button.
Definition highgui.hpp:177
@ QT_RADIOBOX
Radiobox button.
Definition highgui.hpp:178
@ QT_PUSH_BUTTON
Push button.
Definition highgui.hpp:176
@ QT_NEW_BUTTONBAR
Button should create a new buttonbar.
Definition highgui.hpp:179
引数
bar_nameボタンの名前。
on_changeボタンの状態が変化するたびに呼び出される関数へのポインタ。この関数は void Foo(int state,*void); としてプロトタイプ宣言される必要がある。state はボタンの現在の状態である。プッシュボタンでは -1、チェック/ラジオボックスボタンでは 0 または 1 となりうる。
userdataコールバック関数に渡されるポインタ。
typeボタンの型(省略可能)。利用可能な型は次の通り: (cv::QtButtonTypes)
initial_button_stateボタンのデフォルト状態。チェックボックスとラジオボックスに使用する。値は0または1。(省略可能)

◆ displayOverlay()

void cv::displayOverlay ( const String & winname,
const String & text,
int delayms = 0 )
Python:
cv.displayOverlay(winname, text[, delayms]) -> None

#include <opencv2/highgui.hpp>

指定した時間だけウィンドウ画像上にテキストをオーバーレイとして表示する。

関数displayOverlayは、一定時間delaymsの間、ウィンドウの上部に有用な情報やヒントを表示する。この関数はウィンドウに表示されている画像を変更しない。つまり、指定した遅延時間の後、ウィンドウの元の内容が復元される。

引数
winnameウィンドウの名前。
textウィンドウ画像上に書き込むオーバーレイテキスト。
delaymsオーバーレイテキストを表示する期間(ミリ秒単位)。前のオーバーレイテキストがタイムアウトする前にこの関数が呼び出された場合、タイマーが再起動されテキストが更新される。この値が0の場合、テキストは消えない。

◆ displayStatusBar()

void cv::displayStatusBar ( const String & winname,
const String & text,
int delayms = 0 )
Python:
cv.displayStatusBar(winname, text[, delayms]) -> None

#include <opencv2/highgui.hpp>

指定した期間だけウィンドウのステータスバーにテキストを表示する。

関数displayStatusBarは、有用な情報やヒントを一定時間 delayms の間、ウィンドウの上部に表示する。この情報はウィンドウのステータスバーに表示される(ウィンドウは cv::WINDOW_GUI_EXPANDED フラグで作成する必要がある)。

引数
winnameウィンドウの名前。
textウィンドウのステータスバーに書き込むテキスト。
delaymsテキストを表示する時間(ミリ秒単位)。前のテキストがタイムアウトする前にこの関数が呼び出された場合、タイマーが再起動されテキストが更新される。この値が0の場合、テキストは消えない。

◆ fontQt()

QtFont cv::fontQt ( const String & nameFont,
int pointSize = -1,
Scalar color = Scalar::all(0),
int weight = QT_FONT_NORMAL,
int style = QT_STYLE_NORMAL,
int spacing = 0 )

#include <opencv2/highgui.hpp>

画像にテキストを描画するためのフォントを作成する。

関数fontQtはcv::QtFont オブジェクトを作成する。このcv::QtFont はputTextとは互換性がない。

この関数の基本的な使い方は次のとおり: :

QtFont font = fontQt("Times");
addText( img1, "Hello World !", Point(50,50), font);
Point2i Point
Definition types.hpp:209
void addText(const Mat &img, const String &text, Point org, const QtFont &font)
Draws a text on the image.
QtFont fontQt(const String &nameFont, int pointSize=-1, Scalar color=Scalar::all(0), int weight=QT_FONT_NORMAL, int style=QT_STYLE_NORMAL, int spacing=0)
Creates the font to draw a text on an image.
QtFont available only for Qt. See cv::fontQt.
Definition highgui.hpp:640
引数
nameFontフォントの名前。名前はシステムフォントの名前(例: Times*)と一致している必要がある。フォントが見つからない場合は、デフォルトのフォントが使用される。
pointSizeフォントのサイズ。指定しない場合、ゼロまたは負の場合は、フォントのポイントサイズがシステム依存のデフォルト値に設定される。通常これは12ポイントである。
colorBGRA形式のフォントの色。A = 255で完全に透明となる。簡単のためにマクロCV_RGBを使用する。
weightフォントの太さ。利用可能な操作フラグは次の通り: cv::QtFontWeights より細かく制御するために正の整数を指定することもできる。
styleフォントのスタイル。利用可能な操作フラグは次の通り: cv::QtFontStyles
spacing文字間のスペース。負または正の値を取りうる。

◆ loadWindowParameters()

void cv::loadWindowParameters ( const String & windowName)

#include <opencv2/highgui.hpp>

指定したウィンドウの引数を読み込む。

関数loadWindowParametersは、ウィンドウwindowNameのサイズ、位置、フラグ、トラックバーの値、ズーム、パン位置を読み込む。

引数
windowNameウィンドウの名前。

◆ saveWindowParameters()

void cv::saveWindowParameters ( const String & windowName)

#include <opencv2/highgui.hpp>

指定したウィンドウの引数を保存する。

関数saveWindowParametersは、ウィンドウwindowNameのサイズ、位置、フラグ、トラックバーの値、ズーム、パン位置を保存する。

引数
windowNameウィンドウの名前。

◆ startLoop()

int cv::startLoop ( int(* pt2Func )(int argc, char *argv[]),
int argc,
char * argv[] )

#include <opencv2/highgui.hpp>

◆ stopLoop()

void cv::stopLoop ( )

#include <opencv2/highgui.hpp>