파이썬
CV2로 IPCAMERA 영상을 출력해보자
cv2로 ipcamera를 연결하려면 rtsp 주소가 필요합니다. 여기서 RTSP란 Real Time Streaming Protocol의 약자로 스트리밍 미디어 서버를 컨트롤 하기위한 네트워크 프로토콜입니다. RTSP 주소 알아보기 IPCAMERA(이하 카메라라고 칭함)가 부여 받은 아이피 주소를 알아야합니다. 카메라 제조사의 소프트웨어를 보시면 ip finder 프로그램을 제공합니다. 192.168.0.48 이런 아이피 주소를 부여 받습니다(자신의 아이피 주소마다 상이함) 동영상플레이어로 주소열기(네트워크 스트림)하고 아래 예시의 주소를 입력하면 rtsp 접속이 가능합니다 rtsp 포트번호는 따로 설정하지 않으면 기본값이 554입니다 한화 테크윈 : rstp://카메라IP:554/profile2/med..
파이썬 리스트 자료형 정복
파이썬에서 리스트는 순서를 가진 집합 자료형으로 아래와 같이 선언 할 수 있다. 다른 언어에서의 배열(Array)이라고 생각하면 된다. test = [] test = list() 리스트내 특정 항목이 있는지 검사 test 리스트 안에 'python' 이라는 문자열이 있는지 확인 test = ['java', 'html', 'python', 'coding'] if 'python' in test : print('존재합니다') 결과 : 존재합니다가 출력 두 개의 리스트를 합치기 a = ['가','나','다'] b = ['a','b','c'] c = a + b 결과 : c = ['가', '나', '다', 'a', 'b', 'c'] 간단하게 + 연산자를 통해 합칠 수 있다 리스트 인덱싱 및 슬라이싱 리스트 인덱싱..
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FmX4PS%2FbtrR1ogpD4R%2FpQBKYIjNULGotksWkq3SyK%2Fimg.jpg)
Jetson Nano에서 Yolov5 구동하기
1. OS 설치 SD카드에 OS를 설치해줘야 한다. 필자의 경우 rufus-3.20를 통해 jetpack 4.5.1을 SD카드에 설치했다 jetpack 파일은 https://developer.nvidia.com/embedded/downloads 여기에서 다운로드 하면된다 2. 필요한 모듈 설치 및 환경 설정 Swap 공간 설정 필자가 사용하는 나노보드의 메모리 용량은 2GB이다. 여러분은 4GB의 나노보드를 가지고 있을수도 있지만 yolo를 구동하기엔 4GB로도 여유롭지 못한 상황이다 # 일단 업데이트를 해줍시다 sudo apt-get update sudo apt-get upgrade # nano editor 설치. 다른 에디터를 사용하셔도 무방합니다 jetpack엔 기본적으로 vi가 설치되어있습니다 s..
파이썬 답게 코딩해보자 if condition
pytorch를 공부하다가 아래 코드를 무작정 가져다 쓰기만 했다. 그러다 문득 변수 초기화할때 if문으로 변수를 지정하는것이 눈에 띄었다. device = 'cuda' if torch.cuda.is_available() else 'cpu' 대충 이해는 되었지만 정확히 알고 있는게 아니라 실제 코딩할때 자연스럽게 쓰이지 않더라 num = 0 state = '양수' if num > 0 else '음수' print(state) 변수 초기화 할때 두가지 경우의 수가 있다면 위와 같이 사용하면 좋을거 같다. 다만 elif 는 안되는거 같다..... 여기서 잠깐 if문 미세 팁을 드리자면 a = 1 if a > 0 : print('양수 입니다') elif a == 0 : print('0입니다') else : pr..
파이썬 답게 코딩해보자 List comprehension
구글링을 하다보면 코드안에 한줄로 for문을 돌리고 if문을 쓰는 코드가 있는데 처음엔 이해도 안되고 만들고 있는 코드를 완성하기 위해 가져다 쓰기 급급했는데 나중에 알아보니 list comprehension 라고 한글로 리스트 표현식, 리스트 조건식이라고 불리기도 한다 나중에 헷갈릴때 다시 찾아보려고 작성하는것으로 정확하지 않을수도 있다. Python 공식 문서에서는 이렇게 정의한다 컴프리헨션은 하나의 표현식과 그 뒤를 다르는 최소한 하나의 for 절과 없거나 여러 개의 for 또는 if 절로 구성됩니다. 이 경우, 새 컨테이너의 요소들은 각 for 또는 if 절이 왼쪽에서 오른쪽으로 중첩된 블록을 이루고, 가장 안쪽에 있는 블록에서 표현식의 값을 구해서 만들어낸 것들입니다. 나와 같은 코린이는 이 글..
셀레니움 Element 텍스트 값 가져오기
selenium에서 특정 Element의 텍스트 값을 가져오는 방법입니다. (크롬 드라이버 기준) text 기본적으로 특정 Element의 텍스트 값을 읽을 때는 text 함수를 호출한다. text 함수는 엘리먼트의 text property를 읽는다. text = driver.find_element_by_css_selector('div').text print(text) div 안에 포함된 텍스트 값을 가져옵니다. get_attribute() get_attribute 함수는 매개변수로 지정된 element의 속성을 읽는다. 이 중 엘리먼트 내 문자열에 해당하는 속성은 innerText 정도인 것 같다. get_attribute로는 텍스트뿐만 아니라 href, src 등의 속성도 얻을 수 있다. text =..
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FuJZv7%2Fbtrw8PszkRN%2FaEm7IvFtBfnt7iiof8qktk%2Fimg.png)
Pandas DataFrame - 판다스 데이터프레임 생성 및 조회
설명 판다스 데이터 프레임은 데이터를 엑셀의 표(테이블) 형태로 처리 할 수 있어 데이터 전처리등 각종 데이터의 핸들링을 편하게 할 수 있는 라이브러리입니다. pip install pandas 판다스 라이브러리가 설치되어 있지 않은 상태면 먼저 라이브러리를 설치해주어야 합니다. 데이터프레임 생성 Columns 는 열이고 Index 는 행입니다. 현재 아무것도 지정해주지 않아 [] 으로 표현이 되었고 데이터도 없어 Empty DataFrame 라고 알려줬네요. DataFrame(data, index, columns, dtype, copy) 이런 구조를 가지고 있습니다. 인덱스, 칼럼, 데이터타입을 지정해 줄 수 있고 지정해주지 않는다면 data의 형태에 맞게 알아서 생성해줍니다. 인덱스와 칼럼을 지정해주지..
Qtpy - QLineEdit 활용하기
기본 설명 QLineEdit은 한 줄의 문자열을 입력할 수 있는 위젯입니다. QtWidgets을 상속 받아 사용합니다. from PyQt5 import QtWidgets 속성 echoMode : 쓰기 모드를 설정합니다. 종류 설명 값 QLineEdit.Normal 입력된 문자를 표시 (기본값) 0 QLineEdit.NoEcho 문자열을 표시하지 않습니다. 암호의 길이 조차 공개하지 않는 경우 적합 1 QLineEdit.Password 실제 입력된 문자 대신 비밀번호 가림용 문자를 표시 2 QLineEdit.PasswordEchoOnEdit 입력할 때만 표시하고 이외에는 가림용 문자를 표시 3 사용 예시 setEchoMode(QLineEdit.Normal) or setEchoMode(0) 함수 목록 설명 ..