본문 바로가기

분류 전체보기8

Opencv Template Matching Template Matching - 이미지 Matching시 사용 하며 위치포인트와 스코어 계산이 가능합니다. void InspectMatching() { Mat sourceImage, templateImage; double minVal, maxVal, matchVal; Point minLoc, maxLoc, matchLoc; int nScore; cv::Rect rt; sourceImage = imread("MatchOrg.bmp"); templateImage = imread("MatchP.bmp"); if (sourceImage.cols 2022. 6. 15.
Opencv 이미지 전처리2(Sharpness, Rotate, MeasureFocus) Sharpness - 이미지의 선명도를 높일때 사용합니다. 흐릿한 Kennel을 사용해 이미지를 좀더 거칠게 표현 합니다. void TestSharpness() { Mat MatImage, OutMat; MatImage = cv::imread("test.bmp");//이미지 로드 cv::Mat kernel(3, 3, CV_32F, cv::Scalar(0));// 커널 생성(모든 값을 0으로 초기화) kernel.at(1, 1) = 5.0; // 커널 값에 할당 kernel.at(0, 1) = -1.0; kernel.at(2, 1) = -1.0; kernel.at(1, 0) = -1.0; kernel.at(1, 2) = -1.0; cv::filter2D(MatImage, OutMat, MatImage.de.. 2022. 6. 15.
Opencv 이미지 전처리1(Sobel, Canny, Erode, Dilate) Sobel - Sobel 함수는 설정된 Kennel 크기로 이미지의 X축 미분과 Y축 미분을 이용하여 이미지의 경계선을 구할 때 사용 합니다. void TestSobel() { Mat MatImage; Mat sobel_x, sobel_y, sobel_xy; int nKernelsize = 3; MatImage = cv::imread("baseball01.bmp");//이미지 로드 Sobel(MatImage, sobel_x, -1, 1, 0, nKernelsize);//X방향 Sobel(MatImage, sobel_y, -1, 0, 1, nKernelsize);//Y방향 sobel_xy = sobel_x + sobel_y;//XY방향(X방향과 Y방향 합치기) cv::imshow("MatImage", Ma.. 2022. 6. 15.
Opencv convert type (Mat to iplimage, iplimage to Mat) Type 변환의 필요성 Opencv를 사용하다보면 부득이하게 Image Type 변환이 필요한 경우가 있습니다. 다음은 Opencv Image Type 변환 방법을 간단하게 정리 하였습니다. iplimage to Mat iplimag 를 Mat 이미지로 변환 void TestMattoIplimage() { Mat MatImage; IplImage *IplImg; MatImage = cv::imread("baseball01.bmp");//이미지 로드 IplImg = new IplImage(MatImage);//MatImage IplImage로 변환 cvShowImage("IplImg", IplImg);//이미지 보여주기 waitKey(0);//대기 delete IplImg;// Iplimage 해제 } M.. 2022. 6. 15.