Quantcast
Channel: OpenCV Q&A Forum - RSS feed
Viewing all articles
Browse latest Browse all 1117

How to display the detected color?

$
0
0
I made a program to detect colors, however the resulting image displays where the color was detected in white, I would like it to display the color detected. I tried Core.addWeighted and Core.bitwise_and but it did not work. Mat imgHVS, imgThresholded, resultado; Scalar sc1, sc2; JavaCameraView cameraView; public void Verde(View v) { sc1 = new Scalar(45, 20, 10); sc2 = new Scalar(75, 255, 255); irTelaCamera(); } public void Azul(View v) { sc1 = new Scalar(80, 50, 50); sc2 = new Scalar(100, 255, 255); irTelaCamera(); } public void Vermelho(View v) { sc1 = new Scalar(110, 50, 50); sc2 = new Scalar(130, 255, 255); irTelaCamera(); } public void irTelaCamera(){ setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); setContentView(R.layout.telacamera); cameraView = (JavaCameraView)findViewById(R.id.cameraview); cameraView.setCameraIndex(0); //0 para traseira e 1 para dianteira cameraView.setCvCameraViewListener(this); cameraView.enableView(); } @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } @Override protected void onPause() { super.onPause(); cameraView.disableView(); } @Override public void onCameraViewStarted(int width, int height) { imgHVS = new Mat(width,height, CvType.CV_16UC4); imgThresholded = new Mat(width,height, CvType.CV_16UC4); resultado = new Mat(width,height, CvType.CV_16UC4); } @Override public void onCameraViewStopped() { } @Override public Mat onCameraFrame(CameraBridgeViewBase.CvCameraViewFrame inputFrame) { Imgproc.cvtColor(inputFrame.rgba(), imgHVS,Imgproc.COLOR_BGR2HSV); Core.inRange(imgHVS, sc1, sc2, imgThresholded); Core.bitwise_and(imgThresholded, inputFrame.rgba(),resultado); return resultado; }

Viewing all articles
Browse latest Browse all 1117