거의 알고리즘 일기장

2. OpenCV_ 픽셀값 참조 본문

OpenCV

2. OpenCV_ 픽셀값 참조

건우권 2020. 9. 18. 12:45
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 순서
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()

# 영상의 픽셀 값 참조
# 하지말것 개느림, opencv나 numpy에서 제공하는 함수로 변환시킬것!!
# for y in range(h):
#     for x in range(w):
#         img1[y, x] = 0
#         img2[y, x] = (255, 0, 0)        

#이렇게 동시에 바꿔주는게 빠르다!!
img1[:, :] = 0
img2[:, :] = (255, 0, 0) 

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

cv2.destroyAllWindows()
반응형
Comments