일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- public
- java
- SERIAL
- aduino
- UNO
- atmega328
- Binary
- compare
- Class
- preprocessing
- mfc
- stream
- flutter
- Contour
- Barcode
- Overloading
- file access
- length
- memory
- parameter
- Encapusulation
- Unity
- digitalRead
- wpf
- Pointer
- inheritance
- sensor
- Android
- APP
- Read
- Today
- Total
폴크(FOLC)
머신 비전 알고리즘 - OpenCV - 이미지처리30 본문
# 디지털 이미지 처리
# 이미지의 상태 정보에서 특별한 정보를 생성한다.
> 추출된 정보를 일반화한다.
# 이미지 처리 - OpenCV 4.5.3 으로 테스트
# 이미지의 상태 정보에서 특별한 정보를 생성
> Points : 입력, model : 결과, distance : 노이즈로 판단하는 경계값
# MA( Moving Average )
> cv::Point2d *pSrc = new cv::Point2d[1000];
> cv::Point2d *pDst = new cv::Point2d[1000];
> CMovingAverage MA;
> MA.SmoothFilter(pSrc, pDst, 1000);
* 소스 코드 세부 내용 *
void CMovingAverage::SmoothFilter(cv::Point2d *src, cv::Point2d *dst, int nData)
{
const long nPaddingCount = m_nLeft + m_nRight;
vector<double> vecPaddData(nData + nPaddingCount);
for(long i = 0; i < m_nLeft; ++i)
{
vecPaddData[i] = src[0].y;
}
for(long i = 0; i < nData; ++i)
{
vecPaddData[i + m_nLeft] = src[i].y;
}
for(long i = 0; i < m_nRight; ++i)
{
vecPaddData[nData + m_nLeft + i] = src[nData - 1].y;
}
const long nAverageRange = nPaddingCount + 1;
for(long i = 0; i < nData; ++i)
{
double dSum = 0.0;
for(long n = 0; n < nAverageRange; ++n)
{
dSum += vecPaddData[i + n];
}
dst[i].y = (dSum / nAverageRange);
}
}
'머신 비전 > 머신 비전 알고리즘 테크닉 CPP' 카테고리의 다른 글
머신 비전 알고리즘 - OpenCV - 이미지처리32 (0) | 2021.08.24 |
---|---|
머신 비전 알고리즘 - OpenCV - 이미지처리31 (0) | 2021.08.20 |
머신 비전 알고리즘 - OpenCV - 이미지처리29 (0) | 2021.08.14 |
머신 비전 알고리즘 - OpenCV - 이미지처리28 (0) | 2021.08.10 |
머신 비전 알고리즘 - OpenCV - 이미지처리27 (0) | 2021.08.07 |