주지하다시피 Jetson TX2 개발보드에는 온보드 형태의 CSI카메라가 장착되어 있다.
기존에 Jetpack 3.1에서 영상을 받아올때는 OpenCV 3.3.0을 Build & Install 방식으로 설치해서 gstream으로 받아오는 형태로 비디오 영상을 받아왔는데 Jetpack 3.2에서는 OpenCV 3.3이 설치과정에서 설치가 되므로 영상 받아오는것도 바로 되는줄 알았다.
하지만 Jetpack 3.2에서 똑같은 OpenCV가 포함된 Project 를 불러오면 Build 는 정상적으로 진행되지만 실행하게 되면
Cannot open camera 라는 메시지와 함께 정상적으로 실행되지 않는다.
https://devtalk.nvidia.com/default/topic/1031497/jetson-tx2/onboard-camera-stream-changed-in-jetpack-3-2-/ 에 올라온 답변을 보면
OpenCV in Jetpack 3.2 does not enable gstreamer. Please not install OpenCV via Jetpack 3.2 but build/install manually.
즉 Jetpack 3.2에 포함된 OpenCV는 gstream 이 포함되지 않아서 발생하는 문제이고 OpenCV는 수동으로 Build/install해야 한다는 거다.
아래 링크를 따라서 스크립트를 다운로드 하고 OpenCV를 설치해본다.
https://github.com/AastaNV/JEP/blob/master/script/install_opencv3.4.0.sh
$ ./install_opencv3.4.0.sh
Usage: ./install_opencv3.4.0.sh <Install Folder>
스크립트를 실행하려면 폴더를 지정해야 한다는 에러 메세지가 나오므로 아무 폴더를 만들어서 지정한다.
Build 후 Install까지 성공적으로 진행되면 일단 재부팅
재부팅 후 해당 프로그램을 다시 실행하면 정상적으로 영상이 나타나는것을 확인할 수 있다.
참고로 파이썬에서 OpenCV를 통해 영상을 받아오는 부분은 다음과 같다.
import cv2
#Start capture video from Camera
cap = cv2.VideoCapture("nvcamerasrc ! video/x-raw(memory:NVMM), width=(int)1280, height=(int)720, format=(string)I420, framerate=(fraction)30/1 ! nvvidconv flip-method=4 ! video/x-raw, format=(string)BGRx ! videoconvert ! video/x-raw, format=(string)BGR ! appsink")
여기서 굵은 글씨 부분은 I420 또는 BGRx 둘다 쓸 수 있는데 어떤 이유인지 BGRx가 좀더 응답속도가 빠르다.
터미널에 아래와 같은 에러 메세지가 출력되는데 어떤 이유인지는 좀더 살펴봐야겠다.
VIDEOIO ERROR: V4L: device nvcamerasrc ! video/x-raw(memory:NVMM), width=(int)1280, height=(int)720, format=(string)I420, framerate=(fraction)30/1 ! nvvidconv flip-method=4 ! video/x-raw, format=(string)BGRx ! videoconvert ! video/x-raw, format=(string)BGR ! appsink: Unable to query number of channels
'Computer > nvidia Jetson Board' 카테고리의 다른 글
jetson nano xubuntu 20.04에서 opencv 설치 (0) | 2022.05.10 |
---|---|
Jetpack 3.2 발표 (1) | 2018.03.23 |
opencv를 사용하여 Jetson 내장 Camera 영상 받아오기 (0) | 2018.01.16 |
using xbox 360 wireless controller on Jetson tx2 (0) | 2017.12.28 |
Jetson TX2 원격 nsight 개발 (5) | 2017.10.16 |