Computer >> Máy Tính >  >> Lập trình >> Java

Giải thích các phép toán hình thái Mũ chóp và Mũ đen trong Java.


Phép toán hình thái là tập hợp các phép toán xử lý hình ảnh theo các hình dạng cho trước.

  • Xói mòn - Xói mòn là một hoạt động hình thái học trong đó các pixel bị xóa khỏi ranh giới hình ảnh.

  • Độ giãn nở - Trong là một hoạt động hình thái học trong đó các pixel được thêm vào ranh giới hình ảnh.

  • Trong đó tổng số pixel được thêm / xóa phụ thuộc vào kích thước của phần tử cấu trúc được sử dụng.

  • Mở đầu về hình thái - Trong quá trình hoạt động này, xói mòn được áp dụng trên đầu vào đã cho và áp dụng độ giãn nở kết quả. Điều này được sử dụng để xóa các đối tượng nhỏ khỏi nền trước của hình ảnh.

  • Kết thúc hình thái - Trong quá trình hoạt động này, sự giãn nở được áp dụng trên đầu vào đã cho và sự xói mòn kết quả được áp dụng. Điều này được sử dụng để loại bỏ các đối tượng nhỏ trên hình ảnh.

Mũ trên cùng về hình thái là sự khác biệt giữa hình ảnh đã cho và phần mở đầu của nó.

Ví dụ

import org.opencv.core.Core;
import org.opencv.core.CvType;
import org.opencv.core.Mat;
import org.opencv.highgui.HighGui;
import org.opencv.imgcodecs.Imgcodecs;
import org.opencv.imgproc.Imgproc;
public class TopHatExample {
   public static void main(String args[]) {
      //Loading the OpenCV core library
      System.loadLibrary( Core.NATIVE_LIBRARY_NAME );
      //Reading image data
      String file ="D:\\Images\\morph_input1.jpg";
      Mat src = Imgcodecs.imread(file);
      //Creating destination matrix
      Mat dst = new Mat(src.rows(), src.cols(), src.type());
      //Preparing the kernel matrix object
      Mat kernel = Mat.ones(5,5, CvType.CV_32F);
      //Applying dilate on the Image
      Imgproc.morphologyEx(src, dst, Imgproc.MORPH_TOPHAT, kernel);
      //Displaying the image
      HighGui.imshow("Blackhat Gradient", dst);
      HighGui.waitKey();
   }
}

Hình ảnh đầu vào

Giải thích các phép toán hình thái Mũ chóp và Mũ đen trong Java.

Đầu ra

Giải thích các phép toán hình thái Mũ chóp và Mũ đen trong Java.

Mũ đen hình thái học là sự khác biệt giữa hình ảnh đóng và hình ảnh đã cho.

Ví dụ

import org.opencv.core.Core;
import org.opencv.core.CvType;
import org.opencv.core.Mat;
import org.opencv.highgui.HighGui;
import org.opencv.imgcodecs.Imgcodecs;
import org.opencv.imgproc.Imgproc;
public class TopHatExample {
   public static void main(String args[]) {
      //Loading the OpenCV core library
      System.loadLibrary( Core.NATIVE_LIBRARY_NAME );
      //Reading image data
      String file ="D:\\Images\\morph_input1.jpg";
      Mat src = Imgcodecs.imread(file);
      //Creating destination matrix
      Mat dst = new Mat(src.rows(), src.cols(), src.type());
      //Preparing the kernel matrix object
      Mat kernel = Mat.ones(5,5, CvType.CV_32F);
      //Applying dilate on the Image
      Imgproc.morphologyEx(src, dst, Imgproc.MORPH_BLACKHAT, kernel);
      //Displaying the image
      HighGui.imshow("Blackhat Gradient", dst);
      HighGui.waitKey();
   }
}

Hình ảnh đầu vào

Giải thích các phép toán hình thái Mũ chóp và Mũ đen trong Java.

Đầu ra

Giải thích các phép toán hình thái Mũ chóp và Mũ đen trong Java.