问题描述
我是openCV的新手,正在尝试创建一个项目来检测ArUCO标记。
我能够获得弯道的价值
D/corner: `[Mat [ 1*4*CV_32FC2,isCont=true,isSubmat=false,nativeObj=0x738f9d4c40,dataAddr=0x73ab9ba540 ]]`
但是当我调用Aruco.drawDetectedMarkers(rgb,corners)方法时,什么都没有发生。 以下是我正在使用的逻辑
public Mat onCameraFrame(CameraBridgeViewBase.CvCameraViewFrame inputFrame) {
Mat rgba = inputFrame.rgba();
Mat gray = new Mat();
Mat rgb = new Mat();
Imgproc.cvtColor(rgba,gray,Imgproc.COLOR_RGBA2GRAY);
Dictionary dictionary = Aruco.getPredefinedDictionary(Aruco.DICT_4X4_50);
Mat ids = new Mat();
List<Mat> corners = new ArrayList<>();
Aruco.detectMarkers(gray,dictionary,corners,ids);
Log.d("corner list",corners.toString());
Imgproc.cvtColor(rgba,rgb,Imgproc.COLOR_RGBA2RGB);
if (!corners.isEmpty())
{
Log.d("corners_entered",ids.toString());
Aruco.drawDetectedMarkers(rgb,corners);
}
else{
Log.d("corners_entered","false");
}
return rgb;
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)