[ch01] Python 시작하기 - 실전 코딩: 이미지 슬라이드쇼

빨주노·2021년 8월 4일
0
  • 이미지 슬라이드쇼

    • 특정 폴더에 있는 모든 이미지 파일을 이용하여 슬라이드쇼를 수행
  • 구현할 기능

    • 특정 폴더에 있는 이미지 파일 목록 읽기
    • 이미지를 전체 화면으로 출력하기
    • 일정 시간동안 이미지를 화면에 출력하고 , 다음 이미지로 교체하기 (무한루프)
  1. 특정 폴더에 있는 이미지 파일 목록 읽기
  • os.listdir()
import os
file_list = os.listdir('.\\images')
img_files = [file for file in file_list if file.endwith('.jpg')]
  • glob.glob
import glob
img_files = glob.glob('.\\images\\*.jpg')
  1. 전체 화면 영상 출력 창 만들기
  • 먼저 cv2.WINDOW_NORMAL 속성의 창을 만든 후, cv2.setWindowProperty() 함수를 사용하여 전체 화면 속성으로 변경
cv2.namedWindow('image', cv2.WINDOW_NORMAL)
cv2.setWindowProperty('image', cv2.WND_PROP_FULLSCREEN, cv2.WINDOW_FULLSCREEN)
  1. 불러온 영상을 반복적으로 출력하기
cnt = len(img_files)
idx = 0
While True:
    img = cv2.imread(img_files[idx])
    if img is None:
        print('Image load failed!')
        break
    cv2.imshow('image', img)
    if cv2.waitKey(1000) >= 0:
        break # 임의의 키가 눌리면 슬라이드 종료
    idx += 1
    if idx >= cnt:
        idx = 0

그 결과, 다음 사진들이 1000ms 간격으로 자동으로 바뀌고, 임의의 키를 누르면 슬라이드가 종료된다.




profile
딥 하게 딥러닝 하는중

0개의 댓글