2016-07-20 14 views
0

ベクトル< Point2d>をMatに変換するにはどうすればよいですか?ポイント2dをMatに変換する

 Mat newImg = Mat(ImagePoints); 
    imwrite("E:/softwares/1.8.0.71/bin/newImg.png", newImg); 

imWrite()はチャンネル1または3または4のみを受け付け、イメージポイントは2チャンネルであるため、これは機能しません。型キャストについて

いけないの心配:私はここでOpenCVのバージョン3.

+1

あなたは何を期待していますか、そして/またはなぜあなたはimwriteしたいですか? – Micka

+0

イメージをディスクに保存します。これを行うための他の方法はありますか? – MThomas

+0

はcv :: FileStorage – Micka

答えて

0

を使用しています

が答えです。整数をdoubleで使用する。しかし、これは単にソリューションの要点を与えることです。

std::vector< cv::Point2d> points; 

for(int i =0; i < 10; i++) 
{ 
    points.push_back(cv::Point2d(i,i)); 
} 

cv::Mat_<cv::Point2d> matrix(points); 

std::cout<<matrix.at<cv::Point2d>(1); 

しかし、このマットを保存したい場合は、XMLを使用してください。 Imwriteはマットを書いてはいけません。

関連する問題