diff --git a/ProyectoAndroid/ChessTrack/src/uy/edu/fing/chesstrack/modulovision/imgproc/BackgroundSupress.java b/ProyectoAndroid/ChessTrack/src/uy/edu/fing/chesstrack/modulovision/imgproc/DetectorOclusion.java similarity index 82% rename from ProyectoAndroid/ChessTrack/src/uy/edu/fing/chesstrack/modulovision/imgproc/BackgroundSupress.java rename to ProyectoAndroid/ChessTrack/src/uy/edu/fing/chesstrack/modulovision/imgproc/DetectorOclusion.java index 8220e2207450b4eef469a20e51f3bdb28ca094ce..011941035b0701f50d0f03bd611eca123efb1c65 100644 --- a/ProyectoAndroid/ChessTrack/src/uy/edu/fing/chesstrack/modulovision/imgproc/BackgroundSupress.java +++ b/ProyectoAndroid/ChessTrack/src/uy/edu/fing/chesstrack/modulovision/imgproc/DetectorOclusion.java @@ -3,23 +3,16 @@ package uy.edu.fing.chesstrack.modulovision.imgproc; import org.opencv.core.Core; import org.opencv.core.CvType; import org.opencv.core.Mat; -import org.opencv.core.MatOfPoint; import org.opencv.core.Point; -import org.opencv.core.Rect; import org.opencv.core.Scalar; import org.opencv.core.Size; -import org.opencv.video.BackgroundSubtractorMOG2; import org.opencv.imgproc.*; +import org.opencv.video.BackgroundSubtractorMOG2; -import uy.edu.fing.chesstrack.ChessTrackActivity; -import uy.edu.fing.chesstrack.modulomodelador.Modelador; -import uy.edu.fing.chesstrack.modulovision.Calibracion; -import uy.edu.fing.chesstrack.modulovision.Manager; -import android.graphics.SumPathEffect; import android.util.Log; -public class BackgroundSupress implements ImgProcInterface { +public class DetectorOclusion { private static final String TAG = "CHESSTRACK::BackgroundSupress"; private static final int OCLUSION = 1; @@ -30,12 +23,11 @@ public class BackgroundSupress implements ImgProcInterface { private Mat _fgMaskMOG2; private BackgroundSubtractorMOG2 _pMOG2; private final Mat _morphKernel; - //private Client _communicator; private int _estadoANTERIOR; private int _estadoACTUAL; //private final List<MatOfPoint> contours; - public BackgroundSupress() { + public DetectorOclusion() { super(); Log.i(TAG, "constructor INI"); @@ -50,17 +42,16 @@ public class BackgroundSupress implements ImgProcInterface { Log.i(TAG, "constructor FIN"); } - @Override public Mat procesarImagen(Mat inputFrame) { - Log.i(TAG, "procesar "); + Log.i(TAG, "Procesar!"); - Mat ret = Mat.zeros(Calibracion.getInstance().get_sizeFrame(), CvType.CV_8UC4); - Rect roi = Calibracion.getRectROI(); - Log.i(TAG, "ROI" + roi.size()); + //Mat ret = Mat.zeros(Calibracion.getInstance().get_sizeFrame(), CvType.CV_8UC4); + //Rect roi = Calibracion.getRectROI(); + Log.i(TAG, "Region SIZE=" + inputFrame.size()); - Mat region = ret.submat(roi); + //Mat region = ret.submat(roi); - Mat working = inputFrame.submat(roi); + //Mat working = inputFrame.submat(roi); // Mat copy = new Mat(submat.size(),CvType.CV_8UC3);; // submat.convertTo(copy, CvType.CV_8UC3); @@ -69,8 +60,8 @@ public class BackgroundSupress implements ImgProcInterface { //inputFrame.convertTo(copy, CvType.CV_8UC3); //Imgproc.cvtColor(inputFrame, copy, Imgproc.COLOR_BGRA2BGR); - _pMOG2.apply(working, _fgMaskMOG2); - Log.i(TAG, "Apply pMOG2" + _fgMaskMOG2.size()); + _pMOG2.apply(inputFrame, _fgMaskMOG2); + //Log.i(TAG, "Apply pMOG2" + _fgMaskMOG2.size()); Imgproc.erode(_fgMaskMOG2, _fgMaskMOG2, _morphKernel); Log.i(TAG, "Apply erode"); @@ -89,7 +80,6 @@ public class BackgroundSupress implements ImgProcInterface { Log.i(TAG, "MANO !!!"); _estadoACTUAL = OCLUSION; - //_communicator.SendData("OCLUSION\n"); Core.putText(_fgMaskMOG2, "MANO !!!", new Point(20, 20),Core.FONT_HERSHEY_SIMPLEX, 0.8 , new Scalar(255,255,0)); } else { @@ -102,7 +92,7 @@ public class BackgroundSupress implements ImgProcInterface { Core.putText(_fgMaskMOG2, "ESTABLE !!!", new Point(20, 20),Core.FONT_HERSHEY_SIMPLEX, 0.8 , new Scalar(255,255,0)); _estadoACTUAL = ESTABLE; _pMOG2 = new BackgroundSubtractorMOG2(); //MOG2 approach - Manager.set_estado(ESTABLE); + //Manager.set_estado(ESTABLE); } //_communicator.SendData("ESTABLE\n"); @@ -145,8 +135,9 @@ public class BackgroundSupress implements ImgProcInterface { contours.clear();*/ Log.i(TAG, "END"); + Mat region = new Mat(); Imgproc.cvtColor(_fgMaskMOG2, region, Imgproc.COLOR_GRAY2RGBA,4); - return ret; + return region; } }