import glob
img_files = glob.glob('.\\images\\*.jpg')
>> glob 은 images 폴더안에 jpg 로 되어있는 모든 파일을 가져온다
# 무한 루프
cnt = len(img_files)
idx = 0
while True:
img = cv2.imread(img_files[idx]) #폴더에 있는 이미지를 인덱스로 읽는다
if img is None: #만약 폴더가 없다면 or 아니라면
print('Image load failed!')
break
cv2.imshow('image', img) #사진을 보여준다
if cv2.waitKey(1000) >= 0: #1초 기다린다 and 입력받은키가 있다면
break
idx += 1 #사진의 인덱스 증가
if idx >= cnt:
idx = 0
cv2.destroyAllWindows()
• 그레이스케일 영상: cv2.CV_8UC1 → numpy.uint8, shape = (h, w)
• 컬러 영상: cv2.CV_8UC3 → numpy.uint8, shape = (h, w, 3)
import numpy as np
import cv2
img = np.full((400, 400, 3), 255, np.uint8)
cv2.line(img, (50, 50), (200, 50), (0, 0, 255), 5)
cv2.line(img, (50, 60), (150, 160), (0, 0, 128))
cv2.rectangle(img, (50, 200, 150, 100), (0, 255, 0), 2)
cv2.rectangle(img, (70, 220), (180, 280), (0, 128, 0), -1)
cv2.circle(img, (300, 100), 30, (255, 255, 0), -1, cv2.LINE_AA)
cv2.circle(img, (300, 100), 60, (255, 0, 0), 3, cv2.LINE_AA)
pts = np.array([[250, 200], [300, 200], [350, 300], [250, 300]])
cv2.polylines(img, [pts], True, (255, 0, 255), 2)
text = 'Hello? OpenCV ' + cv2.__version__
cv2.putText(img, text, (50, 350), cv2.FONT_HERSHEY_SIMPLEX, 0.8,
(0, 0, 255), 1, cv2.LINE_AA)
cv2.imshow("img", img)
cv2.waitKey()
cv2.destroyAllWindows()
cv2.copyTo(src, mask, dst=None) -> dst
# 마스크 영상을 이용한 영상 합성
src = cv2.imread('airplane.bmp', cv2.IMREAD_COLOR)
mask = cv2.imread('mask_plane.bmp', cv2.IMREAD_GRAYSCALE)
dst = cv2.imread('field.bmp', cv2.IMREAD_COLOR)
if src is None or mask is None or dst is None:
print('Image load failed!')
sys.exit()
cv2.copyTo(src, mask, dst)
마스크 알고리즘이 필요하다 이게 주요 기능이 될거같다
Open CV ... 마우스 (0) | 2021.02.17 |
---|---|
Open CV (0) | 2021.02.16 |
댓글 영역