การทำให้ภาพคมชัดเป็นสิ่งที่ตรงกันข้ามกับการเบลอ ในการเปลี่ยนความคมชัดของภาพโดยใช้ไลบรารี OpenCV คุณต้องทำให้ภาพเรียบ/เบลอโดยใช้ตัวกรอง Gaussian และลบภาพที่ปรับให้เรียบออกจากภาพต้นฉบับ
ตัวอย่าง
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) { //Loading the OpenCV core library System.loadLibrary( Core.NATIVE_LIBRARY_NAME ); //Reading the Image from the file String file ="D:\\Image\\lamma1.jpg"; Mat src = Imgcodecs.imread(file, Imgcodecs.IMREAD_COLOR); //Creating an empty matrix 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); // Writing the image Imgcodecs.imwrite("D:\\Image\\altering_sharpness_100.jpg", dest); } }
อินพุต
ผลลัพธ์