본문 바로가기

영상처리

(6)
컴퓨터 비전 영상처리 - 에지 검출 (디지털 영상의 미분, 계단 에지, 램프 에지, 스무딩 기법, 소벨 연산자, 영교차 찾기) 영상처리에서 에지란? 영상의 명암, 컬러, 또는 텍스처와 같은 특성이 급격히 변하는 지점이다. 에지는 '테두리' 라는 뜻을 가지며 물체의 '경계'를 표시해 준다. 매칭에 용이한 선분이나 곡선으로 변환이 가능하다. 에지의 한계 실종된 에지(거짓 부정)와 거짓 에지(거짓 긍정)가 발생한다. 디지털 영상의 미분 1차원 수학에서 변화를 측정하는 기초 이론은 미분이다. 연속 공간에서의 미분은 도함수를 구할 수 있는데, x값이 미세하게 증가했을 때 연속 함수가 어떻게 변화하는지를 측정해준다. 하지만 컴퓨터 비전이 다루는 디지털 영상은 이산 공간에서 정의된다. 따라서 이산 공간에서 도함수를 근사화하는 방법을 고안해야 한다. 위의 f'(x) 식을 보면 마스크[-1][1]로 영상 f를 컨볼루션 하는 것과 같다. 3-2의..
컴퓨터 비전 영상처리 - (팽창, 침식, 열기, 닫기) openCV Python 코드 2023.07.31 - [Computer Vision] - 영상처리 - 이진 모폴로지, 명암 모폴로지 (팽창, 침식, 열기, 닫기) 영상처리 - 이진 모폴로지, 명암 모폴로지 (팽창, 침식, 열기, 닫기) 영상처리에서 모폴로지란 ? 영상의 형태와 구조를 분석하고 처리하는 기술로서, 영상 내의 객체나 특정한 패턴을 찾고 수정하는 데 사용된다. 주로 이진화된 영상에서 객체의 형태, 크기, 경계 mcrkgus.tistory.com 이전에 작성한 이진 모폴로지와 명암 모폴로지에서 사용하는 팽창, 침식, 열기, 닫기 에 대한 코드이다. openCV를 사용했다. Code img = cv2.imread('roopy.jpg', cv2.IMREAD_GRAYSCALE) 파일로부터 이미지를 로드하고, 그레이스케일로 변환하여..
컴퓨터 비전 영상처리 - 이진 모폴로지, 명암 모폴로지 (팽창, 침식, 열기, 닫기) 영상처리에서 모폴로지란 ? 영상의 형태와 구조를 분석하고 처리하는 기술로서, 영상 내의 객체나 특정한 패턴을 찾고 수정하는 데 사용된다. 주로 이진화된 영상에서 객체의 형태, 크기, 경계 등을 분석하거나 영상의 노이즈를 제거하는 데에 많이 활용된다. 모폴로지 구조적 요소라고 불리는 작은 마스크를 사용하여 수행된다. 원래 생물학에서 생물의 모양 변화를 표현하는 기법이였다. 수학적 모폴로지는 컴퓨터 비전에서 패턴을 원하는 형태로 변환하는 기법이다. 이진 모폴로지와 명암 모폴로지가 있다. 이진 모폴로지 이진 모폴로지 연산에는 4가지가 있다. 팽창, 침식, 열기, 닫기 가 있다. 이진 모폴로지에서의 팽창, 침식, 열기, 닫기 연산 팽창은 객체의 크기가 감소하며 배경은 확대된다. 침식은 객체의 크기는 확대되고 배..
컴퓨터 비전 영상처리 - 점연산, 영역연산, 기하연산 (디졸브, 컨볼루션, 메디안 필터, 가우시안, 감마 수정) 영상처리에는 가장 기본적이면서도 핵심적인 세 가지 연산 유형이 있다. 점 연산, 영역 연산, 기하 연산이 있는데, 이 세 가지 연산 유형을 조합하여 다양한 영상 처리 기술과 알고리즘을 만든다. 점 연산 점 연산 특징 점 연산은 오직 자신의 명암값에 따라 새로운 값을 결정한다. 주로 히스토그램 평활화, 밝기 조절, 대비 조절 등의 작업을 한다. 특정 함수나 수식을 사용하여 각 픽셀의 값을 변경함으로써 이미지의 품질을 개선하거나 특정 효과를 적용하는데 사용된다. 점 연산 식 선형 연산 비선형 연산 감마 수정 : 모니터나 프린터 색상 조절에 사용한다. 디졸브 영역 연산 영역 연산의 특징 이웃 화소의 명암값에 따라 새로운 값을 결정한다. 필터링, 엣지 검출, 잡음 제거 등의 작업을 한다. 영역 내 픽셀들의 값이..
컴퓨터 비전 영상처리 - 연결요소 (화소의 모양과 연결성, 범람채움) Python 실습 코드 화소처리란? 화소처리는 입력 영상의 화소값이 수학적인 함수를 거쳐서 새로운 값으로 변경된 후에 출력 영상의 동일한 위치에 저장하는 것을 말한다. 화소의 모양과 연결성 화소의 모양 화소의 연결 4-연결성과 8-연결성 메모리를 적게 사용하는 범람 채움 코드 b를 l로 복사한다. 이때 0은 0, 1은 -1로 복사 //-1은 아직 번호를 안 붙였음을 표시함 l의 경계. 즉 j = 0, j = M-1, i = 0, i = N-1인 화소를 0으로 설정 //영상 바깥으로 나가는 걸 방지하기 위함 label = 1; for(j = 1 to M-2) for(i = 1 to N-2) { if(l(j, i) = -1) { efficient_floodfill4(l, j, i, label); label++; } } //메모리를..
영상처리 - 샘플링과 양자화 / 히스토그램의 정규화 평활화 역투영 영상처리 주어진 목적을 달성하기 위해 원래 영상을 새로운 영상으로 변환 컴퓨터 비전의 전처리 과정 샘플링과 양자화 2차원 영상 공간을 MxN으로 샘플링 (MxN을 해상도라고 부른다) 명암을 L단계로 양자화 (L을 명암 단계라고 한다. 즉, 명암은 0부터 L-1에 분포되어 있다. ) 위의 사진은 M이 12, N이 12, 그리고 명암 단계 L은 10인 경우이다. (c) 디지털 영상을 보면, 명암이 0부터 9까지 분포되어 있는 것을 볼 수 있다. 명암이 가장 높은 부분은 9이고 흰 배경은 0이다. 영상 좌표계 화소 위치는 x = (j, i) 또는 x = (y, x)로 표기한다. 영상은 f(x) 또는 f(j, i), 0

728x90