대학 프로젝트 용 Android 용 수작업 알고리즘 포트를 만들고 있습니다. 알게. 주로 OpenCV 기능을 사용합니다. 솔직히 나는 그 녀석이 정말로 무엇인지 이해하지 못한다. 하지만 이건 내 문제가 아니야. 그래서 alg를 포팅합니다. 작업중인 Windows Visual Studio 프로젝트의 모든 파일을 안드로이드 프로젝트에 추가하여 여기저기서 일부 컴파일러 경고 및 오류를 수정했습니다. 주로 성공과 함께 ... 불행히도 여러 시간 동안 나를 걱정하는 파일이 있습니다. 이 파일을 컴파일 는 다음과 같은 오류가 발생합니다 :신비한 "정의되지 않은 참조"링커 오류
./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 헤더를 포함하여 프로젝트에 다른 파일들이 잘 컴파일되어 있습니다. 아무도 나에게 이것을 설명 할 수 있 었는가? 다른 구현이 파일 위임하는 경우 -lopencv_legacy
에서와 같이 compat.o
오브젝트 파일 당기는 결국 것처럼
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 버전의 CV를 사용하고 있지 않은 것 같습니다. 이 질문을 C + ° + 태그로 시도하십시오. – Snicolas
이 프로젝트는 작동하는 OpenCV 샘플 프로젝트를 기반으로하기 때문에 나는 그렇게 생각하지 않습니다. – crizztus
문제가되는 줄 주위에 좀 더 코드를 게시 할 수 있습니까? –