gpt4 book ai didi

android - 无法将图像加载到 Mat opencv

转载 作者:太空宇宙 更新时间:2023-11-03 21:36:20 25 4
gpt4 key购买 nike

我想在 android opencv 上使用 Mat 类加载图像,但我有一些错误。我在我的项目中添加了库。 我的代码: 私有(private) CameraBridgeViewBase mOpenCvCameraView;
private BaseLoaderCallback mLoaderCallback = new BaseLoaderCallback(this) { @覆盖 public void onManagerConnected(int status) { 切换(状态){ 案例 LoaderCallbackInterface.SUCCESS: { Log.i(TAG, "OpenCV 加载成功"); mOpenCvCameraView.enableView(); } 休息; 默认: { super.onManagerConnected(状态); } 休息; } } };

@Override
public void onResume()
{
super.onResume();
OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_2_4_6, this, mLoaderCallback);
}



@Override
public void onCreate(Bundle savedInstanceState) {
Log.i(TAG, "called onCreate");
super.onCreate(savedInstanceState);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
setContentView(R.layout.activity_main);
mOpenCvCameraView = (CameraBridgeViewBase) findViewById(R.id.HelloOpenCvView);
mOpenCvCameraView.setVisibility(SurfaceView.VISIBLE);
mOpenCvCameraView.setCvCameraViewListener(this);
if (!OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_2_4_9, this, mLoaderCallback))
{
Log.e(TAG, "Cannot connect to OpenCV Manager");
}
else
Log.i(TAG, "Load it");

Mat Image = Highgui.imread("/mnt/sdcard/1.jpg");

}

@Override
public void onPause()
{
super.onPause();
if (mOpenCvCameraView != null)
mOpenCvCameraView.disableView();
}

public void onDestroy() {
super.onDestroy();
if (mOpenCvCameraView != null)
mOpenCvCameraView.disableView();
}

public void onCameraViewStarted(int width, int height) {
}

public void onCameraViewStopped() {
}


public Mat onCameraFrame(CvCameraViewFrame inputFrame) {
return inputFrame.rgba();
}

日志:

enter image description here

谢谢

最佳答案

您不能在 onCreate() 中使用任何 opencv 代码

opencv 的 native 代码尚未加载,您必须等待,直到 mLoaderCallback 完成

因此,将 Mat 上的任何操作移至 onCameraViewStarted()

关于android - 无法将图像加载到 Mat opencv,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25639453/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com