반응형

Python/파이썬 OpenCV 공부 88

[파이썬 OpenCV] 영상의 확대와 축소(크기 변환) - cv2.resize 함수 설명, interpolation 인자

황선규 박사님의 , 패스트 캠퍼스 OpenCV 강의를 공부한 내용을 정리해 보았습니다. [파이썬 OpenCV] 영상의 기하학적 변환 - 전단 변환 - cv2.warpAffine 황선규 박사님의 , 패스트 캠퍼스 OpenCV 강의를 공부한 내용을 정리해 보았습니다. [파이썬 OpenCV] 영상의 기하학적 변환 - 이동 변환 - cv2.warpAffine 황선규 박사님의 , 패스트 캠퍼스 OpenCV 강의를 공 deep-learning-study.tistory.com 저번 포스팅에서 전단 변환에 대해 공부했습니다. 이번 포스팅에서는 크기 변환과 대칭 변환이 대해서 공부하도록 하겠습니다. 1. 크기 변환 - Scale transformation 영상의 크기를 원본 영상보다 크게 또는 작게 만드는 변환입니다. ..

[파이썬 OpenCV] 영상의 기하학적 변환 - 전단 변환 - cv2.warpAffine

황선규 박사님의 , 패스트 캠퍼스 OpenCV 강의를 공부한 내용을 정리해 보았습니다. [파이썬 OpenCV] 영상의 기하학적 변환 - 이동 변환 - cv2.warpAffine 황선규 박사님의 , 패스트 캠퍼스 OpenCV 강의를 공부한 내용을 정리해 보았습니다. 영상의 기하학적 변환(geometric transformation)이란? 영상을 구성하는 픽셀의 배치 구조를 변경함으로써 전체 영상 deep-learning-study.tistory.com 이전 포스팅에서 영상의 이동 변환에 대해서 알아보았습니다. 이번에는 전단 변환에 대해 공부하겠습니다. 영상의 전단 변환 - Shear transformation 영상의 전단 변환은 층 밀림 변환이라고도 합니다. 이동을 하는데 모든 픽셀들이 동일하게 이동하는 ..

[파이썬 OpenCV] 영상의 기하학적 변환 - 이동 변환 - cv2.warpAffine

황선규 박사님의 , 패스트 캠퍼스 OpenCV 강의를 공부한 내용을 정리해 보았습니다. 영상의 기하학적 변환(geometric transformation)이란? 영상을 구성하는 픽셀의 배치 구조를 변경함으로써 전체 영상의 모양을 바꾸는 작업입니다. 영상의 모양 자체를 변환하고 좌표에 대한 개념이 필요합니다. 기하학적 변환이 필요한 이유 1. 입력 영상 크기가 제한되어 있어 영상 크기를 축소해야 하는 경우. 2. 객체가 영상의 정중앙에 있어야 하는 경우. 3. 회전이 되어 있는 영상을 똑바로 보정 이 외에도 여러가지 상황에서 영상의 기하학적 변환이 필요합니다. 1. 영상의 이동 변환 - Translation transformation 이동 변환은 shift라는 용어도 많이 씁니다. 가로 또는 세로 방향으로..

[파이썬 OpenCV] 영상에 스케치 필터 적용하기 - cv2.divide, cv2.GaussianBlur

황선규 박사님의 , 패스트 캠퍼스 OpenCV 강의를 공부한 내용을 정리해 보았습니다. [파이썬 OpenCV] 영상에 카툰 필터 적용하기 - cv2.bilateralFilter, cv2.Canny, cv2.bitwise_and 황선규 박사님의 , 패스트 캠퍼스 OpenCV 강의를 공부한 내용을 정리해 보았습니다. 영상에 카툰 필터 적용하기 cv2.bilateralFilter, cv2.Canny, cv2.bitwise_and 함수를 이용해서 영상에 카툰 필터를 구현하� deep-learning-study.tistory.com 저번 포스팅에서는 영상에 카툰 필터 적용하는 방법을 알아보았습니다. 이번에는 스케치 필터를 적용하는 방법에 대해 공부하겠습니다. 영상에 스케치 필터 적용하기 - cv2.divide, ..

[파이썬 OpenCV] 영상에 카툰 필터 적용하기 - cv2.bilateralFilter, cv2.Canny, cv2.bitwise_and

황선규 박사님의 , 패스트 캠퍼스 OpenCV 강의를 공부한 내용을 정리해 보았습니다. 영상에 카툰 필터 적용하기 cv2.bilateralFilter, cv2.Canny, cv2.bitwise_and 함수를 이용해서 영상에 카툰 필터를 구현하도록 하겠습니다. 1. 카툰 필터 카메라 - cv2.bilateralFiter, cv2.Canny, cv2.bitwise_and() 카툰 필터는 입력 영상의 색상을 단순화시키고, 에지 부분을 검정색으로 강조하는 방법으로 구현할 수 있습니다. 카툰 필터 카메라 구현 단계 (1) 영상을 단순화 합니다. 단순화는 양방향 필터 함수인 cv2.bilateralFilter()로 적용할 수 있습니다. (2) 윤곽선 영상을 만듭니다. 윤곽선 영상은 cv2.Canny()로 구현할 수..

[파이썬 OpenCV] 영상 잡음 제거(2) - 양방향 필터 - cv2.bilateralFilter

황선규 박사님의 , 패스트 캠퍼스 OpenCV 강의를 공부한 내용을 정리해 보았습니다. 영상 잡음 제거(2) - 양방향 필터 - cv2.bilateralFIlter 가우시안 잡음 제거에는 가우시안 필터가 효과적입니다. 이처럼 잡음이 있는 지글지글한 부분을 가우시안 필터로 완만하게 수정할 수 있습니다. 하지만 가우시안 블러를 심하게 적용하면 영상에 있는 엣지 부분에 훼손이 생깁니다. 이 단점을 극복하기 위해 양방향 필터라는 기법이 생겼습니다. 양방향 필터 - Bilateral filter 가우시안 필터를 양쪽 방향으로 두번 한다고해서 이름이 붙여졌습니다. 평균 값 필터 또는 가우시안 필터는 에지 부근에서도 픽셀 값을 평탄하게 만드는 단점이 있습니다. 양방향 필터는 기준 픽셀과 이웃 픽셀과의 거리, 그리고 ..

[파이썬 OpenCV] 영상 잡음 제거(1) - 미디언 필터 - cv2.medianBlur

황선규 박사님의 , 패스트 캠퍼스 OpenCV 강의를 공부한 내용을 정리해 보았습니다. 영상의 잡음 영상의 잡음(Noisr)는 영상의 픽셀 값에 추가되는 원치 않는 형태의 신호를 의미합니다. f(x,y) = s(x,y) + n(x,y) 여기서 f(x,y)는 획득된 영상, s(x,y)는 원본 신호, n(x,y)는 잡음을 의미합니다. 대부분의 경우 센서에서 잡음이 추가됩니다. 잡음의 종류 두 가지 잡음을 알아보겠습니다. (1) 가우시안 잡음(Gaussian noise) 대부분의 잡음 형태는 가우시안 형태입니다. 잡음이 가우시한 형태로 추가되는데 픽셀값에서 조금 더 어두워지거나 밝아지게 됩니다. (2) 소금$후추 잡음(Salt&Pepper) 요즘 소금 후추 잡음은 거의 없습니다. 잡음 제거(1) - 미디언 필..

[파이썬 OpenCV] 언샤프 마스크 필터를 활용해서 영상에 샤프닝 적용하기 - np.clip, cv2.GaussianBlur

황선규 박사님의 , 패스트 캠퍼스 OpenCV 강의를 공부한 내용을 정리했습니다. 언샤프 마스크 필터를 활용해서 영상에 샤프닝 적용하기 - np.clip, cv2.GaussianBlur 영상에 샤프닝을 적용하기 위해 언샤프 마스크가 필요합니다. 언샤프 마스크 필터링는 날카롭지 않은(unsharp) 영상, 즉 부드러워진 영상을 이용하여 날카로운 영상을 생성합니다. 1. 언샤프 마스크 필터의 이해 언샤프 마스크 필터는 기존 영상의 픽셀 + (기존 영상의 픽셀 - 가우시안 필터링으로 블러가 적용된 영상의 픽셀) 로 만들 수 있습니다. 기존 영상의 픽셀에서 픽셀 값이 변화하는 구간입니다. 가우시안 필터가 적용된 픽셀 값 입니다. 기존 영상의 픽셀 - 가우시안 필터가 적용된 픽셀 값 입니다. 위 사진을 기존 영상..

[파이썬 OpenCV] 영상에 블러링(가우시안 필터) 적용하기 - cv2.GaussianBlur

황선규 박사님의 , OpenCV 강의를 공부한 내용을 정리했습니다. 영상에 블러링(가우시안 필터) 적용하기 - cv2.GaussianBlur 이전 포스팅에서 평균값 필터 블러링에 대해 알아보았습니다. 평균값 필터 블러링의 단점은 필터링 대상 위치에서 가까이 있는 픽셀과 멀리 있는 픽셀이 모두 같은 가중치를 사용하여 평균을 계산합니다. 멀리 있는 픽셀의 영향을 많이 받아 필터 결과의 퀄리티가 낮아지게 됩니다. 이러한 단점을 보완하기 위해 가우시안 필터를 많이 사용합니다. 필터에 가우시안 함수를 사용하여 거리에 따른 가중치를 이용합니다. 2차원 가우시안 필터 마스크의 크기는 표준편차에 따라 자동으로 설정됩니다. 필터 마스크 크기 = (8$\sigma$ + 1) 또는 (6$\sigma$ + 1) 1. 가우시안..

[파이썬 OpenCV] 영상에 블러링(평균값 필터) 적용하기 - cv2.blur

황선규 박사님의 , OpenCV 강의를 공부한 내용을 정리했습니다. 블러링(평균값 필터) 적용하기 - cv2.blur 평균 값 필터(Mean filter)는 영상의 특정 좌표 값을 주변 픽셀 값들의 산술 평균으로 설정하는 방법입니다. 픽셀들 간의 그레이스케일 값 변화가 줄어들어 날카로운 에지가 무뎌지고, 영상에 있는 잡음의 영향이 사라지는 효과가 있습니다. 마스크 크기가 커질수록 평균 값 필터 결과가 더욱 부드러워 집니다. 하지만 더 많은 연산량이 필요하게 됩니다. 실제 영상에 평균 값 필터를 적용한 결과 1. OpenCV로 영상에 평균값 필터링 적용하기 - cv2.blur OpenCV에서는 cv2.blur 함수로 블러링기능을 제공하고 있습니다. [함수 설명] cv2.blur(src, ksize, dst..

반응형