반응형
250x250
Notice
Recent Posts
Recent Comments
Link
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
Archives
Today
Total
관리 메뉴

폴크(FOLC)

머신 비전 알고리즘 - OpenCV - 이미지처리4 본문

머신 비전/머신 비전 알고리즘 테크닉 CPP

머신 비전 알고리즘 - OpenCV - 이미지처리4

folcjin 2021. 7. 24. 22:55
728x90
반응형

# 디지털 이미지 처리
   # 이미지의 상태 변경이 가능하다.
      > 이진화, 거리, 적분, 채우기 등에 대한 처리

 

# 이미지 처리 - OpenCV 4.5.3 으로 테스트
   # 이미지의 상태 정보를 이용해서 데이터를 변형
   > srcImage : 입력, dstImage : 결과, thresh: 경계값, max_val : 최대값(대체값), type : 이진화 방법
   > adaptiveMethod : 평균 , C : 옵셋, seedPoint : 기준위치, scale : 배율

# cv::threshold
   > 이미지의 상태 변경 - 경계값을 직접 정의하여 이진화
   > double thresh = 128.0, max_val = 255.0;
   > int type = cv::THRESH_BINARY;
   > cv::threshold(srcImage, dstImage, thresh, max_val, type);

# cv::adaptiveThreshold
   > 이미지의 상태 변경 - 주변 커널 영역의 값들의 평균을 이용하여 이진화
   > double thresh = 128.0, max_val = 255.0;
   > int type = cv::THRESH_BINARY;
   > int adaptiveMethod = cv::ADAPTIVE_THRESH_MEAN_C;
   > double C = 0.0;
   > cv::adaptiveThreshold(srcImage, dstImage, max_val, adaptiveMethod, type, kernel_size, C);

# cv::floodFill
   > 이미지의 상태 변경 - 특정 위치에 폐공간을 채운다.
   > cv::Point seedPoint = cv::Point(1, 2);
   > cv::Scalar newVal = 255, loDiff = cv::Scalar(), upDiff = cv::Scalar();
   > cv::Rect rect = cv::Rect(0, 0, 0, 0);
   > int flags = 4; // 상하좌우 4방향을 의미
   > cv::floodFill(srcImage, seedPoint, newVal, &rect, loDiff, upDiff, flags);

# cv::integral
   > 이미지의 상태 변경 - 좌/상 에서 우/하로 이동하면서 적분을 계산한다.
   > cv::Mat sum, sqsum, tilted;
   > int sdepth = CV_32F, sqdepth = CV_64F;
   > cv::integral(srcImage, sum, sqsum, tilted, sdepth, sqdepth);

# cv::distanceTransform
   > 이미지의 상태 변경 - 특정 물체의 중심(seed point)을 기준으로 거리를 예측한다.
   > int distanceType = cv::DIST_L2, maskSize = 3, dstType = CV_32F;
   > cv::distanceTransform(srcImage, dstImage, distanceType, maskSize, dstType);

728x90
반응형
사업자 정보 표시
사업자 등록번호 : -- | TEL : --