삼성 SW 역량 테스트 기출문제 - 구현 위주의 문제들 https://www.acmicpc.net/workbook/view/1152 문제집: 삼성 SW 역량 테스트 기출 문제 (baekjoon) www.acmicpc.net 단기간 성장 - 알고리즘 기법 사용하는 문제들 https://www.acmicpc.net/workbook/view/4349 문제집: 단기간 성장 (redbin0471) www.acmicpc.net 초등학교를 졸업하자 KOI 편 https://www.acmicpc.net/workbook/view/140 문제집: 초등학교를 졸업하자 - KOI편 (yukariko) www.acmicpc.net
기존의 jetson nano 공식 image 는 ubuntu 18.04 를 사용했는데 ROS 설치에 실패하여 xubuntu 20.04 를 설치했다. xubuntu 설치 후 ssh 연결을 하려 했는데 아래와 같은 오류가 발생했고 이를 해결하는 과정을 정리하려 한다. 이 글에는 기본적인 ssh 연결 설정도 적어두었다. 1. xubuntu 20.04 설치 및 ROS-foxy 설치 https://pinkwink.kr/1349 Jetson nano에 ROS2 foxy 설치하기 Jetson Nano는 Ubuntu 18.04에 대응하는 Jetpack이라는 것을 설치하게 됩니다. 그리고 우리는 그 위에 ROS1 melodic 버전을 설치하는 것이 일반적인 절차입니다. 그런데, ROS2가 인기를 끌면서, 또 Ubuntu..
졸업작품을 IOT 기기를 활용하는 프로젝트를 하게 되어서 ubuntu 설치를 정리한다. IOT : Jetson Nano Labtop : Macbook Pro(m1) NVIDIA Jetson Nano OS 설치하기 Jetson Nano 는 기본 메모리 디스크가 없기 때문에, 별도의 Micro SD 메모리 카드를 이용하여 OS 를 구동해줘야 한다. Jetson Nano 의 경우 OS 를 설치하는 형태가 아닌, Image 를 메모리카드에 로드하여 구동하는 방식을 사용한다. 아래 내용에서 사용된 Image 는 Ubuntu Image 이다. 아래 프로그램들을 실행하는 곳은 mac os 기준이다. 1. Jetson Nano OS image Download https://developer.nvidia.com/embe..
1. ImageNet Classification with Deep Convolutional Neural Networks(AlexNet) https://proceedings.neurips.cc/paper/2012/file/c399862d3b9d6b76c8436e924a68c45b-Paper.pdf CNN 의 기초논문 2. Going deeper with convolutions(Inception-v1) arxiv.org/pdf/1409.4842v1.pdf Inception module 을 제시한 논문 3. Rethinking the Inception Architecture for Computer Vision (Inception-v2~3) arxiv.org/pdf/1512.00567v3.pdf Inceptio..
conda activate uniasm # 위에서 이미 uniasm 환경에 접속했으면 실행안해도 됨 sudo apt install radare2 # bin to asm, asm to bin 등을 지원하는 프로그램이다. 코드 유사도 검사시스템을 제작하면서 하나의 방법론으로 BCSA 를 담당하여 조사하고 코드를 돌려보게 되었다. BCSA 에 대한 설명은 아래 논문리뷰에 있다. https://rond-o.tistory.com/325 [논문 번역] A Survey of Binary Code Similarity 논문: A Survey of Binary Code Similarity본 논문은 binary diffing이 아닌 binary code diffing에 대한 survey를 제공한다.하지만 binary dif..
학교 프로젝트 관련하여 백엔드를 담당하게 되었다. 학교 서버는 학교 내부에서만 공개되어 있어서 학교 외부에서는 접근이 안되는 관계로 EC2 를 열기로 하여 이렇게 정리를 한다. 외주를 할 때 EC2, RDS, S3 는 지겹게 써 봤지만 매번 정리가 귀찮아서 하지 않다가 이번 기회에 정리한다. AWS 계정 생성 https://aws.amazon.com/ko/ 클라우드 서비스 | 클라우드 컴퓨팅 솔루션| Amazon Web Services aws.amazon.com 위의 링크에 접속하여 회원가입을 한다. 회원가입하는 시점에서 1년동안 프리티어가 유지되는데 AWS 에서 제공되는 많은 서비스를 1년도안 "무료"로 사용할 수 있다. EC2 구축 콘솔에 로그인 이후 왼쪽 위 혹은 중간에 검색창에 EC2를 검색한다...
회사에서 인수인계를 위해 작업하던 docker 를 옮겨야 하는 상황이 생겨서 이 글을 남긴다. 1. 실행중인 docker container 확인 $ docker ps 2. 컨테이너 이미지 작성 컨테이너에서 이미지를 작성한다. 이를 위해 docker commit 명령어를 사용한다. {CONTAINER_ID}를 실행 중인 컨테이너의 ID로 대체, {IMAGE_NAME}은 새로운 이미지의 이름을 지정한다. $ docker commit {CONTAINER_ID} {IMAGE_NAME} 3. 이미지 저장 확인 $ docker image list
파이썬으로 그래프 문제를 풀 때 아직 익숙하지 않아서 계속 헷갈려서 이 글에서 정리를 한다. 인접리스트 인접리스트는 정점의 개수가 많은데에 비해 간선의 개수가 적을 때 유용하다. 6 10 # 노드수 간선 수 0 1 # 출발노드 도착노드 0 2 0 3 1 2 1 3 1 4 3 5 4 3 4 5 # 인접리스트의 구현 node, edge = map(int, input().split()) graph = [[] for i in range(node)] for _ in range(edge): startNode, endNode = map(int, input().split()) graph[startNode].append(endNode) graph[endNode].append(startNode) 위의 소스코드는 무방향그래..
ubuntu 에서 jupyter server 를 열어 jupyter lab 에서 딥러닝 관련 작업을 하고 있는데 jupyter lab 에서는 폴더 다운로드가 불가능했다. 이에 zip 파일로 압축해서 다운로드 해야하는 상황이 많아 zip / unzip 명령어를 정리를 한다. 설치 sudo apt update sudo apt install zip ZIP 하위 디렉터리 압축 하위 디렉터리를 포함하는 압축 옵션인 -r 을 사용해서 compressed.zip 파일에 /path/to/dir 내용을 압축한다 zip -r compressed.zip /path/to/dir 여러 소스 압축 dir1, dir2, file3 세 개의 소스를 압축한다 zip -r compressed.zip /path/to/dir1 /path/..
1. 배열 요소추가 배열에서 단일한 요소를 추가할 때는 append 를 사용 여러개의 요소를 한꺼번에 추가하려면 extend 를 사용 In [16]: a = [] In [17]: a.append(1) a.append([2,3]) In [18]: a Out[18]: [1, [2, 3]] In [23]: b = [] In [24]: b.append(2) b.extend([6, 100]) In [25]: b Out[25]: [2, 6, 100] In [ ]:
1. python 입력 1.1. input() 기본적인 입력방식이며 input() 함수는 str 로 입력을 받는다 str1 = input() num1 = int(input()) 1.2. input.split() split 은 구분자를 통해 문장을 나눠서 입력 받고 이를 배열 형태로 저장한다. default 구분자는 공백 (' ') 이다. str1 = input().split() 1.3. map([자료형], input().split()) map 은 입력을 받아서 split 한후 spread 형태로 변수에 값을 할당한다. 주의할점은 입력받는 변수의 개수가 내가 직접 지정한 변수의 개수와 일치하여야 한다. 그렇지 않으면 아래 이미지 밑쪽의 에러가 나온다 a, b, c = map(int, input().spli..
pyannote-audio 를 이용한 diarization 을 진행하는 과정에서 wav 파일을 다루기 위해 pydub 를 공부한 내용을 정리한다. 1. 설치 pip install pydub 2. 기본사용법 from pydub import AudioSegment # Open file song = AudioSegment.from_mp3('song.mp3') # Slice audio # pydub는 milliseconds 단위를 사용한다 ten_seconds = 10 * 1000 one_min = ten_seconds * 6 first_10_seconds = song[:ten_seconds] last_5_seconds = song[-5000:] # up/down volumn beginning = first_1..