Roberts

개발/OpenCV

Edge Detection 코드/결과

안녕하세요 여러분 이번 포스팅에서는 저번 포스팅에서 작성했던 윤곽선 검출에 대한 실제 작동 코드와 결과를 보도록 하겠습니다. 윤곽선 검출의 이론에 대해 읽고 싶으시다면 아래 링크에서 읽어보세요! 2018/04/11 - [OpenCV] - Edge Detection의 방법 소개 1. 로버츠 마스크(Roberts Mask) void RobertsEdgeDetect(const Mat& image, Mat& result, uchar thresh){ // 수직마스크 Mat maskX = (Mat_(3, 3)

개발/OpenCV

Edge Detection의 방법 소개

안녕하세요 여러분 이번 포스팅에서는 OpenCV를 활용한 Edge Detection, 즉 윤곽선 검출 방법들에 대해 이론적인 설명을 해보려고 합니다! 먼저 윤곽선을 검출하기 위해서는 회선의 개념을 이해해야 합니다 회선의 정의를 살펴보겠습니다. 회선이란, 화소값 각각에 대해 여러가지 연산을 수행하는 화소 기반 처리가 아닌 마스크라 불리는 규정된 영역을 기반으로 연산을 수행하는 것을 공간영역 기반 처리 또는 마스크 기반 처리라고도 한다. 마스크 기반 처리는 마스크 내의 원소값과 공간 영역에 있는 입력 영상의 화소값들을 대응되게 곱하여 출력화소값을 계산한다. 이러한 처리를 모든 입력 화소값에 대해 이동하면서 수행하는 것을 회선이라고 한다. 이 때 입력 영상에 곱해지는 이 마스크를 커널, 윈도우, 필터 등이라고..

개발/OpenCV

Canny Edge Detection

#include #include #include using namespace cv; int main() { IplImage *inputImg = cvLoadImage("lena.jpg", CV_LOAD_IMAGE_GRAYSCALE); IplImage *edgeDetection1 = cvCreateImage(cvGetSize(inputImg), IPL_DEPTH_8U, 1); IplImage *edgeDetection2 = cvCreateImage(cvGetSize(inputImg), IPL_DEPTH_8U, 1); IplImage *edgeDetection3 = cvCreateImage(cvGetSize(inputImg), IPL_DEPTH_8U, 1); cvNamedWindow("InputImage",..

njsung
'Roberts' 태그의 글 목록