convertTo() org.opencv.core.Mat এর পদ্ধতি ক্লাস একটি চিত্রের বৈসাদৃশ্য এবং উজ্জ্বলতা পরিবর্তন করতে প্রদত্ত ম্যাট্রিক্সে প্রয়োজনীয় গণনা করে। এই পদ্ধতিটি 4টি পরামিতি গ্রহণ করে −
-
মাদুর − উৎস ম্যাট্রিক্সের মতো একই আকার এবং টাইপ সহ ফলাফল ধরে রাখতে খালি ম্যাট্রিক্স।
-
টাইপ - আউটপুট ম্যাট্রিক্সের ধরন নির্দিষ্ট করে পূর্ণসংখ্যার মান। যদি এই মানটি ঋণাত্মক হয়, তাহলে ধরনটি উৎসের মতোই হবে৷
৷ -
আলফা − লাভ মান, যা অবশ্যই 0-এর বেশি হতে হবে (ডিফল্ট মান 1)।
-
বিটা − বায়াস মান (ডিফল্ট মান 0)।
OpenCV Java লাইব্রেরি ব্যবহার করে একটি ছবির উজ্জ্বলতা পরিবর্তন করা
যেমন উল্লেখ করা হয়েছে যে এই পদ্ধতিতে পাস করা বিটা মান অ্যানিমেজের উজ্জ্বলতা পরিবর্তন করে, যদি এই প্যারামিটারের জন্য নির্বাচিত মানটি একটি নেতিবাচক মান (0 থেকে -255) হয় তবে ছবির উজ্জ্বলতা হ্রাস পাবে। একইভাবে, এটি 0 (0 থেকে 255) এর বেশি হলে ছবির উজ্জ্বলতা বৃদ্ধি পায়৷
একটি চিত্রের বৈসাদৃশ্য পরিবর্তন করতে convertTo()কে আহ্বান করে খালি ম্যাট্রিক্স পাস করার পদ্ধতি, -1 (একই টাইপ পেতে), 1 আলফা মান হিসাবে এবং, উজ্জ্বলতা বাড়াতে বা কমাতে বিটা মান।
উদাহরণ
import org.opencv.core.Core; import org.opencv.core.Mat; import org.opencv.imgcodecs.Imgcodecs; public class AlteringBrightness { public static void main (String[] args) { //Loading the OpenCV core library System.loadLibrary( Core.NATIVE_LIBRARY_NAME ); //Reading the Image from the file String file ="D:\\Images\\tiger.jpg"; Mat src = Imgcodecs.imread(file, Imgcodecs.IMREAD_COLOR); //Creating an empty matrix Mat dest = new Mat(src.rows(), src.cols(), src.type()); //Increasing the brightness of an image src.convertTo(dest, -1, 1, 100); // Writing the image Imgcodecs.imwrite("D:\\Images\\altering_brightness_100.jpg", dest); } }
ইনপুট ছবি
৷
নিচে বিভিন্ন আলফা এর জন্য বিভিন্ন আউটপুট চিত্র রয়েছে মান −
α-মান:-100
α-মান:-50
α-মান:50
α-মান:100