কম্পিউটার টিউটোরিয়াল

জাভা ব্যবহার করে ওপেনসিভি Mat অবজেক্ট কীভাবে ঘোষণা করবেন?


ওপেনসিভিতে Mat ক্লাস একটি ম্যাট্রিক্স অবজেক্ট উপস্থাপন করে যা চিত্র সংরক্ষণ করতে ব্যবহৃত হয়। আপনি ম্যানুয়ালি একটি Mat অবজেক্টও ঘোষণা করতে পারেন:

  • ওপেনসিভি নেটিভ লাইব্রেরি লোড করুন - ওপেনসিভি লাইব্রেরি ব্যবহার করে জাভা কোড লিখতে সময় প্রথম ধাপ হল loadLibrary() ব্যবহার করে ওপেনসিভির নেটিভ লাইব্রেরি লোড করা।

  • Mat ক্লাস ইনস্ট্যানশিয়েট করুন - Mat ক্লাসটি ইনস্ট্যানশিয়েট করুন এই চ্যাপ্টারের আগের ফাংশনগুলো ব্যবহার করে।

  • ম্যাট্রিক্সে মান ভরুন মেথডগুলো ব্যবহার করে - আপনি একটি ম্যাট্রিক্সের নির্দিষ্ট সারি/কলাম row()/col() মেথডে ইনডেক্স ভ্যালু পাস করে রিট্রিভ করতে পারেন।

  • আপনি এইগুলোর মান setTo() মেথডের যেকোনো ভেরিয়েন্ট ব্যবহার করে সেট করতে পারেন।

উদাহরণ

import org.opencv.core.Core;
import org.opencv.core.Mat;
import org.opencv.core.CvType;
import org.opencv.core.Scalar;

public class CreatingMat {
    public static void main(String[] args) {
        // কোর লাইব্রেরি লোড করা
        System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
        
        // একটি ম্যাট্রিক্স তৈরি
        Mat matrix = new Mat(5, 5, CvType.CV_8UC1, new Scalar(0));
        
        // মান যোগ করা
        Mat row0 = matrix.row(0);
        row0.setTo(new Scalar(1));
        Mat col3 = matrix.col(3);
        col3.setTo(new Scalar(3));
        
        // ম্যাট্রিক্স প্রিন্ট করা
        System.out.println("Matrix data:\n" + matrix.dump());
    }
}

আউটপুট

Matrix data:
[ 
    1, 1, 1, 3, 1;
    0, 0, 0, 3, 0;
    0, 0, 0, 3, 0;
    0, 0, 0, 3, 0;
    0, 0, 0, 3, 0
]

  1. জাভা ওপেনসিভি (OpenCV) ব্যবহার করে উপবৃত্ত আঁকার পদ্ধতি

  2. জাভা ওপেনসিভি (OpenCV) ব্যবহার করে রেখা আঁকার পদ্ধতি

  3. জাভা ওপেনসিভি লাইব্রেরি ব্যবহার করে চিত্র ফ্লিপ (Flip) করা

  4. জাভা ওপেনসিভি লাইব্রেরি ব্যবহার করে চিত্র লিখা/সংরক্ষণ