Java OpenCV 库的 org.opencv.imgproc 包中包含一个名为 Imgproc 的类,该类提供了处理输入图像的各种方法。它提供了一组在图像上绘制几何形状的方法。
此类提供了一个名为ellipse()的方法,使用它您可以在图像上绘制椭圆,其中之一此方法的变体允许您将线类型指定为参数之一,包括 -
代表图像的 Mat 对象要绘制椭圆的位置。
一个 RotatedRect 对象(椭圆在内接于该矩形中绘制。)
一个标量对象,表示矩形(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(); } }
执行上述程序后,会生成以下窗口 −
以上是如何使用Java在OpenCV中绘制填充椭圆?的详细内容。更多信息请关注PHP中文网其他相关文章!