如何使用 Java 在 OpenCV 中绘制椭圆?
javaobject oriented programmingprogramming
Java OpenCV 库的 org.opencv.imgproc 包包含一个名为 Imgproc 的类。要绘制椭圆,您需要调用此类的 ellipse() 方法。此方法接受以下参数 −
表示要在其上绘制椭圆的图像的 Mat 对象。
RotatedRect 对象(椭圆在此矩形内绘制。)
表示矩形颜色 (BGR) 的 Scalar 对象。
表示矩形厚度的整数(默认值:1)。
示例
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 DrawingEllipse { public static void main(String args[]) { //加载 OpenCV 核心库 System.loadLibrary( Core.NATIVE_LIBRARY_NAME ); //将源图像读入 Mat 对象 Mat src = Imgcodecs.imread("D:\images\blank.jpg"); //绘制椭圆 RotatedRect box = new RotatedRect(new Point(300, 200), new Size(260, 180), 180); Scalar color = new Scalar(64, 64, 64); int thick = 10; Imgproc.ellipse (src, box, color, thick); //保存并显示图像 Imgcodecs.imwrite("arrowed_line.jpg", src); HighGui.imshow("Drawing an ellipse", src); HighGui.waitKey(); } }
输出
执行时,上述程序生成以下窗口 −