본문 바로가기

Robot/22년도 자율주행 테크니션 양성과정 일지록16

[파이썬] DAY14 Matplot 1. Matplot의 기능들 1. Matplot이란 데이터의 시각화를 위해 그래프나 이미지를 출력하기 위한 라이브러리이다. import matplotlib.pyplot as plt y = [1,5,43,7,2,1] plt.plot(y) plt.show() 을 실행하면 다음과 같은 그래프가 나타난다. 각각의 인덱스는 x축, 값은 y축으로 설정해서 그래프로 표현한다. 2. plot() 메소드의 입력 파라미터의 개수가 2개인 경우 첫번째 항목은 x축, 두번째항목은 y 축의 좌표값으로 나타낸다. import matplotlib.pyplot as plt y = [1,5,43,7,2,1] plt.plot(range(1,len(y)+1),y) plt.show() 를 실행해보면 아래와 같이 나온다. import mat.. 2022. 2. 7.
[파이썬] DAY14 Numpy 전치 행렬 1. 전치행렬 사용 전치 행렬: 행과 열을 교환하여 얻어지는 행렬 행렬의 값들을 주 대각선을 기준으로 위치를 바꾼 행렬을 의미한다. transpose() 전치행렬을 쓰는 이유 print(np.transpose(arr)) print(arr.transpose()) 은 너무 길어서 아래 처럼 축약해서 쓴다. print(arr.T) #실제로는 축약한 이 코드로 쓴다. 전치를 시켜도 원본은 바뀌지 않는다. 2. Numpy로 구현된 벡터 1. 벡터: 크기와 방향이 있음 1) 가로 벡터(1차원 배열)와 세로 벡터(2차원 배열) 2) 벡터의 연산: 덧셈과 뺄셈 각각의 인덱스끼리 연산해주기 위해 넘파이를 사용한다. 3) 내적 스칼라의 곱셈 넘파이 배열에서 스칼라 곱셈은 각각 인덱스 별로 곱해진다. 내적: 벡터의 각 요소.. 2022. 2. 7.
[파이썬] DAY14 파이참: open CV 환경 구축&새 프로젝트 생성 1. 환경 구축 모듈 설치 안하려고 했던 이유: ROS 작업은 기본적으로 리눅스에서 하게 된다. ROS작업은 터미널에서 작업하므로 꼬일 수 있고 외부 패키지 설치 등 복잡한 문제로 코랩에서 openCV를 하기로 한다. openCV는 활용 정도만 배우고 깊게는 배우지 못한다. 파이참이 가장 낫겠다. 인공지능 할 게 아니라서 아나콘다 설치는 안할 것임 파이썬 설치(3.10.2) bugfix에서 3.9버전으로 쓰는 것을 권장한다. 파이썬은 외부모듈, 라이브러리 가져오기 쉬운데 버전이 너무 높으면 호환이 안되는 경우가 생긴다. 특히 이미지 처리를 할 때 파이썬을 쓴다. 몇 줄로도 인공지능을 구현할 수 있을 만큼 파이썬을 애용한다. 인공지능 > .... > 딥러닝(가장 좁은 범위) openCV(인식) / SLAM.. 2022. 2. 7.
[파이썬] DAY13 Numpy(복습완료) C에서도 배열의 이름은 배열의 시작 주소이지만 C와 달리 파이썬 배열은 동적 할당이므로 배열의 사이즈를 미리 지정할 필요가 없고 자료형 또한 지정해줄 필요가 없다는 점에서 차이가 있다. 그러나 파이썬은 데이터가 많아질수록 C에 비해 처리 시간이 어마어마하게 길어진다. 무수히 많은 데이터를 일괄적으로 처리해야하는 기계 학습 분야에서는 파이썬의 기본 리스트로 데이터를 배열하는 데 충분하지 않다. 시간이 매우 오래 걸리기 때문이다. 따라서 많은 영역의 데이터를 빠르게 처리할 순 없을까 고민에서 나온 것이 'Numpy'이다. 즉, 데이터의 연산 속도를 중요시 하면서 데이터 과학자들은 기본 리스트 대신에 넘파이를 사용하게 되었다. 파이썬의 리스트는 객체(리스트의 칸막이 공간)에 각 데이터의 주소값을 저장하지만, .. 2022. 2. 4.
[파이썬] DAY13 입학식코테문제 & NUMPY 입학식 코테 문제 풀이 파이썬 개발 환경 메모리 할당 방식 1. 정적 메모리 할당 2. 동적 메모리 할당 객체 지향 프로그래밍의 4가지 속성 상속성 upcasting downcasting 파이썬은 upcasting 없다. https://viera.tistory.com/3 Class의 형변환 (Upcasting, Downcasting) 자바는 객체지향언어(OOP)의 한 종류입니다. OOP는 객체의 관점에서 프로그래밍 하는 것을 의미합니다. 자바뿐만 아니라 C++, 파이썬, Swift 등 요즘 뜨는 언어들에서 OOP개념을 사용 중입니다. OOP의 viera.tistory.com 다형성 overriding vs overloading https://hyeonggi.tistory.com/entry/Python-%.. 2022. 2. 4.
AMR의 개념과 종류 로봇 공학의 주요 기술 2022. 1. 13.
입학식 및 로봇 공학에 대한 개념과 종류 수업 2022년 광운대에서 주최한 자율주행 테크니션 양성 과정 이라는 4개월 교육과정을 듣기로 했다. 입학식 오후 1시 - 2시: 간단한 OT와 시간표, 커리큘럼 등을 설명 받았고, 오후 2시 - 6시: 교수님의 로봇 관련된 이야기... 그리고 오늘 화요일(1/11) 오전 시간에는 30문제 가량의 코딩테스트를 진행하였다. 코딩 문제 보단 개념 문제가 다소 생소했던 것 같다. 오정현 광운대학교 로봇학부 교수님께 수업을 들었다. 자율주행 로봇의 개념과 종류 1. 자율 로봇이란 2. 자율 주행 로봇의 개념과 종류 2022. 1. 12.