일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- APP
- flutter
- Unity
- memory
- Contour
- file access
- public
- aduino
- java
- inheritance
- Overloading
- c++
- Class
- Encapusulation
- compare
- Read
- UNO
- wpf
- parameter
- atmega328
- Pointer
- mfc
- stream
- length
- preprocessing
- Barcode
- SERIAL
- Android
- sensor
- digitalRead
- Today
- Total
폴크(FOLC)
머신 비전 알고리즘 - OpenCV - 이미지처리14 본문
# 디지털 이미지 처리
# 이미지의 상태 정보에서 특별한 영역를 검색한다.
> 이미지 매칭을 통해서 영역 검색
# 이미지 처리 - OpenCV 4.5.3 으로 테스트
# 이미지의 상태 정보에서 특별한 영역을 검색
> srcImage : 입력, tmpImage : 매칭 이미지, dstImage : 결과, method : 검색 방법
# cv::matchTemplate
> cv::Mat tmpImage;
> int method = cv::TM_SQDIFF;
> cv::matchTemplate(srcImage, tmpImage, dstImage, method, cv::noArray());
> cv::Point minLoc = cv::Point(), maxLoc = cv::Point();
> cv::minMaxLoc(dstImage, NULL, NULL, &minLoc, &maxLoc, cv::noArray());
> cv::Rect search_result_roi(minLoc.x, minLoc.y, tmpImage.cols, tmpImage.rows);
# cv::TM_SQDIFF
> 전체 결과의 최소값 위치를 찾는다.
> R(x,y)= \sum _{x',y'} (T(x',y')-I(x+x',y+y'))^2
# cv::TM_SQDIFF_NORMED
> 전체 결과의 최소값 위치를 찾는다. - 정규화버전
> R(x,y)= \frac{\sum_{x',y'} (T(x',y')-I(x+x',y+y'))^2}{\sqrt{\sum_{x',y'}T(x',y')^2
\cdot \sum_{x',y'} I(x+x',y+y')^2}}
# cv::TM_CCORR
> 전체 결과의 최대값 위치를 찾는다.
> R(x,y)= \sum _{x',y'} (T(x',y') \cdot I(x+x',y+y'))
# cv::TM_CCORR_NORMED
> 전체 결과의 최대값 위치를 찾는다. - 정규화버전
> R(x,y)= \frac{\sum_{x',y'} (T(x',y') \cdot I(x+x',y+y'))}{\sqrt{
sum_{x',y'}T(x',y')^2 \cdot \sum_{x',y'} I(x+x',y+y')^2}}
# cv::TM_CCOEFF
> 전체 결과의 최대값 위치를 찾는다.
> R(x,y)= \sum _{x',y'} (T'(x',y') \cdot I'(x+x',y+y'))\f] where \f[\begin{array}l} T'(x',y')
=T(x',y') - 1/(w \cdot h) \cdot \sum _{x'',y''} T(x'',y'') \\ I'(x+x',y+y')=I(x+x',y+y') - 1/(w \cdot h)
\cdot \sum _{x'',y''} I(x+x'',y+y'') \end{array}
# cv::TM_CCOEFF_NORMED
> 전체 결과의 최대값 위치를 찾는다. - 정규화버전
> R(x,y)= \frac{ \sum_{x',y'} (T'(x',y') \cdot I'(x+x',y+y')) }{\sqrt{\sum_{x',y'}T'(x',y')^2
\cdot \sum_{x',y'} I'(x+x',y+y')^2}}
'머신 비전 > 머신 비전 알고리즘 테크닉 CPP' 카테고리의 다른 글
머신 비전 알고리즘 - OpenCV - 이미지처리16 (0) | 2021.07.30 |
---|---|
머신 비전 알고리즘 - OpenCV - 이미지처리15 (0) | 2021.07.30 |
머신 비전 알고리즘 - OpenCV - 이미지처리13 (0) | 2021.07.27 |
머신 비전 알고리즘 - OpenCV - 이미지처리12 (0) | 2021.07.27 |
머신 비전 알고리즘 - OpenCV - 이미지처리11 (0) | 2021.07.27 |