0
나는 opencv4android에서 예제로 제공하는 15 개의 퍼즐 코드를 축소했습니다. 이제 단축 코드는 원래의 다큐멘터리 위치에서 잘 실행되지만, 다른 곳에서 설정된 helloworld 프로젝트에 복사 한 후 LogCool이 MainActivity의 NoClassFoundDefError를 지정하면 프로그램이 중단됩니다. manifest.xml을 살펴 보았지만 문제의 원인을 파악할 수는 없습니다. 나 좀 도와 줄 수있어? 고맙습니다!opencv4android 예제 15 퍼즐에 대해
아래는 내 코드입니다 :
1.puzzle15Activity
package org.opencv.samples.puzzle15;
import org.opencv.android.BaseLoaderCallback;
import org.opencv.android.LoaderCallbackInterface;
import org.opencv.android.OpenCVLoader;
import org.opencv.core.Mat;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import android.view.Window;
import android.text.method.*;
import android.widget.Toast;
import android.view.View;
import android.view.*;
public class puzzle15Activity extends Activity
{
SampleCvViewBase mView=null;
private BaseLoaderCallback mOpenCVCallBack = new BaseLoaderCallback(this)
{
@Override
public void onManagerConnected(int status) {
switch (status) {
case LoaderCallbackInterface.SUCCESS:
{
mView=new SampleCvViewBase(mAppContext);
setContentView(mView);
} break;
default:
{
super.onManagerConnected(status);
} break;
}
}
};
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_2_4_2,this,mOpenCVCallBack);
}
}
2.SampleCvViewBase
package org.opencv.samples.puzzle15;
import java.util.List;
import org.opencv.core.Mat;
import org.opencv.core.Size;
import org.opencv.highgui.VideoCapture;
import org.opencv.highgui.Highgui;
import org.opencv.core.Scalar;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.util.Log;
import android.view.SurfaceHolder;
import android.view.SurfaceView;
import org.opencv.core.*;
import org.opencv.calib3d.Calib3d;
class SampleCvViewBase extends SurfaceView implements SurfaceHolder.Callback, Runnable {
int t;
Scalar s=new Scalar(100,100,100,100);
Scalar s1=new Scalar(1);
Scalar s2=new Scalar(100);
byte []t1={1,0,0,1};
int []t2={5,4,3,2};
int[] t3;
Mat mrgba;
Mat m1,m2,m3;
public int[] list={1,2,3};
@Override
public SampleCvViewBase(Context context) {
super(context);
mrgba=new Mat(4,4,CvType.CV_16S,s);
mrgba.create(4,4,CvType.CV_8UC(15));
m1=new Mat(2,2,CvType.CV_8U,s1);
m2=new Mat(2,2,CvType.CV_32S,s2);
m3=new Mat(2,2,CvType.CV_32S,s2);
m1.put(0,0,t1);
m2.put(0,0,t2);
t3=new int[4];
m2.get(0,0,t3);
t3[1]=200;
m2.put(0,0,t3);
m2.copyTo(m3);
}
public void surfaceChanged(SurfaceHolder _holder, int format, int width, int height) {
}
public void surfaceCreated(SurfaceHolder holder) {
}
public void surfaceDestroyed(SurfaceHolder holder) {
}
public void run() {}
}
고마워, 나 스스로 노력하고있어 ... 누군가가 나에게 완벽한 오픈 CC 설정 프레임을 제공 할 수 있을까? ... – Yiyangchen
나는 그걸 모르고있다. 다른 사람들도 그렇게 할 수 있습니다. –