をとyを返します。その特定の部分からの水平線の位置。これを達成するために、私はOpenCVライブラリを使用しています。 CV :: HoughLinesはで失敗「OpenCVのエラー:アサーションに失敗しました。」私はキャニーエッジ検出とハフ画像に変換ん(ARCを使用して)iOS用アプリの作成プロセスにいるよ
キャニーエッジ検出
を行うのは十分に簡単だったが、厄介なエラー「アサーションが失敗した」でcv::HoughLines
方法は、毎回失敗します。ここで私がしようとしてるかのコードスニペットです:
cv::cvtColor(myImage, inputImage, cv::COLOR_RGB2GRAY);
cv::Canny(inputImage, outputImage, 200, 600);
cv::Vec2f lines; // short for 'Vec<float, 2>'
cv::HoughLines(outputImage, lines, 1, CV_PI/180, 100);
を最初は、私はVec2fが正しかったかどうかわからなかったので、私はまた、代わりにcv::Mat
としてlines
を定義しようとした...しかし、その後、cv::HoughLines
すべてのデータを返すことはありません。少なくともチェックしないでください。cv::countNonZero(lines)
iOSとObjective-C(そしてCベースのコード化のバックグラウンドが比較的新しい)から、訂正やヒントをいただければ幸いです。
自分を助け、完全なエラーMSGを貼り付けます。私は '行' のVec2fを使用して取得し、完全な誤り@karlphillip – karlphillip
が 'OpenCVのエラーです:アサーションが失敗した(K == STD_VECTOR_MAT)のリリースでは、ファイル/ユーザ/ロビン/プロジェクト/ OpenCVForiPhone/OpenCVの/ OpenCVの/モジュール/コア/ SRC /matrix.cppは、ライン1369' – RobW