Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

วิธีการวาดวงรีที่เติมใน OpenCV โดยใช้ Java?


แพ็คเกจ org.opencv.imgproc ของไลบรารี Java OpenCV มีคลาสชื่อ Imgproc คลาสนี้จัดเตรียมวิธีต่างๆ ในการประมวลผลอิมเมจอินพุต มีชุดวิธีการวาดรูปทรงเรขาคณิตบนรูปภาพ

คลาสนี้มีเมธอดชื่อ ellipse() ด้วยวิธีนี้คุณสามารถวาดวงรีบนรูปภาพได้ หนึ่งในตัวเลือกของวิธีนี้ช่วยให้คุณสามารถระบุประเภทเส้นเป็นหนึ่งในพารามิเตอร์รวมถึง -

  • A เสื่อ วัตถุที่แสดงภาพที่จะวาดวงรี

  • A RotatedRect วัตถุ (วงรีถูกวาดไว้ในสี่เหลี่ยมนี้)

  • A สเกลาร์ วัตถุที่แสดงสีของสี่เหลี่ยมผืนผ้า (BGR)

หากคุณผ่าน Imgproc.FILLED เป็นพารามิเตอร์ที่วิธีนี้สร้าง eclipse ที่เติม

ตัวอย่าง

import org.opencv.core.Core;
import org.opencv.core.Mat;
import org.opencv.core.Point;
import org.opencv.core.RotatedRect;
import org.opencv.core.Scalar;
import org.opencv.core.Size;
import org.opencv.highgui.HighGui;
import org.opencv.imgcodecs.Imgcodecs;
import org.opencv.imgproc.Imgproc;
public class DrawingFilledEllipse {
   public static void main(String args[]) {
      // Loading the OpenCV core library
      System.loadLibrary( Core.NATIVE_LIBRARY_NAME );
      //Loading the OpenCV core library
      System.loadLibrary( Core.NATIVE_LIBRARY_NAME );
      //Reading the source image in to a Mat object
      Mat src = Imgcodecs.imread("D:\\images\\blank.jpg");
      //Drawing an ellipse
      RotatedRect box = new RotatedRect(new Point(300, 200), new Size(260, 180),180);
      Scalar color = new Scalar(64, 64, 64);
      int thickness = Imgproc.FILLED;
      Imgproc.ellipse(src, box, color, thickness);
      //Saving and displaying the image
      Imgcodecs.imwrite("arrowed_line.jpg", src);
      HighGui.imshow("Drawing an ellipse", src);
      HighGui.waitKey();
   }
}

ผลลัพธ์

ในการดำเนินการ โปรแกรมข้างต้นจะสร้างหน้าต่างต่อไปนี้ -

วิธีการวาดวงรีที่เติมใน OpenCV โดยใช้ Java?