반응형

분류 전체보기 823

[파이썬 OpenCV] 마스크 연산과 ROI - cv2.copyTo 함수 이용 방법

황선규 박사님의 OpenCV 강의를 공부하면서 정리하였습니다. 마스크 연산과 ROI 마스크 연산과 ROI에 대해 알아보도록 하겠습니다. ROI Reigion of Interest, 관심 영역 영상에서 특정 연산을 수행하고자 하는 임의의 부분 영역을 의미합니다. 마스크 연산 OpenCV는 일부 함수에 대해 ROI 연산을 지원하며, 이때 마스크 영상을 인자로 함께 전달해야 합니다. OpenCV 함수 (cv2.copyTo(), cv2.calcHist(), cv2.bitwise_or(), cv2.matchTemplater(), etc....) 마스크 영상은 cv2.CV_8UC1 타입(그레이스케일 영상) 마스크 영상의 픽셀 값이 0이 아닌 위치에서만 연산이 수행됩니다. -> 0과 1의 차이는 눈으로 확인하기 힘드..

[파이썬 OpenCV] 영상의 생성, 복사, 부분 영상 추출

영상의 생성, 복사, 부분 영상 추출 파이썬 OpenCV라이브러리를 활용해서 영상의 생성, 복사, 부분 영상 추출하는 법을 알아보겠습니다. 1. 지정한 크기로 새 영상 생성하기 numpy 명령어를 이용해 배열을 생성하여 영상으로 이용할 수 있습니다. 4가지 방법이 있습니다. (a) numpy.empty(shape, dtype=np.unit8, ...) -> arr : 임의의 값으로 초기화된 배열을 생성 (b) numpy.zeros(shape, dtype=np.unit8, ...) -> arr : 0으로 초기화된 배열을 생성 (c) numpy.ones(shape, dtype=np.unit8, ...) -> arr : 1로 초기화된 배열을 생성 (d) numpy.full(shape, full_vaule, d..

[파이썬 OpenCV] 영상의 속성과 픽셀 값 참조

영상의 속성과 픽셀 값 참조 OpenCV는 영상 데이터를 numpy.ndarray로 표현합니다. 영상의 속성을 참조하는 명령어는 다음과 같습니다. .ndim : 차원 수, len(img.shape)와 같음 .shape : 각 차원의 크기, 흑백(h,w), 컬러(h,w,3), png(h,w,4) .size : 전체 원소 개수 .dtype : 원소의 데이터 타입. 영상 데이터는 unit8 (1) OpecCV 영상 데이터 자료형과 NumPy 자료형 추후에 OpenCV 자료형으로 입력값을 넣어줘야 하는 경우가 있으므로 기억해 둡시다. (2) 영상의 속성 참조 예제 영상의 속성을 확인하는 코드를 보겠습니다. import sys import cv2 # 영상 불러오기 img1 = cv2.imread('cat.bmp'..

[파이썬 OpenCV] 이미지 슬라이드 쇼 - Image Slide Show

이미지 슬라이드쇼 OpenCV를 이용하여 이미지를 슬라이드쇼 해주는 프로그램입니다. 하나하나 순서대로 알아보도록 하겠습니다. 1. 이미지 파일을 모두 img_files 리스트에 추가합니다. 이미지 파일을 리스트에 추가하기 위해서는 두 가지 방법이 있습니다. (1) glob 함수 이용 # 이미지 파일을 모두 img_files 리스트에 추가 # 1. glob 함수 이용 # 특정 패턴의 문자열에 있는 파일들을 다 불러옴 images 폴더 밑에 jpg로 끝나는 파일을 다 불러옴 img_files = glob.glob('.\\images\\*.jpg') (2) os.listdir 이용 # 2. os.listdir 이용 file_list = os.listdir('.\\images') # 특정 폴더에 있는 이미지 파..

[파이썬 OpenCV] Matplotlib를 이용한 영상 출력

Matplotlib를 이용한 영상 출력 Matplotlib를 사용하여 영상 출력하는 방법을 알아보도록 하겠습니다. 영상을 불러올 때는 cv2.imread() 함수를 이용합니다. cv2.imread() 함수로 불러온 영상의 색상정보는 BGR 순서이므로 이를 RGB 순서로 변경해야 합니다. 따라서 cv2.cvtColor() 함수를 사용해야 합니다. 또한 Matplotlib에서 그레이스케일 영상을 출력할 때 plt.imshow() 함수에서 컬러맵을 cmap='gray'로 지정해야 합니다. 이제 코드를 보겠습니다. 1. 컬러 영상 출력 import matplotlib.pyplot as plt import cv2 #컬러 영상 출력 imgBGR = cv2.imread('cat.bmp') # cv2.imread는 B..

[파이썬 OpenCV] OpenCV 주요 함수 설명

OpenCV 주요 함수 설명 OpenCV 기본 명령어에 대해 알아보도록 하겠습니다. 1. 영상 파일 불러오기 cv2.imread 명령어를 이용하면 영상 파일을 불러올 수 있습니다. cv2.imread(filename, flags=None) -> retval filename : 불러올 영상 파일 이름(문자열) flags : 영상 파일 불러오기 옵션 플래그 retval : 반환값, 불러온 영상 데이터(numpy.ndarray) # BGR 컬러 영상으로 읽기 (기본값), shape = (rows, cols, 3) img = cv2.imread('cat.bmp', cv2.IMREAD_COLOR) # 그레이스스케일 영상으로 읽기, shape = (rows, cols) img = cv2.imread('cat.bmp..

[파이썬 OpenCV] 이미지 불러오기

이미지 불러오기 OpecCV 라이브러리를 이용하여 이미지를 불러오는 방법을 알아보겠습니다. import cv2 import sys img = cv2.imread('cat.bmp') # imread로 영상을 불러온다. if img is None: print('Imager load failed!') # 이미지가 없으면 출력 sys.exit() cv2.namedWindow('image') # OpenCV에서 지원하는 창을 생성하는 명령어 cv2.imshow('image', img) # 첫 번째는 어떤 창에 불러올 것이냐, 두 번째는 어떤 것을 불러올 것이냐 cv2.waitKey() # 키보드입력을 누를떄까지 보여줌 cv2.destroyAllWindows() # 모든 창을 닫음 위 명령어를 실행하면 윈도우 창에..

[통계학] 26. 모비율에 대한 통계적 추론

(k-mooc 통계학의 이해2, 여인권)을 수강하면서 공부한 내용을 정리해보았습니다. 구간추정에 기반한 표본크기결정 방법을 알아보겠습니다. 모비율 추론을 하는데 있어 주의해야 할 사항을 알아보겠습니다. 1. 모비율 추론 모비율을 추론할 때는 성공확률에 관심을 갖는 베르누이 확률을 이용합니다. 점추정량은 다음과 같이 구할 수 있습니다. 모비율($\theta$)를 표본비율(P)로 추정한 것입니다. 또한 평균과 같은 형태이므로 표본크기가 클 때 중심극한정리를 이용할 수 있습니다. 정규근사는 다음과 같은 조건이 있습니다. 2. 모비율의 구간추정 모비율의 구간추정하는 방법을 알아보겠습니다. (1) 중심축량을 구합니다. (2) 신뢰기준을 설정하고 신뢰구간을 구합니다. (3) 미지모수($\theta$)가 포함되어 있..

[통계학] 25. 모분산에 대한 통계적 추론

(k-mooc 통계학의 이해2, 여인권)을 수강하면서 공부한 내용을 정리해보았습니다. 분산추론을 위한 중심축량에 대해 알아보겠습니다. 분산과 표준편차의 구간추정과 가설검정법을 알아보겠습니다. 1. 카이제곱분포 - chi-square distribution 분산의 중심축량은 카이제곱분포로 표현할 수 있습니다. [자유도에 따른 카이제곱분포 형태] 자유도가 클수록 옆으로 퍼진다는 것을 확인할 수 있습니다. [카이제곱분포에서의 분위수] 카이제곱분포는 비대칭입니다. 비대칭이므로 양쪽의 면적이 다릅니다. 2. 구간추정 (1) 중심축량을 이용하여 다음과 같은 식을 도출할 수 있습니다. (2) 신뢰구간은 [L < $\sigma^2$

[통계학] 24. 모평균 추론을 위한 표본크기 결정

(k-mooc 통계학의 이해2, 여인권)을 수강하면서 공부한 내용을 정리해보았습니다. 구간추정에 기반한 표본크기결정 방법을 알아보겠습니다. 가설검정에 기반한 표본크기결정 방법을 알아보겠습니다. 1. 모수추정을 위한 표본크기 결정 표본의 크기는 모수추정의 정확도 및 신뢰도에 영향을 줍니다. 신뢰도는 신뢰수준으로 결정하고 정확도는 오차범위(오차: $\overline{X} - \mu$)로 결정합니다. 1.1 정규분포의 경우 오차범위를 이용한 표본크기 결정 정규분포의 경우 오차범위를 이용해서 표본크기를 결정할 수 있습니다. (1) 100(1-a)% 신뢰수준에서 허용오차범위가 $\pm\delta$라고 하면 다음과 같이 표시할 수 있습니다. (2) 정규분포의 경우 중심극한정리에 의해 다음과 같습니다. (3) 이 식..

반응형