본문 바로가기

인공지능 연구노트/OpenCV

Open CV 사용하여 화면에 이미지 연속으로 보여주기

OpenCV 라이브러리를 사용하여 이미지 연속으로 보여주기

특정 폴더에 있는 이미지들을 화면에 연속적으로 보여주는 방법.

아래 링크에 있는 영상과 같은 모습으로 실행되도록 코드를 짜보자.

 

 

OpenCV 사용하여 화면에 이미지 연속으로 보여주기

OpenCV 라이브러리를 사용하여 이미지 연속으로 보여주기 특정 폴더에 있는 이미지들을 화면에 연속적으...

blog.naver.com

 

STEP 1. 필요한 라이브러리 import

STEP 2. glob을 사용하여 images 폴더 내 jpg로 끝나는 모든 파일을 리스트 형식으로 저장.

=> 이미지 경로 설정에 대한 설명 : 현재 작업 중인 폴더 안에 있는 images 폴더 내 jpg로 끝나는 모든 파일을 리스트 형식으로 저장한다는 뜻.

=> 반복문은 이미지 파일들이 제대로 불러왔나 출력해보고 싶어서 넣어봤습니다.

참고로 현재 작업 중인 디렉토리는 아래와 같이 생겼습니다.

OpenCV_Workspace 폴더 내에 images폴더와 작성 중인 .py 파일이 있네요.

images 폴더 안에서도 .jpg로 끝나는 이미지들만 연속적으로 화면에 띄울 겁니다.

 

STEP 3. 이미지 띄울 창 만들기

여기서 cv2.namedWindow()나 cv2.setWindowProperty() 등의 함수는 저도 외우고 쓰지 않아요.

그냥 그때그때 구글링하거나 OpenCV 홈페이지 가서 찾아서 사용합니다.

 

STEP 4. 이미지를 연속으로 보여주기 위한 코드를 짠다.

여기서는 총 다섯개의 이미지를 화면에 연속적으로 보여주기 때문에 이 5개의 이미지가 각각 화면에 한 번씩 돌고 마지막 다섯번째 이미지가 끝나면 다시 첫 번째 이미지를 보여줘야 하기 때문에!

이미지 개수를 나타내는 cnt변수와 현재 몇번째 이미지를 보고 있는지 확인할 수 있는 idx 변수 하나 만들어줍니다.

그리고 이미지 하나 나타나면 그 다음 이미지를 보여줘야 하니까 idx가 1씩 더해지는 것이고.

화면에 출력되는 이미지가 총 이미지 개수와 같거나 크면 다시 처음으로 돌아가서 첫번째 이미지를 보여주는 코드도 써주고. 하면 이미지들이 연속적으로 짠!짠! 화면에 출력됩니다.

중간에 Line30~31은,

ESC 키로 종료할 수 있는 종료 조건을 넣은 것인데요.

이미지 하나가 1초 정도 화면에 보이는데 중간에 창 닫아버리고 싶으면 ESC 키를 누르면 된다는 것입니다.

끝!

꼭 한 번 손으로 직접 쳐 보면서 연습하고 코드도 조금씩 바꿔가면서 해보시기 바랍니다 :D