補足を少し書いたのですが、フォーメーションが変わる際に使う検出方式をどうしていいのかが一番分かりません。 } 入力画像(640*480)に対して,   /* 省略 */

int main( int argc, char** argv ){ Vector SubVector(Vector v1, Vector v2); int YInView(float iny); せめてポインタだけでも・・ >cv::SaveImage 通常画像を射影変換して魚眼レンズで見たような画像に出来るので魚眼レンズの射影行列の逆行列で変換してやれば元の画像に戻るはずです     key = cvWaitKey( 1 ); #include

回答ありがとうございます! { 実際には、オフセットを考慮して点群座標を変換するか、特徴点を描画したい場合などでは、元の画像ではなく ROI で切り取った画像に対して描画を行います。 void ScrollToLeft(float jikiposx); cv::circle(rgb_img, ROI_TL + cv::Point2i(it->pt), 1, cv::Scalar(0, 0xff, 0), 2); cv::imshow("GRAY IMAGE", gray_img); {

(5)ウインドウ2に指文字を表示(ウインドウ1の手の形が「あ」なら、ウインドウ2に『あ』と表示) 左上(0,0)右下(640,480)や左上(0,0)右下(320,240)を矩形領域を指定すれば上手くいくのですが, //座標またはベクトルを記録する構造体

= N1 //タイマー関数

(見えにくい場合→http://www.dotup.org/uploda/www.dotup.org154142.jpg.html)

fopen(argv[1], "r"); {

> この関数では,8ビットシングルチャンネル,あるいは3チャンネル(チャンネルは ‘BGR’ の順番)画像のみを保存することができます struct Ball2D{ たとえば,

//球体を記録する構造体 >あれば参考にさせて頂きたいので載せてくれるならば助かります。 Point2D startpos, endpos; cv::imshow("RGB IMAGE", rgb_img); に肌色を検出する方法として Point2D lefttop;

サンプルプログラムは「アフィン変換」や、「射影変換」などで検索すれば出てくると思います  調べていませんがソースコードの公開はまだ無かったのでは無いかな? Vector Normalize(Vector in); よろしければ、アドバイスをください。 //--------------------------------------------------------- 色空間の変更(RGB→HSV) 大体このようにプログラムを作成してますが、恥ずかしながら(2)のあたりで詰まってます。。。 } extern Rect2D g_framerect;//画面領域(当たり判定)

float DotProduct(Vector v1, Vector v2); return 1;   char str[32]; 処理プログラムをおしえていただけませんか? cv::cvtColor(rgb_img, gray_img, CV_BGR2GRAY); //四角形を記録する構造体 NAが魚眼レンズ画像となるので、それにA^-1をかけると

新しいプリジェクト→Win32 コンソール アプリケーション(ソリューションのディレクトリを作成 チェック外す)→Windows アプリケーション(空のプロジェクト チェック外す)

というのが出ています。 youtu.be Open CVを使う機会があったので。 動体検知はおもしろいなあ。 import gab.opencv. //線を記録する構造体 return 0; #include //画像を表示する // Library : OpenCV for MS-Windows 1.0 >また,この関数は,アルファ透過をサポートしません.目的画像が4チャンネルである場合でも color[3] には,単に新たなピクセル値がコピーされるだけです.したがって,もし半透明な形状を描画したい場合は,それを別のバッファに描画してから画像とブレンドするとよいでしょう.

//ベクトル関数 1>my - エラー 2、警告 0 ↓こんな感じでやってます。

}else if( key == 'c'){ ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ (4)あらかじめ用意していた指文字のモデル画像と、矩形内の映像をテンプレートマッチング Point2D g_jikipos = {40, 400};//自キャラの座標 openCVを用いて、親指、小指、人差し指にそれぞれ赤、青、緑のキャップをしそれを抽出し、撮影した画像を使うパターンマッチング手法で手認識をしたいのですがパターンマッチング手法の手認識に関する方法の文献が少なくて困っています。 void DrawCircleInView(float x, float y, float r, int Color, int FillFlag); //当たり判定関数 #include "mymain.h"

      sprintf(str, "img_%04d.bmp", counter++); または3D Gameのライブラリを見ればまず載っているはずです frameImage = cvQueryFrame( capture ); Version 9.0.21022.8 RTM

これを普通に(って何が普通かと言う問題はあるけれど)直す アドバイス宜しくお願い致します., いつもお世話になっております. http://www.mmsp.nitech.ac.jp/plone/research/singlanguage/singlanguage 50音手話といって、50音ひらがなにそれぞれじゃんけんのように手の形が決まっているものがあるんですが、それを判別できるようにしたいです。そこで、指(親指、薬指、人差し指)にキャップをはめて、その赤青緑、各色部分の形というかフォーメーションが変わることを利用したいと思っています...。, 回答、本当にありがとうございました! という関数が必要なようです。, いつもお世話になっております.

void MyMain(void) { 初心者なのでわかりやすくお願いします, Microsoft Visual Studio 2008 > cv::LoadImage cv::Mat rgbimage_roi = rgb_img(RECT); struct Line2D{ OpenPoseはCVPR2017で発表された(その前にArXivにはありましたが)、深層学習を用いて姿勢推定を行うアルゴリズムで、最近注目がかなり高まっている姿勢推定手法です。論文は「Realtime …

Microsoft .NET Framework cv::FAST(grayimage_roi, corners, 10, true);

//自キャラのデータ openCVを用いて、親指、小指、人差し指にそれぞれ赤、青、緑のキャップをしそれを抽出し、撮影した画像を使うパターンマッチング手法で手認識をしたいのですがパターンマッチング手法の手認識に関する方法の文献が少なくて困っています。 Windows 7 //ウィンドウを破棄する

 プログラム IplImage *frameImage;//キャプチャ画像用IplImage void SetLine2DKatamuki(Line2D *in); // ここに処理を書く 先に出力結果です。 cvNamedWindow( windowNameCapture, CV_WINDOW_AUTOSIZE );

for ( int y = 0 ; y < dst_img->height ; y++ ) // ROI を通してグレイスケール画像に書き込む OpenCVに関する質問です.   int counter = 0; int *imgarray, int allframe, float fps); CMU-Perceptual-Computing-Lab/openpose, Tensorflow導入に向けたcuDNN環境構築(Windows 10) | 技術的特異点, GIGABYTE ビデオカード NVIDIA GeForce GTX 1080搭載 オーバークロック ゲーミングモデル GV-N1080G1 GAMING-8GD, C++でData Augmentationをやってみる(Random CropとFlip編), tensorflowで「Could not find ‘cudnn64_6.dll’」エラー, C++でData Augmentationで画像を回転させて学習画像を増やしてみる(Rotation編), Visual Studio 2015でOpenCV 3.4環境構築(Windows10). const float PIE = 3.1415926f; float VectorLengthSquare(Vector in); 下の画像だと赤い円を抽出したいのに、線も含めた輪郭が抽出されます。 #include "myhelper.h" 助言とても参考になりました。 Version 9.0.21022.8 RTM で使えば問題なく使えるのですが、デフォルトのウィザードを使った時の使い方を知っておきたいのです。 Visual C++ 2008 Express Edition // int key;//キー入力用の変数 画像を貼り付けときます FastFeatureDetectorやGoodFeaturesToTrackDetector等の特徴点検出器を入力画像の特定の部分に対して行うために,入力画像に対してROIを設定したのですが上手くいかない場合があって困っています. ---------------------------------------------------------------       break;

http://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&ved=0CDEQFjAA&url=http%3A%2F%2Fwww.furui.cs.titech.ac.jp%2Fpublication%2F2010%2FIS3-44.pdf&ei=rgvGUNzjKKzNmgXTxYCQCA&usg=AFQjCNHCh3iC92vyhJSUMkiT9Z8TaxxbgA&sig2=s-2rItQ7nCnTqEeHxujX5Q&cad=rja

下記のソースコードで // ROI による切り取り。 float x,y;

>あれば参考にさせて頂きたいので載せてくれるならば助かります。 を使いたいのですが、引数の型が_TCHAR*になっているため文字がそのまま使えません。

Windows10 Python 3.6.1 OpenCV 3.3.1. cv::Rect* roi = new cv::Rect(roi_x, roi_y, roi_w, roi_h);

Vector CreateVector(Vector in, float veclen);

Version 3.5 SP1

左上(0,0)右下(640,480)や左上(0,0)右下(320,240)を矩形領域を指定すれば上手くいくのですが, // FAST 頂点座標の保存用変数 のように_T()で囲ってしまえばいいですよ。, 魚眼レンズで撮影した画像って、ひずんでますよね。

この方向で調べながら研究をやっていきたいと思います。本当にありがとうございました!! //RGBA変換 や  プログラミング関係の質問はこちらの方が回答を集めやすいと思います。 src_img = cvLoadImage(src_imgfile,CV_LOAD_IMAGE_COLOR); cv::Mat grayimage_roi = gray_img(RECT); }, http://opencv.jp/opencv-2.1/c/drawing_functions.html (3)矩形内の映像を切り取り標準化 Point2D position; この認識方法は可能なのでしょうか?また、肌色検出はよく聞きますが赤青緑それぞれ検出するということは出来るのでしょうか?, 「画像 抽出」に関するQ&A: MACでJPEGのサムネイルの抽出方法はありますか? 画像データが欠損しているので普通に書き出しても, 「画像 手」に関するQ&A: 画像 手がコンプレックスの高1女子です。 見てわかる通り、全然白くもないし指は細いわけじゃないし, 「画像 ロボット」に関するQ&A: 見出しタグで画像を挟んだ場合のロボットの解釈. if ( key == 'q' ) { (10, 10, 630, 470)や(320, 240, 320, 240)の場合には,特徴点の位置がずれたり,全体的に縮小されたりします. (1)動画像中の肌色の部分だけウインドウ1に抽出・表示 Point2D PosInView(Point2D in); //グローバル変数 }; #include "myhelper.h"  mymain.cpp VC2005 では sprintf() に警告が出るかもしれませんので、 OpenCVは2.3で,言語はC++です. 新しいプリジェクト→Win32 コンソール アプリケーション(ソリューションのディレクトリを作成 チェック外す)→Windows アプリケーション(空のプロジェクト チェック外す)

前回まではopencvに同梱されているカスケード型の検出器を用いて、静止画および動画を使って顔検出を行いました。 今回は、yoloと呼ばれる物体検出法を用いた物体検出を行ってみたいと思います。 yoloとは  エラー内容 mymain.cpp というファイルに

---...続きを読む, オフセットは必ず必要です。ROIを指定する前の画像の全体のサイズと、本来の画像の左上から、ROIの左上の座標のオフセットは、locateROI メソッドで取得することができます。 1>C:\Documents and Settings\Owner\My Documents\Visual Studio 2008\Projects\my\Debug\my.exe : fatal error LNK1120: 外部参照 1 が未解決です

{ 参考URL:http://oshiete.goo.ne.jp/category/250/, C/C++ >出来れば、手話認識・指文字認識・ジェスチャ認識などのソースプログラムなどが アルファチャンネルに対応した別のライブラリを使うなどの工夫が必要です。, http://opencv.jp/opencv-2.1/c/drawing_functions.html

bool HitTestLineAndLine(Line2D line1, Line2D line2); ---------------------------------------------------------------- (2)任意の位置の手の周囲に矩形で線を描画 #include "mymain.h" int main( int argc, char** argv ){ →色相を「肌色に近い」と「肌色から遠い」に分けて2値化 rgb_img.rows * 0.5, rgb_img.cols * 0.5);  mymain.h  「OpenCV」について知っている回答者は見ている限りでは少ないですし、画像認識になると回答ができる人が限定的になるので、しばらくの間は待つしか無いですね。 動作環境

//カメラを初期化する //構造体宣言 // okwave01.cpp : コンソール アプリケーションのエントリ ポイントを定義します。 リテラル文字列を文字セットに対応させるマクロがあります。

 mymain.cpp FastFeatureDetectorやGoodFeaturesToTrackDetector等の特徴点検出器を入力画像の特定の部分に対して行うために,入力画像に対してROIを設定したのですが上手くいかない場合があって困っています. printf("%s\n", argv[1]); ----------------------------------------------------------------       cvSaveImage(str, frameImage ); http://opencv.jp/opencv-2.1/c/reading_and_writing_images_and_video.html // 概要 : カメラからの入力画像をそのまま表示

const cv::Point ROI_TL(rgb_img.rows * 0.25, rgb_img.cols * 0.25); #include "DxLib.h" void ScrollToRight(float jikiposx);  「OpenCV」について知っている回答者は見ている限りでは少ないですし、画像認識になると回答ができる人が限定的になるので、しばらくの間は待つしか無いですね。 rgb_img.rows * 0.25, rgb_img.cols * 0.25, http://oshiete.goo.ne.jp/category/250/ CvCapture *capture;//カメラキャプチャ用の構造体 void ScrollToDown(float jikiposy);

std::vector corners;       // 以下二行追加、修正 Vector AddVectorInFrameTime(Vector pos, Vector speed); dst_img->imageData[dst_img->widthStep * y + x * 4 + 3] = -255; 入力画像(640*480)に対して, ---------------------------------------------------------------- 1>myhelper.obj : error LNK2019: 未解決の外部シンボル "void __cdecl MyMain(void)" (?MyMain@@YAXXZ) が関数 _WinMain@16 で参照されました 手の動きを検出したいとします。 手の位置(x,y,x) 検出する。 OpenNiを使用することは、あなたが手にとって1つのノードを持っているので大変です ; ジェスチャーを実行し、ジェスチャー中に手の位置をすべて収集します。 位置のリストはHMMを訓練する。 extern Point2D g_current_field_pos;//現在の左上座標 >出来れば、手話認識・指文字認識・ジェスチャ認識などのソースプログラムなどが // 中心 だけを切り取る ROI を作成。

http://oshiete.goo.ne.jp/category/250/

cvReleaseCapture( &capture ); →各種処理 for ( int x = 0 ; x < dst_img->width ; x++ )  これだけではあんまりなので、とりあえず検索結果でも。 11,11,1,64,64,g_jikiimage) == -1) return -1; float width;     } else if( key == 'c'){ void DrawLineInView(float x1, float y1, float x2, float y2, int Color, int Thickness);

//カメラが見つからなかった場合 int LoadFiles(){ float height; 前回まで、OpenCVでボールを認識させるプログラムを書きました。 今度はボールの軌道を描画します。 環境・バージョン. なるべく簡単なものから作成するつもりなので、まずは固定カメラで、黒い背景に手だけ映しながら手を検出させています。

//定数宣言

 myhelper.h(サンプルなので打ちミスはない) OpenCVに関する質問です.

int main(int argc...続きを読む, VC++2010での、通常の ---------------------------------------------------------------     } 参考まで。 Vector RotateVector(Vector in, float radian); たとえば, Version 3.5 SP1  ここのURLからPDFファイルをダウンロードできます。参考にできると思います。 よろしくお願いします。, 私は現在、webカメラを使用し、動画像中の手形をリアルタイムで検出して、その手形に近い指文字を判別して、「あ」の形なら『あ』といった様に順次表示していくといったプログラムを作成しています。 ---------------------------------------------------------------- できれば、教科書的なものでなく、サンプルプログラムがあれば

void DrawLine2D(Line2D in, int Color, int Thickness); void MyMain(); printf( "カメラが見つかりません\n" ); うれしいんですが・・・ Microsoft .NET Framework int main(int argc, char *argv[]) #include "stdafx.h"

//ウィンドウを生成する 出来れば、手話認識・指文字認識・ジェスチャ認識などのソースプログラムなどがあれば参考にさせて頂きたいので載せてくれるならば助かります。 cvShowImage( windowNameCapture, frameImage ); if(LoadDivGraph("media\\player01.bmp", break;  そこで、あらかじめ撮影した写真と照合する方法が簡単なのではないかと思ってやっているところですが、これで出来るのかも分かりません...。ちなみに、使う画像はリアルタイム処理ではなく、入力する際は一度ウェブカメラで撮影した静止画で処理しようとしています。, ホームセキュリティのプロが、家庭の防犯対策を真剣に考える 2組のご夫婦へ実際の防犯対策術をご紹介!どうすれば家と家族を守れるのかを教えます!, 私は現在、webカメラを使用し、動画像中の手形をリアルタイムで検出して、その手形に近い指文字を判別して、「あ」の形なら『あ』といった様に順次表示していくといったプログラムを作成しています。

void DrawAnimation(float x, float y, double ExtRate, double Angle,int TurnFlag, お願いします。, 代数幾何の射影変換で多分出来ると思います //カメラからの入力画像1フレームをframeImageに格納する ---------------------------------------------------------------- (5)ウインドウ2に指文字を表示(ウインドウ1の手の形が「...続きを読む, C/C++ _T(__FILE__) if ( ( capture = cvCreateCameraCapture( -1 ) ) == NULL ) { // okwave01.cpp : コンソール アプリケーションのエントリ ポイントを定義します。 openCVを用いて、親指、小指、人差し指にそれぞれ赤、青、緑のキャップをしそれを抽出し、撮影した画像を使うパターンマッチング手法で手認識をしたいのですがパターンマッチング手法の手認識に関する方法の文献が少なくて困っています。 return 0; // オフセットを考慮して直接RGB画像に書き込む //'q'キーが入力されたらループを抜ける //画像ファイル読み込み typedef Vector Point2D; #include

> 現在の実装では,アルファチャンネルがもしあったとしても,出力画像からは取...続きを読む, OpenCVを使用してある物体だけの輪郭を抽出したいです。 Vector AddVector(Vector v1, Vector v2); //------------------------------------------------...続きを読む, OpenCV というよりも単に文字列の問題ですよね? (0, 0, 640, 480)や(0, 0, 320, 240)の場合は上手くいくのですが, http://opencv.jp/opencv-2.1/c/reading_and_writing_images_and_video.html extern float g_frametime; cv::Mat rgb_img = cv::imread(FILE_PATH); //キャプチャを解放する bool HitTestBallAndBall(Ball2D a, Ball2D b); //ライブラリ関数 void SetSimpleTimer(int idx, int time); void DrawBall2D(Ball2D in, int Color, int Fill); ToFカメラによる3D手話認識 Sign Language ... - 東京工業大学 (4)あらかじめ用意していた指文字のモデル画像と、矩形内の映像をテンプレートマッチング 今考えている方法としては、

問題があれば sprintf_s() などを使って下さい。, Microsoft Visual Studio 2008 //メインループ

} // 画像読み込み bool IsPointAtLineFace(Line2D linein, Point2D ptin);

(roi_x, roi_y, roi_w, roi_y)が 言語は、C以上の高級言語ならたいていわかるので 実際には、オフセットを考慮して点群座標を変換するか、特徴点を描画したい場合などでは、元の画像ではなく ROI で切り取った画像に対して描画を行います。 }

赤を抽出するなら、同様にできるのではないでしょうか, ※各種外部サービスのアカウントをお持ちの方はこちらから簡単に登録できます。 Point2D rightbottom; #include Vector speed;//移動している場合は速度をセット cv::Mat gray_img; のウィザードを使って、arvg[1]やargv[2]に引数を与えて、本体内で通常のCで使う 左上(10,10)右下(640,480)や左上(320,240)右下(640,480)だと,結果がズレてしまいます. #include "stdafx.h" ---------------------------------------------------------------- (1)動画像中の肌色の部分だけウインドウ1に抽出・表示 cvDestroyWindow( windowNameCapture );