কম্পিউটার

জাভাতে টপ হ্যাট এবং ব্ল্যাক হ্যাট মর্ফোলজিক্যাল অপারেশন ব্যাখ্যা করুন।


মরফোলজিক্যাল অপারেশন হল অপারেশনের সেট যা প্রদত্ত আকার অনুযায়ী ছবিগুলিকে প্রক্রিয়া করে৷

  • ক্ষয় − ক্ষয় হল একটি রূপগত অপারেশন যার সময় ছবির সীমানা থেকে পিক্সেলগুলি সরানো হয়৷

  • প্রসারণ − চলাকালীন একটি রূপগত ক্রিয়াকলাপ যার সময় চিত্রের সীমানায় পিক্সেল যোগ করা হয়৷

  • যেখানে মোট পিক্সেল যোগ করা/সরানো হয়েছে তা নির্ভর করে ব্যবহৃত কাঠামোগত উপাদানের মাত্রার উপর।

  • মর্ফোলজিকাল খোলা − এই অপারেশন চলাকালীন প্রদত্ত ইনপুটে ক্ষয় প্রয়োগ করা হয় এবং ফলাফলের প্রসারণ প্রয়োগ করা হয়। এটি একটি চিত্রের অগ্রভাগ থেকে ছোট বস্তু অপসারণ করতে ব্যবহৃত হয়৷

  • মর্ফোলজিক্যাল ক্লোজিং − এই অপারেশন চলাকালীন প্রদত্ত ইনপুটে প্রসারণ প্রয়োগ করা হয় এবং ফলাফলে ক্ষয় প্রয়োগ করা হয়। এটি একটি চিত্রের ছোট বস্তু অপসারণ করতে ব্যবহৃত হয়৷

একটি রূপগত শীর্ষ হ্যাট প্রদত্ত চিত্র এবং এর খোলার মধ্যে একটি পার্থক্য।

উদাহরণ

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();
   }
}

ইনপুট ছবি

জাভাতে টপ হ্যাট এবং ব্ল্যাক হ্যাট মর্ফোলজিক্যাল অপারেশন ব্যাখ্যা করুন।

আউটপুট

জাভাতে টপ হ্যাট এবং ব্ল্যাক হ্যাট মর্ফোলজিক্যাল অপারেশন ব্যাখ্যা করুন।

একটি রূপগত কালো টুপি সমাপ্তি এবং প্রদত্ত চিত্রের মধ্যে একটি পার্থক্য৷

উদাহরণ

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();
   }
}

ইনপুট ছবি

জাভাতে টপ হ্যাট এবং ব্ল্যাক হ্যাট মর্ফোলজিক্যাল অপারেশন ব্যাখ্যা করুন।

আউটপুট

জাভাতে টপ হ্যাট এবং ব্ল্যাক হ্যাট মর্ফোলজিক্যাল অপারেশন ব্যাখ্যা করুন।


  1. ইমেজ প্রসেসিং/ওপেনসিভি ইমেজ ক্ষয় জাভা উদাহরণ।

  2. কীভাবে জাভা ওপেনসিভি লাইব্রেরি ব্যবহার করে একটি চিত্র ফ্লিপ করবেন?

  3. জাভা ওপেনসিভি লাইব্রেরি ব্যবহার করে কীভাবে একটি মিরর ইমেজ তৈরি করবেন?

  4. কিভাবে জাভা OpenCV লাইব্রেরি ব্যবহার করে একটি ছবি লিখতে হয়?