아마도 Python으로 무언가를 하시는 분들은 Jupyter를 많이 사용하실 텐데요. 그게 웹브라우저가 되었든, VSCode를 사용해서든 말이죠. 그런데, OpenCV를 사용하게 되면, 새창을 띄우는 일이 많아지는데, 그때 Jupyter가 살짝 커널이 오류가 날때가 많습니다. 더더욱이 로봇이나 다른 PC에서 원격으로 붙어서 Jupyter를 쓰는 경우는 OpenCV등 새창을 띄워서 결과를 봐야하는 경우는 불편할때가 많습니다. 그럴때 사용할 수 있는 IPython의 기능이 있습니다.
IPython의 display가 제공하는 display 기능을 사용하면 됩니다. 일단, 필요한 아이들을 import 하구요.
Jupyter의 출력단에 이미지를 영상으로 보여줄, display_cv라는 함수를 하나 만들겠습니다. 이 함수는 opencv에서 카메라 자원을 열어서 frame을 받아서, jpg로 메모리 버퍼에 저장하고, 그걸 IPython의 display가 제공하는 Image 명령으로 jpg로 만들어서 display를 하도록 합니다.
이제, 방금 만든 display_cv 함수를 이용해서, 1초 정도 화면에 OpenCV에서 받은 영상을 보여주는 코드입니다. 이걸 실행하면,
이렇게 영상이 재생됩니다.~^^
반응형
'Software > Python' 카테고리의 다른 글
맥에서 Conda 설치 후 터미널에서 base 환경 자동 진입 해제 (0) | 2023.06.09 |
---|---|
Jupyter Notebook에서 GUI 같은 느낌의 작업을 원하세요? ipywidgets (8) | 2020.04.08 |
Python에서 두 개 이상의 자료를 묶는 zip을 이용해서 LIST형을 DICT 형으로 변환하기 (20) | 2020.03.16 |
numpy의 where 함수 사용법 (14) | 2019.08.05 |
Jupyter notebook 매직 커맨드로 모듈 버전, OS 정보 등을 출력하는 watermark 모듈 (16) | 2019.07.29 |
파이썬에서의 복사 얕은 복사와 깊은 복사 (10) | 2019.07.22 |
Python에서 미분(차분)을 한다는 것. 데이터, 혹은 함수 (8) | 2019.07.15 |