public static void main(String[] args) {
System.loadLibrary(Core.NATIVE_LIBRARY_NAME);//加载opencv c++动态库
combine();
}
private static void combine() {
Mat mat =Mat.zeros(600,600, CvType.CV_8UC3);
Mat logo = Imgcodecs.imread("d:/11.jpg",Imgcodecs.IMREAD_COLOR);
Mat mask = Imgcodecs.imread("d:/11.jpg",Imgcodecs.IMREAD_GRAYSCALE);
Imgproc.ellipse(mat, new Point(300, 300), new Size(600 / 4, 600 / 16), 90, 0, 360, new Scalar(255, 129, 0), 2,
8, 0);
Imgproc.ellipse(mat, new Point(300, 300), new Size(600 / 4, 600 / 16), 0, 0, 360, new Scalar(255, 129, 0), 2,
8, 0);
Imgproc.ellipse(mat, new Point(300, 300), new Size(600 / 4, 600 / 16), 45, 0, 360, new Scalar(255, 129, 0), 2,
8, 0);
Imgproc.ellipse(mat, new Point(300, 300), new Size(600 / 4, 600 / 16), -45, 0, 360, new Scalar(255, 129, 0), 2,
8, 0);
Mat roi= mat.submat(new Rect(150, 150, logo.cols(), logo.rows()));
logo.copyTo(roi, mask);
Imgcodecs.imwrite("d:/ellipse.jpg", mat);
Imgcodecs.imwrite("d:/roi.jpg", roi);
Mat temp=new Mat();
Imgproc.cvtColor(roi, temp, Imgproc.COLOR_BGR2GRAY);//灰度
}