理解:
模糊就是让图像变的平滑,平滑到极致图片就变成了一个色块。
锐化就是增加色彩的对比度,对比到极致图片就变成了很多色块。
实践:
void example_blur(const cv::Mat &image) {
cv::Mat out;
cv::namedWindow("example_blur", cv::WINDOW_AUTOSIZE);
cv::GaussianBlur(image, out, cv::Size(3, 3), 3, 3);//模糊
cv::imshow("example_blur", out);
}
void example_filter(const cv::Mat &image) {
cv::Mat out;
cv::Mat kern = (cv::Mat_<char>(3, 3) << 0, -1, 0,
-1, 5, -1,
0, -1, 0);
cv::namedWindow("example_filter", cv::WINDOW_AUTOSIZE);
cv::filter2D(image, out, image.depth(), kern);//锐化
cv::imshow("example_filter", out);
}
int main()
{
cv::Mat image = cv::imread("d:\\1.jpg");
cv::namedWindow("src", cv::WINDOW_AUTOSIZE);
cv::imshow("src", image);
example_blur(image);
example_filter(image);
cv::waitKey(0);
return 0;
}