takato yamada
2017.01.12
画像サイズの調整
サンプルコードのFaceTrackingSample.javaにおいて、
90行目のコントラスタ、
cam.initStill(new CameraCapture(CameraCapture.CAP_IMAGE_SIZE_5Mpixel, CameraCapture.CAP_FORMAT_MJPG));
を
cam.initStill(new CameraCapture(128, 128, CameraCapture.CAP_FORMAT_MJPG));
に変更すれば、画像サイズを調整できると、以下のサイトの二番目のコンストラクタを参考に考えたのですが、
https://sota.vstone.co.jp/sota/javadoc/jp/vstone/camera/CameraCapture.html#changeFormt-int-int-int-
こちらのエラーが出て、実行することができません。
Exception in thread "main" java.lang.IllegalArgumentException: Illegal argument image size
こちら、画像サイズの調整を行うためにどのように設定すれば良いのでしょうか?
どうぞよろしくお願いいたします。
90行目のコントラスタ、
cam.initStill(new CameraCapture(CameraCapture.CAP_IMAGE_SIZE_5Mpixel, CameraCapture.CAP_FORMAT_MJPG));
を
cam.initStill(new CameraCapture(128, 128, CameraCapture.CAP_FORMAT_MJPG));
に変更すれば、画像サイズを調整できると、以下のサイトの二番目のコンストラクタを参考に考えたのですが、
https://sota.vstone.co.jp/sota/javadoc/jp/vstone/camera/CameraCapture.html#changeFormt-int-int-int-
こちらのエラーが出て、実行することができません。
Exception in thread "main" java.lang.IllegalArgumentException: Illegal argument image size
こちら、画像サイズの調整を行うためにどのように設定すれば良いのでしょうか?
どうぞよろしくお願いいたします。
回答
Sotaサポート
2017.01.16
takato yamada様
Sotaサポートです。
画像サイズは任意の数値による指定は不可能となり、設定方法は下記の2通りとなります。
①定数の利用
https://sota.vstone.co.jp/sota/javadoc/jp/vstone/camera/CameraCapture.html
上記ページ内の「CAP_IMAGE_SIZE_5Mpixel」から「CAP_IMAGE_SIZE_XGA」までの10通りから選択可能となります。
【例】キャプチャサイズをXGAで設定
cam.initStill(new CameraCapture(CameraCapture.CAP_IMAGE_SIZE_XGA, CameraCapture.CAP_FORMAT_MJPG));
②使用可能なキャプチャ画像サイズのリストから選択
画像サイズのリストは以下になります。
public static final int[][] CAP_IMAGE_SIZE = new int[][]{
{320 , 240},
{640 , 480},
{800 , 600},
{1024 , 768},
{1280 , 720},
{1280 , 1024},
{1600 , 1200},
{1920 , 1080},
{2048 , 1536},
{2592 , 1944}
}
上記より、10通りの画像サイズの指定が可能となります。
(実質的には①と同じ組み合わせとなります)
【例】キャプチャサイズを1280x1024で設定
cam.initStill(new CameraCapture(CAP_IMAGE_SIZE[5][0], CAP_IMAGE_SIZE[5][1], CameraCapture.CAP_FORMAT_MJPG));
このとき、下記のような組み合わせは指定できない仕様となっております、あらかじめご了承ください。
//0と1の入れ替え
CAP_IMAGE_SIZE[0][1], CAP_IMAGE_SIZE[0][0]
//異なる要素から選択
CAP_IMAGE_SIZE[4][0], CAP_IMAGE_SIZE[1][1]
Sotaサポートです。
画像サイズは任意の数値による指定は不可能となり、設定方法は下記の2通りとなります。
①定数の利用
https://sota.vstone.co.jp/sota/javadoc/jp/vstone/camera/CameraCapture.html
上記ページ内の「CAP_IMAGE_SIZE_5Mpixel」から「CAP_IMAGE_SIZE_XGA」までの10通りから選択可能となります。
【例】キャプチャサイズをXGAで設定
cam.initStill(new CameraCapture(CameraCapture.CAP_IMAGE_SIZE_XGA, CameraCapture.CAP_FORMAT_MJPG));
②使用可能なキャプチャ画像サイズのリストから選択
画像サイズのリストは以下になります。
public static final int[][] CAP_IMAGE_SIZE = new int[][]{
{320 , 240},
{640 , 480},
{800 , 600},
{1024 , 768},
{1280 , 720},
{1280 , 1024},
{1600 , 1200},
{1920 , 1080},
{2048 , 1536},
{2592 , 1944}
}
上記より、10通りの画像サイズの指定が可能となります。
(実質的には①と同じ組み合わせとなります)
【例】キャプチャサイズを1280x1024で設定
cam.initStill(new CameraCapture(CAP_IMAGE_SIZE[5][0], CAP_IMAGE_SIZE[5][1], CameraCapture.CAP_FORMAT_MJPG));
このとき、下記のような組み合わせは指定できない仕様となっております、あらかじめご了承ください。
//0と1の入れ替え
CAP_IMAGE_SIZE[0][1], CAP_IMAGE_SIZE[0][0]
//異なる要素から選択
CAP_IMAGE_SIZE[4][0], CAP_IMAGE_SIZE[1][1]
この質問に回答する