কন্টুরগুলি একটি নির্দিষ্ট আকৃতির সীমানা বরাবর সমস্ত বিন্দুকে যুক্ত করা রেখা ছাড়া আর কিছুই নয়৷ এটি ব্যবহার করে আপনি −
করতে পারেন-
একটি বস্তুর আকৃতি খুঁজুন।
-
একটি বস্তুর ক্ষেত্রফল গণনা করুন।
-
একটি বস্তু সনাক্ত করুন৷
৷ -
একটি বস্তু চিনুন।
আপনি findContours() ব্যবহার করে একটি চিত্রের বিভিন্ন আকার, বস্তুর কনট্যুর খুঁজে পেতে পারেন পদ্ধতি একই ভাবে আপনি আঁকতে পারেন
আপনি drawContours() ব্যবহার করে একটি ছবির পাওয়া কনট্যুর আঁকতে পারেন পদ্ধতি এই পদ্ধতি নিম্নলিখিত পরামিতি গ্রহণ করে −
-
ফলাফল চিত্র সংরক্ষণ করার জন্য একটি খালি ম্যাট অবজেক্ট।
-
কনট্যুর ধারণকারী একটি তালিকা বস্তু পাওয়া গেছে।
-
একটি পূর্ণসংখ্যার মান যা আঁকতে কনট্যুর নির্দিষ্ট করে (-ve এর সবগুলোকে আঁকার মান)।
-
কনট্যুরের রঙ নির্দিষ্ট করার জন্য একটি স্কেলার বস্তু।
-
কনট্যুরের বেধ নির্দিষ্ট করার জন্য একটি পূর্ণসংখ্যার মান।
উদাহরণ
import java.util.ArrayList; import java.util.List; import org.opencv.core.Core; import org.opencv.core.Mat; import org.opencv.core.MatOfPoint; import org.opencv.core.Point; import org.opencv.core.Scalar; import org.opencv.highgui.HighGui; import org.opencv.imgcodecs.Imgcodecs; import org.opencv.imgproc.Imgproc; public class DrawingContours { public static void main(String args[]) throws Exception { //Loading the OpenCV core library System.loadLibrary( Core.NATIVE_LIBRARY_NAME ); String file ="D:\\Images\\shapes.jpg"; Mat src = Imgcodecs.imread(file); //Converting the source image to binary Mat gray = new Mat(src.rows(), src.cols(), src.type()); Imgproc.cvtColor(src, gray, Imgproc.COLOR_BGR2GRAY); Mat binary = new Mat(src.rows(), src.cols(), src.type(), new Scalar(0)); Imgproc.threshold(gray, binary, 100, 255, Imgproc.THRESH_BINARY_INV); //Finding Contours List<MatOfPoint> contours = new ArrayList<>(); Mat hierarchey = new Mat(); Imgproc.findContours(binary, contours, hierarchey, Imgproc.RETR_TREE, Imgproc.CHAIN_APPROX_SIMPLE); //Drawing the Contours Scalar color = new Scalar(0, 0, 255); Imgproc.drawContours(src, contours, -1, color, 2, Imgproc.LINE_8, hierarchey, 2, new Point() ) ; HighGui.imshow("Drawing Contours", src); HighGui.waitKey(); } }
ইনপুট ছবি
আউটপুট
কার্যকর করার সময়, উপরের প্রোগ্রামটি নিম্নলিখিত উইন্ডোটি তৈরি করে -