반응형
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)

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

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

C# - 머신 비전 알고리즘 - OpenCV - 이미지처리1

folcjin 2021. 10. 15. 22:29
728x90
반응형

# 디지털 컴퓨터를 이용하여 알고리즘을 통해 디지털 이미지(넓은 범위의 알고리즘을 입력 데이터)를 처리 한다. 특히, 노이즈 및 왜곡 축적과 같은 문제를 피할 수 있고 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);

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