2016-09-12 8 views
0

私は私のMac上のOpenCVをインストールするため、このガイドを使用していました:エラー - エラー:なしマッチング機能

make install 

http://www.pyimagesearch.com/2015/06/15/install-opencv-3-0-and-python-2-7-on-osx/

すべてが最後のステップまで働いていましたこのエラーメッセージが表示されたとき:

/Users/Nirzvi/opencv_contrib/modules/aruco/src/aruco.cpp:1629:12: error: no matching function for call to 'calibrateCamera' 
return calibrateCamera(processedObjectPoints, processedImagePoints, imageSize, _cameraMatrix, 
     ^~~~~~~~~~~~~~~ 

/Users/Nirzvi/opencv/modules/calib3d/include/opencv2/calib3d.hpp:844:21: note: candidate function not viable: requires at most 9 
    arguments, but 12 were provided 

CV_EXPORTS_W double calibrateCamera(InputArrayOfArrays objectPoints, 

インストールプロセスがすぐに停止し、初心者のプログラマであるため、私は次に何をすべきかわかりません。

+0

あなたは 'opencv'と' opencv_contrib'のバージョンタグを照合チェックアウトしましたか? –

答えて

1

this guideを使用している場合は、ホームフォルダにopencvとopencv-contribの両方を入れ子にするのではなく、クローンしてください。 ~/

上記のように、gitのopencvとopencv-contribの一致するバージョンをダウンロードしたことを確認してください。

最後に、cmakeコマンド "OPENCV_EXTRA_MODULES_PATH"が正しいバージョンの "opencv_contrib"の正しいパスを指していることを確認してください。正しいバージョンを適切なパスにプルするだけで、その値を更新しないと、間違ったバージョンのcontribを使用しようとします。

:以下が推奨されていません。絶対最後の手段として 、あなたは常にそれが(あなたの場合:/Users/Nirzvi/opencv_contrib/modules/aruco/src/aruco.cpp)にエラーが発生したのcppファイルに移動することができ、そして「calibrateCamera」コールとそのをコメントアウト周囲の機能。その機能は何でも使用することはできませんが、opencvには多大な機能があります。もしあなたのプロジェクトに必要なものがなければ、少なくともあなたのインストールプロセスであなたをさらに引き上げるでしょう。

0

ソース(opencv_contrib/modules/aruco/src/aruco.cpp L1583〜1585)によると、彼はcalibrateCameraを次のように呼び出します。第十パラメータに

return calibrateCamera(processedObjectPoints, processedImagePoints, imageSize, _cameraMatrix, _distCoeffs, _rvecs, _tvecs, _stdDeviationsIntrinsics, _stdDeviationsExtrinsics, _perViewErrors, flags, criteria);

が、8日(2016年6月7日)最近である(https://github.com/opencv/opencv/blame/master/modules/calib3d/src/calibration.cpp L3368〜3374を参照)機能を追加しました。

OpenCVのバージョンが3.1.0(2016-11-6の最新リリース)でも、パラメータの数が一致しないのはこのためです。

これらの2つを実行し、最新のバージョンを取得してください。

$ git clone https://github.com/Itseez/opencv.git

$ git clone https://github.com/Itseez/opencv_contrib.git