我正在使用OpenCV4Android版本3.0.0,我正在尝试从视频流中移除背景"非静态背景"。我想这样做,因为当我试图检测"卡的边缘时遇到问题,检测卡片边缘的问题"基于其颜色和背景颜色,如我的问题here中所述。
在参考了一些帖子后我编写了下面的代码,但是在运行时,当我显示" mask"图像我得到一个完全灰色的图像。当我显示"输出"应用"掩码后的图像"在它上面我在相机上显示相同的预览
有没有办法从视频流中删除非静态背景?
码:
mask = new Mat();
BackgroundSubtractorMOG2 mog2 = Video.createBackgroundSubtractorMOG2();
mog2.apply(mInputFrame,mask,.000005);
output = new Mat();
mInputFrame.copyTo(output, mask);
final Bitmap bitmap = Bitmap.createBitmap(mInputFrame.cols(), mInputFrame.rows(), Bitmap.Config.ARGB_8888);
Utils.matToBitmap(output, bitmap);
getActivity().runOnUiThread(new Runnable() {
@Override
public void run() {
mIVEdges.setImageBitmap(bitmap);
}
});