Gói org.opencv.imgproc của thư viện Java OpenCV chứa lớp Imgproc. Để vẽ đường thẳng, bạn cần gọi phương thức line() 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ẽ đường thẳng lên.Hai đối tượng
Pointđại diện cho hai điểm đầu và cuối của đoạn thẳng.Một đối tượng
Scalarđại diện cho màu sắc của đường thẳng (BGR).Một số nguyên đại diện cho độ dày của đường thẳng (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.Scalar;
import org.opencv.highgui.HighGui;
import org.opencv.imgcodecs.Imgcodecs;
import org.opencv.imgproc.Imgproc;
public class DrawingLine {
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ẽ đường thẳng
Point start = new Point(150, 200);
Point end = new Point(450, 200);
Scalar color = new Scalar(64, 64, 64);
int thickness = 10;
Imgproc.line(src, start, end, color, thickness);
// Lưu và hiển thị hình ảnh
Imgcodecs.imwrite("line.jpg", src);
HighGui.imshow("Vẽ đường thẳng", src);
HighGui.waitKey();
}
}
Kết quả
Khi thực thi, chương trình trên tạo ra cửa sổ sau:
