OpenCVでコンピューターの画面解像度を取得するにはどうすればよいですか? 画面幅全体を使用して 2 つの画像を並べて表示する必要があります。OpenCV では、作成したい正確なウィンドウ サイズが必要です。
質問する
14444 次
6 に答える
5
Linuxでは、これを試してください
#include <stdio.h>
int main()
{
char *command="xrandr | grep '*'";
FILE *fpipe = (FILE*)popen(command,"r");
char line[256];
while ( fgets( line, sizeof(line), fpipe))
{
printf("%s", line);
}
pclose(fpipe);
return 0;
}
Windows では、
http://cppkid.wordpress.com/2009/01/07/how-to-get-the-screen-resolution-in-pixels/
于 2012-06-15T04:23:59.877 に答える
2
OS 関数の代わりに opencv を使用する:
cv.namedWindow("dst", cv.WND_PROP_FULLSCREEN)
cv.setWindowProperty("dst",cv.WND_PROP_FULLSCREEN,cv.WINDOW_FULLSCREEN)
(a,b,screenWidth,screenHeight) = cv.getWindowImageRect('dst')
だから私はフルスクリーンモードでウィンドウを作成し、その幅と高さを尋ねます
どのOSでも動作するはずですが、Windowsでしか動作しませんでした. Linux では、ウィンドウはフルスクリーンではありませんでした。
于 2021-02-09T08:22:58.933 に答える
0
OSの機能ではありません-オペレーティングシステムによって異なります
于 2012-06-14T23:07:54.307 に答える
-2
新しいバージョンでは、以下のようにも機能します。これは素晴らしいことです:-D
printf("%f",cap.get(CV_CAP_PROP_FRAME_HEIGHT));
ビデオ解像度を設定します。
<capture_handle>.set(property_in_caps, value_in_double);
ex, cap.set(CV_CAP_PROP_FRAME_HEIGHT, 720);
于 2013-03-06T18:58:47.813 に答える