大学のプロジェクトのために私はAndroidのハンドリングアルゴリズムのポートをやっています。アルグ。主にOpenCV関数を使用します。正直なところ、私は本当にその仲間が何かを理解していない。これは私の問題ではありません。 したがって、algを移植します。私は作業中のWindowsのビジュアルスタジオプロジェクトからアンドロイドプロジェクトにすべてのファイルを追加し、いくつかのコンパイラの警告とエラーをこことそこで修正しました。主に成功しました... 不幸なことに、何時間も心配しているファイルが1つあります。このファイルをコンパイルする は、次のエラーをスローします:不思議な "未定義のリファレンス"リンカのエラー
./obj/local/armeabi-v7a/libopencv_legacy.a(compat.o): In function `cvFindChessBoardCornerGuesses':
compat.cpp:(.text.cvFindChessBoardCornerGuesses+0x18): undefined reference to `cvFindChessboardCorners'
./obj/local/armeabi-v7a/libopencv_legacy.a(compat.o): In function `cvHoughLines':
compat.cpp:(.text.cvHoughLines+0x46): undefined reference to `cvHoughLines2'
./obj/local/armeabi-v7a/libopencv_legacy.a(compat.o): In function `cvHoughLinesSDiv':
compat.cpp:(.text.cvHoughLinesSDiv+0x54): undefined reference to `cvHoughLines2'
./obj/local/armeabi-v7a/libopencv_legacy.a(compat.o): In function `cvHoughLinesP':
compat.cpp:(.text.cvHoughLinesP+0x52): undefined reference to `cvHoughLines2'
./obj/local/armeabi-v7a/libopencv_legacy.a(compat.o): In function `cvCalcEMD':
compat.cpp:(.text.cvCalcEMD+0x44): undefined reference to `cvCalcEMD2'
collect2: ld returned 1 exit status
それについて面白いことに、このエラーの原因となるだけの行が
nPointsConnected ++;
は、この行をコメントやnPointsConnectedをデクリメントまたは= 1 nPointsConnectedのような値を設定することであるということですリンカーのエラーが消えます。
プロジェクトには、同じOpenCVヘッダーがコンパイルされているなど、他のファイルがあります。 誰でもこのことを私に説明できますか? ...
EDIT これはサラウンドコードでください:
if (minK > FINGERTIP_ANGLE_THRESHOLD && minDir > 0)
{
nPointsGap = 0;
if (nPointsConnected == 0)
{
startIndex = i;
}
nPointsConnected ++;
if (minAngle < minK)
{
minAngle = minK;
minPointIndex = i;
}
fConnected = true;
mediumIndex += (minK * i);
meanPointX += (minK * contour[i].x);
meanPointY += (minK * contour[i].y);
sumAngle += minK;
if (fScreenshot)
{
cvCircle(pScreenshot_curvature, cvPoint(contour[i].x*2, contour[i].y*2),
4, CV_RGB(255,255,0), -1, 8, 0);
cvCircle(pScreenshot_ellipse, cvPoint(contour[i].x*2, contour[i].y*2),
4, CV_RGB(255,255,0), -1, 8, 0);
}
}
あなたは正しいバージョンのCVを使っていないと思います。この質問をC +°+タグで試してください。 – Snicolas
このプロジェクトは、実際のOpenCVサンプルプロジェクトに基づいているため、私はそうは思わないです。 – crizztus
あなたのコードを問題のある行の周りに少しでも投稿できますか? –