- Example
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>
void sharpen2D(const cv::Mat &image, cv::Mat &result)
{
cv::Mat kernel(3, 3, CV_32F, cv::Scalar(0, 0, 0));
// 커널 생성(모든 값을 0으로 초기화)
kernel.at<float>(1, 1) = 5.0;// 커널 값에 할당
kernel.at<float>(0, 1) = -1.0;
kernel.at<float>(2, 1) = -1.0;
kernel.at<float>(1, 0) = -1.0;
kernel.at<float>(1, 2) = -1.0;
cv::filter2D(image, result, image.depth(), kernel);
// 영상 필터링
}
int main()
{
cv::Mat image = cv::imread("img2.jpg");
cv::Mat result;
sharpen2D(image, result);
cv::namedWindow("Image");
cv::imshow("Image", image);
cv::namedWindow("Result");
cv::imshow("Result", result);
cv::waitKey(5000);
return 0;
}
- Result
- 참고문헌 : OpenCV 2 Computer Vision Application Programming Cookbook