Gói org.opencv.imgproc của thư viện Java OpenCV chứa lớp Imgproc. Để vẽ elip, bạn cần gọi phương thức ellipse() của lớp này. Phương thức này chấp nhận các tham số sau:
Một đối tượng
Matđại diện cho hình ảnh sẽ vẽ elip lên.Một đối tượng
RotatedRect(elip được vẽ nội tiếp trong hình chữ nhật này).Một đối tượng
Scalarđại diện cho màu sắc của elip (BGR).Một số nguyên đại diện cho độ dày của đường viền (mặc định: 1).
Ví dụ
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[]) {
// Tải thư viện lõi OpenCV
System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
// Đọc hình ảnh nguồn vào đối tượng Mat
Mat src = Imgcodecs.imread("D:\\images\\blank.jpg");
// Vẽ elip
RotatedRect box = new RotatedRect(new Point(300, 200), new Size(260, 180), 180);
Scalar color = new Scalar(64, 64, 64);
int thickness = 10;
Imgproc.ellipse(src, box, color, thickness);
// Lưu và hiển thị hình ảnh
Imgcodecs.imwrite("ellipse.jpg", src);
HighGui.imshow("Vẽ elip", src);
HighGui.waitKey();
}
}
Kết quả
Khi thực thi, chương trình trên tạo ra cửa sổ sau:
