상세 컨텐츠

본문 제목

영상의 속성과 픽셀 값 참조

영상처리/OpenCV Python

by cepiloth 2021. 5. 12. 11:37

본문

728x90
반응형

OpenCV는 영상 데이터를 numpy.ndarry로 표현

import sys
import cv2

# 영상 불러오기
img1 = cv2.imread('cat.bmp', cv2.IMREAD_GRAYSCALE)
img2 = cv2.imread('cat.bmp', cv2.IMREAD_COLOR)

numpy.ndarray
ndim : 차원 수. len(img.shape)과 같음
shape : 각 차원의 크기. (h, w) - 그레이스케일 영상 또는 (h, w, 3) - 컬러 영상
size : 전체 원소 개수
dtype : 원소의 데이터 타입. 영상 데이터는 uint8

img1, img2 조사식

 

OpenCV 영상 데이터 자료형과 NumPy 자료형

OpenCV 자료형(1채널) NumPy 자료형 구분
cv2.CV_8U numpy.uint8 8비트 부호없는 정수
cv2.CV_8S numpy.int8 8비트 부호있는 정수
cv2.CV_16U numpy.uint16 16비트 부호없는 정수
cv2.CV_16S numpy.int16 16비트 부호있는 정수
cv2.CV_32S numpy.int32 32비트 부호있는 정수
cv2.CV_32F numpy.float32 32비트 부동소수형
cv2.CV_64F numpy.float64 64비트 부동소수형
cv2.CV_16F
numpy.float16 16비트 부동소수형

• 그레이스케일 영상: cv2.CV_8UC1numpy.uint8, shape = (h, w)
• 컬러 영상: cv2.CV_8UC3numpy.uint8, shape = (h, w, 3)
파이썬에서 NumPy 에 정의된 자료형 외에 OpenCV 자료형으로도 사용 할 수 있다.

 

영상의 속성 참조 예제

#img_info.py
import sys
import cv2


# 영상 불러오기
img1 = cv2.imread('cat.bmp', cv2.IMREAD_GRAYSCALE)
img2 = cv2.imread('cat.bmp', cv2.IMREAD_COLOR)

if img1 is None or img2 is None:
    print('Image load failed!')
    sys.exit()

# 영상의 속성 참조
print('type(img1):', type(img1))
print('img1.shape:', img1.shape)
print('img2.shape:', img2.shape)
print('img1.dtype:', img1.dtype)

# 영상의 크기 참조
h, w = img2.shape[:2]
print('img2 size: {} x {}'.format(w, h))

if len(img1.shape) == 2:
    print('img1 is a grayscale image')
elif len(img1.shape) == 3:
    print('img1 is a truecolor image')

cv2.imshow('img1', img1)
cv2.imshow('img2', img2)
cv2.waitKey()

# 영상의 픽셀 값 참조
for y in range(h):
    for x in range(w):
        img1[y, x] = 255
        img2[y, x] = (0, 0, 255)        

# img1[:,:] = 255
# img2[:,:] = (0, 0, 255)

cv2.imshow('img1', img1)
cv2.imshow('img2', img2)
cv2.waitKey()

cv2.destroyAllWindows()

 

출력결과

 

728x90
반응형

'영상처리 > OpenCV Python' 카테고리의 다른 글

OpenCV 그리기 함수  (0) 2021.05.12
영상의 생성, 복사, 부분 영상 추출  (0) 2021.05.12
Matplotlib 사용하여 영상 출력하기  (0) 2021.05.12
OpenCV 주요 함수 설명  (0) 2021.05.12
BMP 파일 출력 하기  (0) 2021.05.12

관련글 더보기

댓글 영역