//初始化
if(!OpenCVLoader.initDebug())
{
Log.e(this.getClass().getSimpleName(), " OpenCVLoader.initDebug(), not working.");
} else
{
Log.d(this.getClass().getSimpleName(), " OpenCVLoader.initDebug(), working.");
}
OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION,this,mLoaderCallback);
//OpenCV类库加载并初始化成功后的回调函数,在此我们不进行任何操作
private BaseLoaderCallback mLoaderCallback = new BaseLoaderCallback(this) {
@Override
public void onManagerConnected(int status) {
switch (status) {
case LoaderCallbackInterface.SUCCESS: {
}
break;
default: {
super.onManagerConnected(status);
}
break;
}
}
};
Bitmap bit = BitmapFactory.decodeResource(getResources(), R.drawable.opensrc);
Mat mat1 = new Mat();
Mat mat2 = new Mat();
Mat mat11 = new Mat();
Mat mat22 = new Mat();
Utils.bitmapToMat(bm,mat1);
Utils.bitmapToMat(bit,mat2);
Imgproc.cvtColor(mat1,mat11,Imgproc.COLOR_BGR2GRAY);
Imgproc.cvtColor(mat2,mat22,Imgproc.COLOR_BGR2GRAY);
Double sameBm = comPareHist(mat11, mat22);
Log.i("sameBm",String.valueOf(sameBm));
public double comPareHist(Mat srcMat, Mat desMat) {
srcMat.convertTo(srcMat, CvType.CV_32F);
desMat.convertTo(desMat, CvType.CV_32F);
double target = Imgproc.compareHist(srcMat, desMat, Imgproc.CV_COMP_CORREL);
return target;
}