import java.awt.Point;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import javax.swing.JFrame;
import org.opencv.core.Core;
import org.opencv.core.Mat;
import org.opencv.core.Scalar;
import org.opencv.core.Size;
import org.opencv.imgcodecs.Imgcodecs;
import org.opencv.imgproc.Imgproc;
public class Testingopencv
{
public static void main(String[] args)
{
System.loadLibrary("opencv_java300");
Mat src = Imgcodecs.imread("m.jpg");
Mat temp = new Mat(src.rows(),src.cols(), src.type());
Imgproc.putText(src, "Edited by me", new Point(src.rows()/2,src.cols()/2),
Core.FONT_ITALIC, 1.0 ,new Scalar(255));
Imgcodecs.imwrite("watermarked.jpg", src);
}
}
Я пытаюсь использовать OpenCV 3.0, чтобы сделать водяной знак на изображения, но есть проблема с putText
, я искал по всему интернету, но нет никакого решения.putText не работает в opencv3.0
Сообщение об ошибке:
Метод putText (org.opencv.core.Mat, java.lang.String, org.opencv.core.Point, INT, двойной, org.opencv.core .Scalar) в типе Imgproc не применим для аргументов (org.opencv.core.Mat, java.lang.String, java.awt.Point, int, double, org.opencv.core.Scalar)
И параметры должны быть правильными, как показано выше. Как я могу это решить?
Необходимо предоставить больше информации о полученной ошибке или ожидаемом и актуальном выходе вашей программы. – oarfish
Вы используете 'java.awt.Point' вместо' org.opencv.core.Point' – Miki
@Miki спасибо Sir – hychanbb