如何使用 Java OpenCV 库改变图像的清晰度?
javaobject oriented programmingprogramming
锐化图像与模糊相反。要使用 OpenCV 库改变图像的清晰度,您需要使用高斯滤波器对其进行平滑/模糊处理,并从原始图像中减去平滑版本。
示例
import org.opencv.core.Core; import org.opencv.core.Mat; import org.opencv.core.Size; import org.opencv.imgcodecs.Imgcodecs; import org.opencv.imgproc.Imgproc; public class AlteringSharpness { public static void main (String[] args) { //加载OpenCV核心库 System.loadLibrary( Core.NATIVE_LIBRARY_NAME ); //从文件读取图像 String file ="D:\Image\lamma1.jpg"; Mat src = Imgcodecs.imread(file, Imgcodecs.IMREAD_COLOR); //创建一个空矩阵 Mat dest = new Mat(src.rows(), src.cols(), src.type()); Imgproc.GaussianBlur(src, dest, new Size(0,0), 10); Core.addWeighted(src, 1.5, dest, -0.5, 0, dest); // 写入图像 Imgcodecs.imwrite("D:\Image\altering_sharpness_100.jpg", dest); } }