본문 바로가기

프로그래밍

ImportError: cannot import name 'string_int_label_map_pb2' Jetson Nano에서 Object detection 라이브러리를 동작시키려고 할때 나는 에러로 models/research/setup.py 를 이용할 때 발생되는 에러를 고침으로 해결할 수 있다. python3 setup.py build python3 setup.py install 위 명령어를 실행할 때 로그를 잘 보면 print 문을 python2에 맞춰서 print '~~~' 이렇게 써져있는데 모두다 print()로 바꾸고 다시 build, install 하면 정상적으로 인스톨되고 해당 에러도 사라진다. 더보기
Jetson Nano 시작하기 Jetson Nano를 받아 처음 셋팅하는 방법입니다. 참고 https://medium.com/@ageitgey/build-a-hardware-based-face-recognition-system-for-150-with-the-nvidia-jetson-nano-and-python-a25cb8c891fd 1. SD카드 만들기 - Sandiak ultra 32GB sd카드에 이미지 다운받아 Etcher로 이미지 생성 2. DC 파워 사용하기 위해 점퍼 설정하고 SD카드 삽입 후 부팅 *주의사항 - Trensend sd카드는 써본결과 인식이 안됬다. 샌디스크를 쓰자 - Micro 5pin 전원은 왜 있는지 모르겠다. DC전원 아니면 보드가 켜지지 않는다. - 영상처리 할거면 발열이 굉장하니 냉각팬을 붙여야 한.. 더보기
ldconfig 명령어는 왜 쓰는 걸까 -C cache : /etc/ld.so.cache 파일 대신 지정한 파일을 이용한다. -f conf : /etc/ld.so.conf 파일 대신 이용할 설정 파일을 지정한다. -l : 수동으로 각각의 라이브러리를 링크한다. -n : 명령 행에서 지정한 디렉터리만을 대상으로 하며, /usr/lib, /lib, /etc/ld.so.conf 파일은 진행하지 않는다. -N : 캐시를 업데이트하지 않고, 단지 링크만을 업데이트한다. -p --print-cache : 현재 캐시에 저장된 디렉터리와 라이브러리 목록을 출력한다. -r root : 루트 디렉터리(root)를 지정한다. -v, --verbose : 현재 버전 정보와 관련된 디렉터리와 링크들을 상세하게 출력한다. -V, --version : 버전 정보를 출력.. 더보기
JETXON TX2 셋팅기 1. 용량이 부족해서 데이터들을 지움 2. 설치된 패키지 확인 3. 우분투 16.04에 JetPack 설치 Tx2용https://www.youtube.com/watch?v=D7lkth34rgM&t=104s 4. Jetson 보드에 opencv 설치https://www.youtube.com/watch?v=GlDjscSAtDY&t=191s git 다운로드 nvpmodel -m 2 buildOpenCV.sh 실행 요구조건 : 8GB 이상의 여유공간. /etc/ld.so.conf.d/opencv.conf 5. 라이브러리 경로 지정find / -name "libopencv_core.so.2.4*" 검색해서 so파일 위치 확인 /etc/ld.so.conf.d/opencv.conf 에 검색된 파일 위치 입력 예 : .. 더보기
오버로딩(Overloading)과 오버라이딩(Overriding)를 사용하는 이유 오버로딩과 오버라이딩은 클래스의 다형성을 지원하는 방법이다. 오버로딩이 지원되지 않으면 매개변수의 타입이나 개수가 다른 메소드를 여러개 만들어줘야 하는 단점이 있다. 자바에서는 메소드의 이름이 같고 매개변수를 다른 메소드를 만들어 다형성을 지원한다.여기서 오버로딩은 리턴타입은 전혀 영향을 주지 않고, 매개변수의 타입과 개수에만 영향을 받는다. 오버라이딩은 상속받은 클래스의 메소드가 하위 클래스에서 충분한 기능을 제공하지 않거나, 부족할 때 상위 클래스로부터 상속받은 클래스를 재정의 하는 것이다. 두 방법은 이름이 비슷하기 때문에 용어에 관련된 측면에서 보면 굉장히 헷갈리게 해놨다. (나쁜놈들) 평생 헷갈릴것 같은 불길한 예감이 드는 것은 왜일까. 항목 오버로딩 오버라이딩 함수명 같다 같다 매개변수, 타입.. 더보기
SimpleDateFormat 을 쓰는 이유 SimpleDataFormat를 쓰는 이유는 간단하다. 날짜나 시간에 관련된 작업을 할때 사용자가 원하는 포맷으로 출력하기위해 주로 사용되는 클래스다. 데이터 포맷에 사용되는 테이블은 위와 같으며 자바 API 페이지에서 가져왔다. 내가 개발하면서 사용되는 방법은 다음과 같다. 123long startTime = System.currentTimeMillis();SimpleDateFormat dayTime = new SimpleDateFormat("yyyy-MM-dd a hh:mm:ss.SSS");String str = dayTime.format(new Date(startTime));cs 이런 방식으로 출력하게 되면 하단과 같이 출력할 수 있다. 2019-02-12 PM 05:19:18.140 시스템 로그를.. 더보기