라벨이 opencv인 게시물 표시

[Jetson] venv(가상환경)에 OpenCV build(설치) 연결

이미지
venv에 OpenCV build(설치) 혹은 오류 해결 방법 python3.8을 우회 설치하면 OpenCV build 작업이 필요합니다. python3.8 설치는 여기 , OpenCV build는 여기 를 참고하세요. venv에 OpenCV 설치 위 방법으로 OpenCV를 설치하면 아래 명령어를 통해 cpython~~gnu.so 파일 위치를 찾습니다. * 이 파일은 OpenCV python 바인딩 제공 공유라이브러리 파일로 python 인터프리터와 OpenCV C++코드 연결 sudo find / -name "cv2.cpython*" Copy 위 파일을 venv에 있는 lib에 연결해줍니다. 본인이 생성한 virtualenv의 lib 경로로 이동한 뒤, 심볼링 링크를 연결합니다. cd ~/myenv/gstreamer/lib/python3.8/site-packages/ ln -s /usr/lib/python3/dist-packages/cv2/python-3.8/cv2.cpython-38-aarch64-linux-gnu.so cv2.so Copy 제가 테스트한 virtualenv 이름은 gstreamer이고 경로는 ~/myenv/gstreamer입니다. 본인 PC 경로를 "~/myenv/gstreamer" 부분에 입력하세요. 이후엔 위 find 명령으로 나온 gnu.so 파일의 경로를 심볼링 링크로 cv2.so로 연결해줍니다. ll 명령어를 통해 심볼링 링크가 제대로 생성되었는지 확인할 수 있습니다. ll Copy 심볼릭 링크가 제대로 생성되었다면 pip에 opencv가 없지만 cv2가 import됨을 확인할 수 있습니다. pip list | grep cv python import cv2 cv2.__version__ Copy * pip install opencv-python을...

[Jetson] Jetson Nano OpenCV 설치(build) 및 가속 활성화

이미지
Jetson Nano OpenCV build 및 가속 활성화 방법 Jetson Nano에서 YOLOv8이상의 버전을 사용하려면 JetPack에 기본으로 깔린 python, opencv, torch 등을 새로 설치해야합니다. python3.8 설치 방법은 여기 , Pytorch 1.11.0 & Torchvision 0.12.0에 대한 설치 방법은 여기 를 참고해주세요. OpenCV build OpenCV 설치에 앞서 python3.8 버전이라 가정하고 진행하겠습니다. JetPack 4.6은 OpenCV 4.1.1이 기본으로 설치되어 있고 OpenCV CUDA 가속 활성화가 안되어있습니다. * jetson_release 명령어 사용은 여기 를 참고하세요. 저는 python3.8을 우회 설치했기 때문에, 3.8 버전에 호환되는 OpenCV 4.7.0을 설치하겠습니다. * 기본으로 설치된 python3.6을 그대로 사용하실 분들은 OpenCV 4.5.0 버전을 사용하세요. https://github.com/Qengineering/Install-OpenCV-Jetson-Nano 에 친절하게도 sh를 실행하면 자동으로 OpenCV를 설치할 수 있도록 공유하고 있습니다. 위 사이트에서 제공하는 OpenCV 버전 중 본인이 다운받으려는 버전을 참고하여 아래 명령어를 수행합니다. 단, 설치를 진행하기 전 해당 사이트를 보면 swap 용량을 2GB -> 4GB로 늘리기를 권장하고 있습니다. swap 용량 늘리기는 여기 를 참고하세요. * 용량을 늘리지 않고 진행해도 설치에 문제는 없고 설치 속도가 조금 느림 wget https://github.com/Qengineering/Install-OpenCV-Jetson-Nano/raw/main/OpenCV-4-10-0.sh sudo chmod 755 ./OpenCV-4-7-0.sh ./OpenCV-4-7-0.sh Co...

[opencv-python] ModuleNotFoundError: No module named 'skimage'

해결방법 pip install scikit-image 참고문헌 [1]  https://scikit-image.org/docs/dev/install.html

[opencv-python] cv2.rectangle() TypeError: an integer is required (got type tuple)

이미지
cv2.rectangle() TypeError: an integer is required (got type tuple) 'tuple에 integer형이 필요 '하다는 에러입니다. cv2.rectangle() parameter를 보면 start_point와 end_point는 tuple type으로 두 개의 좌표 값을 가져야 한다고 나옵니다. 이때 start와 end_point는 모두 int형의 값을 취해야 합니다. Example 1 import cv2 img = cv2.imread( "image/cat.jpg" ) rect_img = cv2.rectangle(img , ( 0 , 0 ) , ( 100.1 , 100 ) , ( 0 , 0 , 255 ) , - 1 ) cv2.imshow( "rect" , rect_img) cv2.waitKey() # 출력 (에러) # Traceback (most recent call last): #   File "D:/python_projects/mine/blog/retacgle_error.py", line 5, in <module> #    rect_img = cv2.rectangle(img, (0, 0), ( 100.1 , 100), (0, 0, 255), -1) # TypeError: an integer is required (got type tuple) start_point에서 int를 취하지 않아 에러가 발생했습니다. Example 2 import cv2 img = cv2.imread( "image/cat.jpg" ) rect_img = cv2.rectangle(img , ( 0 , 0 ) , ( 100 , 100 ) , ( 0 , 0 , 255 ) , - 1 ) cv2.imshow( "rect" , r...