我正在android设备上实时检测一些对象,然后对布局本身进行截图以获取imageview中的边界框。现在,我需要在新的imageview中基于边界框样式创建矩阵或网格结构。任何帮助将不胜感激。
建立一个张量流模型来检测对象,然后使模型在android设备中运行。 android中的应用程序现在可以检测到对象,然后单击按钮即可获取布局的屏幕快照,并在图像视图中提供边框。现在,我需要从边界框的屏幕截图中得出可编辑的矩阵结构。在下面,我分享了用于截屏的代码,这些代码存储在一个类中,然后在android studio的主要活动中调用。
在此处输入代码。
公共类ScreenshotWorker
public static Bitmap bitmap;
public static Bitmap getScreenShot(View view) {
View screenView = view.getRootView();
screenView.setDrawingCacheEnabled(true);
Bitmap bitmap = Bitmap.createBitmap(screenView.getDrawingCache());
screenView.setDrawingCacheEnabled(false);
return bitmap;
}
public static Bitmap takeScreenshot(View v) {
Bitmap screenshot = null;
try {
int width = v.getMeasuredWidth();
int height = v.getMeasuredHeight();
screenshot = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);
Canvas c = new Canvas(screenshot);
v.layout(0, 0, v.getLayoutParams().width, v.getLayoutParams().height);
v.draw(c);
} catch (Exception e) {
e.printStackTrace();
}
return screenshot;
}
}
预期结果是基于边界框的动态矩阵或网格结构(根据位置和数字始终是动态的)
链接到图像(应用程序的屏幕截图)在下面