2013년 1월 5일 토요일

OpenCV #2-5 Example (이웃 접근으로 영상 조회 - Color level image)

  • Example
#include <opencv2/core/core.hpp>
#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