如何使用 Java 在 OpenCV 中绘制一个实心圆?
Java OpenCV 库中名为 org.opencv.imgproc 的包包含一个命名为 Imgproc 的类。此类提供名为 circle() 的方法,使用此方法可以在图像上绘制圆形。此方法提供以下参数 -
Mat 对象,表示绘制圆形的图像。
Point 对象,表示圆的中心。
整型变量,表示圆的半径。
Scalar 对象,表示圆的颜色(BGR)。
整型变量,表示圆的粗细(默认为 1)。
如果将 Imgproc.FILLED 传入行类型,此方法将生成/绘制一个实心圆。
实例
import org.opencv.core.Core; import org.opencv.core.Mat; 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 DrawingFilledCircle { 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 a Circle Point center = new Point(300, 200); int radius =100; Scalar color = new Scalar(64, 64, 64); int thickness = Imgproc.FILLED; Imgproc.circle (src, center, radius, color, thickness); //Saving and displaying the image Imgcodecs.imwrite("arrowed_line.jpg", src); HighGui.imshow("Drawing a circle", src); HighGui.waitKey(); } }
输出
在执行时,以上程序将生成以下窗口 -
广告