반응형
OpenCV Python 개발 환경 만들기 - Windows & Ubuntu
OpenCV/OpenCV Python 개발환경2023. 10. 19. 21:27OpenCV Python 개발 환경 만들기 - Windows & Ubuntu

OpenCV Python 개발 환경 만들고 간단한 예제 프로그램을 실행하는 과정을 다룹니다. 2023. 6. 16 최초작성 1. 우선 다음 포스트를 참고하여 파이썬 개발환경을 만드세요. Visual Studio Code와 Miniconda를 사용한 Python 개발 환경 만들기( Windows, Ubuntu) https://webnautes.tistory.com/1842 2. 이제 Visual Studio Code에서 OpenCV Python을 위한 폴더를 생성합니다. 메뉴에서 File > Open Folder를 선택한 후, 원하는 위치로 이동하여 왼쪽 위에 있는 새 폴더를 클릭합니다. 여기에선 opencv 폴더를 생성했습니다. 3. 새로 생성한 opencv 폴더로 이동한 후, 오른쪽 하단에 있는 폴더 ..

Python/Python 예제 코드2023. 10. 19. 20:32파이썬 웹캠 영상 전송 TCP 서버/클라이언트 예제

파이썬의 TCP 소켓을 사용하여 웹캠에서 캡쳐한 이미지를 전송하는 서버와 클라이언트를 간단히 만들었습니다. 웹캠으로부터 이미지 캡쳐는 OpenCV를 사용하였습니다. 서버에는 두 종류의 쓰레드를 생성합니다. 웹캠으로부터 캡처한 이미지를 큐에 삽입하는 쓰레드와 클라이언트가 접속하면 큐에서 이미지를 꺼내어 클라이언트에 전송하는 쓰레드입니다. 서버에서 이미지를 전송하기 전에 넘파이 배열을 압축한 후, 최종적으로 String으로 변환해야 하고 클라이언트에서는 수신된 String 데이터를 넘파이 배열로 변환하여 화면에 보여줍니다. 서버 프로그램을 실행 후, 웹캠 영상이 화면에 보여지면 클라이언트 프로그램을 실행하세요. 여러 개 실행가능한데 몇 개 까지 가능한지 확인 안해봤습니다. 파이썬에서 소켓 사용하는 방법에 대..

파이썬 클라이언트 / 서버  소켓 예제
Python/Python - 소켓2023. 10. 19. 20:31파이썬 클라이언트 / 서버 소켓 예제

파이썬으로 작성한 TCP 서버/클라이언트 소켓 예제코드입니다. 클라이언트가 서버에 접속하여 통신이 시작되는 방식입니다. 1. TCP 소켓 2. 간단한 에코 서버, 클라이언트 예제 3. 쓰레드를 사용한 에코 서버와 클라이언트 예제 최초작성 2019. 9. 27 최종작성 2023. 7. 23 1. TCP 소켓 파이썬에서 TCP(Transmission Control Protocol)를 사용하려면 소켓 타입을 socket.SOCK_STREAM으로 지정하고 socket.socket 함수를 사용하여 소켓 객체를 생성하면 됩니다. TCP의 장점은 다음과 같습니다. 1. 수신자가 전달 받지 못한 패킷을 발신자가 감지하여 재전송하기 때문에 신뢰성이 높습니다. 2. 발신자가 전송한 순서대로 수신자에서 읽게 됩니다. UDP..

두 직선 사이의 각도 구하는 OpenCV Python 예제
OpenCV/OpenCV 강좌2023. 10. 18. 22:29두 직선 사이의 각도 구하는 OpenCV Python 예제

두 직선 사이의 각도를 구하는 OpenCV Python 예제 코드입니다. 2023.2.25 최초작성 두 개의 직선을 그리면 사이 각을 출력해줍니다. 왼쪽 마우스 버튼을 클릭하여 첫번째 직선의 출발점을 지정합니다. 마우스 왼쪽 버튼을 클릭하여 첫번째 직선의 끝점을 지정해주면 직선이 그려집니다. 마우스 왼쪽 버튼 클릭으로 두번째 직선의 시작점을 지정해줍니다. 마우스 왼쪽 버튼 클릭으로 두번째 직선의 끝점을 지정해주면 직선이 그려집니다. 터미널에 두 직선의 사이각이 출력됩니다. 직선으로 생성되는 두 개의 각도 중 작은 각도가 출력됩니다. 스페이스바 키를 누르면 화면이 지워집니다. 이제 다시 직선을 그려서 각도를 다시 출력해볼 수 있습니다. 전체 코드입니다. import cv2 import numpy as np..

컨투어 내부에 점이 있는지 파악하는 OpenCV Python 예제
OpenCV/OpenCV 강좌2023. 10. 18. 22:28컨투어 내부에 점이 있는지 파악하는 OpenCV Python 예제

OpenCV 컨투어 내부에 점이 있는지 파악하는 Python 예제 코드입니다. 2023. 4. 17 최초작성 아래 그림에서 컨투어는 파란 도형 주변에 파란색 선으로 검출된 상태입니다. 도형 내부를 클릭하면 양수가 출력되며 도형 외부를 클릭하면 음수가 출력됩니다. 수치는 컨투어에 근접할 수록 작은 숫자가 됩니다. 컨투어 위에선 0이 됩니다. 전체 소스 코드입니다. import cv2 def mouse_event(event, x, y, flags, param): global cx,cy,dist, img, img_color if event == cv2.EVENT_FLAG_LBUTTON: img = img_color.copy() cx = x cy = y dist = cv2.pointPolygonTest(cont..

가위바위보를 인식하는 Mediapipe hand Python 예제
Deep Learning & Machine Learning/MediaPipe2023. 10. 17. 22:14가위바위보를 인식하는 Mediapipe hand Python 예제

Python용 Mediapipe의 손가락 인식 코드를 수정하여 가위, 바위, 보를 인식하여 화면에 출력하는 예제 코드를 만들었습니다. OpenPose의 손인식에 비해 주위 환경 영향이 거의 없으며 손가락 인식이 끊김없이 지속적으로 잘 됩니다. 2021. 02. 19 최초작성 테스트 영상입니다. 실행 결과를 보여주고 있는 유튜브 영상입니다. https://youtu.be/iFeu2xpIiiU?feature=shared 전체 소스코드입니다. # 원본 코드 https://google.github.io/mediapipe/solutions/hands.html """The 21 hand landmarks.""" # 손가락 위치 정의 참고 https://google.github.io/mediapipe/images/m..

개발 환경/Macbook M12023. 10. 16. 21:53MacOS 에러 – zsh: command not found: python 해결방법

homebrew를 사용하여 설치된 파이썬을 터미널에서 사용하려고 하려는 경우 다음 에러가 발생할 수 있습니다. zsh: command not found: python 다음처럼 homebrew를 사용하여 설치된 python3를 python으로 실행 가능하도록 해주면 됩니다. echo "alias python=/opt/homebrew/bin/python3" >> ~/.zshrc 이제 터미널을 다시 실행하면 homebrew를 사용하여 설치된 python3가 python명령으로 실행됩니다. 2022. 7. 23. 최초작성 참고 https://exerror.com/zsh-command-not-found-python/

Python/Python 개발환경2023. 10. 15. 07:21Protobuf compiler not found 해결방법

Python 패키지를 설치하다가 Protobuf compiler not found 에러가 발생한 경우 해결방법입니다. 2023. 2. 22 최초작성 https://github.com/protocolbuffers/protobuf/releases 에서 이름에 win64.zip가 붙은 파일을 다운받아서 적당한 곳에 압축을 풀어주고 해당 폴더안에 있는 bin 폴더의 경로를 시스템 변수 PATH에 추가해줍니다. 글 작성 시점에서 다운로드 받은 최신 릴리즈 버전은 protoc-22.0-win64.zip 입니다. 주의할점은 명령 프롬프트창을 새로 열어야 추가한 PATH 가 반영됩니다. 참고 https://github.com/nanopb/nanopb/issues/713

Python/Python 개발환경2023. 10. 15. 07:20Conda 환경에서 pip와 conda를 사용한 Python 패키지 설치 위치 확인

Conda 환경에서 pip와 conda를 사용하여 패키지 설치시 어디에 설치되는지 확인해보았습니다. 윈도우 10에 설치된 Miniconda에서 확인한 결과입니다. 2022. 4. 13 Miniconda에 다음 두 개의 가상환경 base와 newenv가 생성되어 있는 상태입니다. 각각 가상환경을 위한 파일들이 있는 위치가 옆에 표시되어 있습니다. (base) C:\Users\webnautes>conda env list # conda environments: # base * C:\Users\webnautes\miniconda3 newenv C:\Users\webnautes\miniconda3\envs\newenv 두 개의 명령 프롬프트에 하나는 base 다른 하나는 newenv로 가상환경을 변경해두고 테스트..

OpenCV Python : 깊이 이미지 depthmap을 화면에 출력하기
OpenCV/OpenCV 강좌2023. 10. 15. 07:08OpenCV Python : 깊이 이미지 depthmap을 화면에 출력하기

OpenCV Python을 사용하여 깊이 이미지 depthmap을 화면에 보여주는 예제코드입니다. 2023. 8. 6 최초작성 코드에서는 다음 링크에 있는 depthmap 파일을 다운로드하여 사용했습니다. https://github.com/unclearness/pyrgbd/blob/master/data/cmu_panoptic/171026_cello3/depth_00000.png 실행해보면 다음처럼 보입니다. 깊이 이미지에 대응하는 컬러 이미지는 다음과 같습니다. 출처 – https://github.com/unclearness/pyrgbd/blob/master/data/cmu_panoptic/171026_cello3/color_00000.png 테스트에 사용한 코드입니다. import cv2 import ..

반응형
image