일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Class
- sensor
- UNO
- Contour
- file access
- aduino
- mfc
- flutter
- APP
- Pointer
- stream
- Read
- SERIAL
- compare
- atmega328
- Binary
- digitalRead
- length
- inheritance
- Overloading
- wpf
- preprocessing
- parameter
- java
- Barcode
- Android
- Encapusulation
- memory
- Unity
- public
- Today
- Total
폴크(FOLC)
C# - 머신 비전 알고리즘 - OpenCV - 이미지처리1 본문
# 디지털 컴퓨터를 이용하여 알고리즘을 통해 디지털 이미지(넓은 범위의 알고리즘을 입력 데이터)를 처리 한다. 특히, 노이즈 및 왜곡 축적과 같은 문제를 피할 수 있고 2차원 이상으로 정의되면서 다차원 시스템의 형태로 이용되고 있다.
# 디지털 이미지 처리의 발전의 세 가지 요인
> 컴퓨터의 발전, 수학의 발전, 산업(환경, 농업, 군사) 및 의학 분야에 대한 수요 증가
# 디지털 이미지 처리
# 이미지의 정보를 시간영역과 주파수영역으로 표현 가능하다.
# 이미지를 처리하는 filter 의 특성에 따라서 시간영역/주파수 영역에서 처리 한다.
> 저주파수( LPF : Low Pass Filter ), 고주파수( HPF : High Pass Filter )
# 이미지 처리 - OpenCV 4.5.3 으로 테스트
# 이미지의 정보에서 저주파수 성분은 통과 시키고 고주파수 성분은 제거
# kernel_size 를 X, Y 로 설정가능하며, 3 이상의 홀수를 선택
> srcImage : 입력, dstImage : 결과, kernel_size : 커널 크기, anchor_point : 엥커 위치, borderType : 이미지 끝부분
# Cv2.Blur
> 엥커 위치를 기준으로 커널 크기에 포함 되는 데이터의 평균을 계산한다.
> Size kernel_size = new Size(3, 3);
> Point anchor = new Point(1, 1);
> Cv2.Blur(srcImage, dstImage, kernel_size, anchor, BorderTypes.Default);
# Cv2.MedianBlur
> 엥커 위치를 기준으로 커널 크기에 포함 되는 데이터의 중간 위치 값을 선택한다.
> Cv2.MedianBlur(srcImage, dstImage, 3);
# Cv2.GaussianBlur
> 엥커 위치를 기준으로 커널 크기에 포함 되는 데이터를 Gaussian form 으로 convolution 연산한다.
> Cv2.GaussianBlur(srcImage, dstImage, kernel_size, 5.0, 0.0, BorderTypes.Default);
# Cv2.BilateralFilter
> 가우스안 함수 필터를 확장한 개념으로 에지를 보존하면서 스무딩 연산한다.
> 특별한 부분은 distance(d) 값을 이용해서 이웃하는 픽셀과의 거리를 결정한다.
> 만약 d < 0 으면, sigmaSpace에 의해서 필터 크기가 결정 ( 2.0 * 3.0 * sigmaSpace + 1.0 )
> sigmaColor 값은 이웃 화소 중에서 색상 공간에서 멀리 떨어진 색상을 혼합하여 유사한 색상으로 뭉친다.
# sigmaColor는 컬러 공간에서 필터 표준편차를 나타낸다.
> distance = 3;
> Cv2.BilateralFilter(srcImage, dstImage, distance, 5.0, 3.0, BorderTypes.Default);
'머신 비전 > 머신 비전 알고리즘 테크닉 C#' 카테고리의 다른 글
C# - 머신 비전 알고리즘 - OpenCV - 이미지처리5 (0) | 2021.10.17 |
---|---|
C# - 머신 비전 알고리즘 - OpenCV - 이미지처리4 (0) | 2021.10.17 |
C# - 머신 비전 알고리즘 - OpenCV - 캘리브레이션 (0) | 2021.10.17 |
C# - 머신 비전 알고리즘 - OpenCV - 이미지처리3 (0) | 2021.10.17 |
C# - 머신 비전 알고리즘 - OpenCV - 이미지처리2 (0) | 2021.10.16 |