Computer >> 컴퓨터 >  >> 프로그램 작성 >> Java

Java OpenCV를 사용하여 두 이미지에서 Bitwise OR 연산을 수행하는 방법은 무엇입니까?


bitwise_or()를 사용하여 비트 단위 또는 두 이미지 사이를 계산할 수 있습니다. org.opencv.core.Core 메소드 수업.

이 방법은 세 개의 매트 원본, 대상 및 결과 행렬을 나타내는 개체는 원본 행렬의 각 요소에 대한 비트 분리를 계산하고 결과를 대상 행렬에 저장합니다.

예시

다음 Java 예제에서는 이미지를 이진 및 회색조로 변환하고 결과의 비트 분리를 계산합니다.

import org.opencv.core.Core;
import org.opencv.core.Mat;
import org.opencv.highgui.HighGui;
import org.opencv.imgcodecs.Imgcodecs;
import org.opencv.imgproc.Imgproc;
public class BitwiseORExample {
   public static void main(String args[]) throws Exception {
      //Loading the OpenCV core library
      System.loadLibrary( Core.NATIVE_LIBRARY_NAME );
      //Reading the Image
      String file ="D://images//elephant.jpg";
      Mat src = Imgcodecs.imread(file, Imgcodecs.IMREAD_GRAYSCALE );
      HighGui.imshow("Grayscale Image", src);
      //Creating an empty matrix to store the results
      Mat dst = new Mat(src.rows(), src.cols(), src.type());
      Mat threshold = new Mat(src.rows(), src.cols(), src.type());
      //Converting the gray scale image to binary image
      Imgproc.threshold(src, threshold, 100, 255, Imgproc.THRESH_BINARY_INV);
      HighGui.imshow("Binary Image", threshold);
      //Applying bitwise Or operation
      Core.bitwise_or(src, threshold, dst);
      HighGui.imshow("Bitwise OR operation", dst);
      HighGui.waitKey();
   }
}

입력 이미지

Java OpenCV를 사용하여 두 이미지에서 Bitwise OR 연산을 수행하는 방법은 무엇입니까?

출력

실행 시 위의 프로그램은 다음 창을 생성합니다. -

회색조 이미지 -

Java OpenCV를 사용하여 두 이미지에서 Bitwise OR 연산을 수행하는 방법은 무엇입니까?

이진 이미지 -

Java OpenCV를 사용하여 두 이미지에서 Bitwise OR 연산을 수행하는 방법은 무엇입니까?

비트 또는 -

Java OpenCV를 사용하여 두 이미지에서 Bitwise OR 연산을 수행하는 방법은 무엇입니까?