본문 바로가기

Deep Learning

1.2. Pretrained model 다운로드 및 압축 풀기 object_detection_tutorial.ipynb을 살펴보면 전체적인 흐름이 다음과 같다. 사용하고자 하는 pretrained model의 tar.gz 파일 다운로드 tar.gz 파일 압축 풀기 pretrained model의 계산 그래프 로드 모델 실행 및 결과 출력 이번 글에서는 모델을 다운받고 압축을 푸는 방법까지 알아보겠다. 1. pretrained model 다운로드 Tensorflow에서 지원하는 object detection model 종류와 다운로드 주소는 detection_model_zoo에서 확인할 수 있다. detection_model_zoo에서 바로 모델 다운받아서 알집으로 압축 풀어주면 되기는 한다. 가장 쉽고 간단한 방법이다. 근데 이를 코드로 작성해서 사용하는 방법에 대.. 더보기
Protocol Buffer 실습 2 역직렬화(Deserialization)를 통해 EXAMPLE.pb에서 데이터를 추출하는 방법에 대해 알아보자. [ read.py ]123456789import EXAMPLE_pb2 handson = EXAMPLE_pb2.HandsOn() with open('EXAMPLE.pb', 'rb') as f: serialized = f.read() handson.ParseFromString(serialized) print(handson) cs Line 1 : 마찬가지로 뼈대를 갖고 있는 EXAMPLE_pb2.py를 import 해줘야 한다. 그래야 이 뼈대에 맞춰서 deserialized data를 재분배할 수 있기 때문이다. Line 6 : 직렬화된 형태로 저장된 데이터를 읽는다. Line 7 : 읽은 데이터를.. 더보기
Protocol Buffer 실습 1 protocol buffer를 사용해 객체를 .pb 파일로 저장하는 과정까지 이번 글을 통해 알아보겠다. 구글에서 이렇게 써! 라고 지정해서 배포한 거라 앞으로의 과정에 대해 '왜 이걸 쓰는 거지?' 내지는 '왜 이렇게 하는 거지?' 와 같은 의문은 안 갖는 것이 좋다. 1. 객체의 뼈대 생성 먼저 저장하고자 하는 객체의 뼈대에 대한 정보를 갖는 EXAMPLE.proto를 protocol buffer 폴더를 새로 만들어 안에 저장해주자. [ EXAMPLE.proto ]1234567syntax = "proto3"; message HandsOn{ string name = 1; string type = 2; float value = 3;} cs HandsOn객체는 string형 2개, float형 1개의 데이.. 더보기
Protocol Buffer 개념 Tensorflow Object Detection API를 공부하다 protocol buffer라는 처음 보는 용어를 접하게 됐다. 개념 파악을 위해 이곳저곳 살펴보며 공부했던 내용을 짧막하게 정리해보고자 한다. Protocol Buffer ? CSV, XML, JSON 등과 같이 여러 직렬화 방식 중 하나로 구글에서 개발한 이진 직렬화 방식 여기서 직렬화(serialization)는 객체 저장을 위한 데이터 저장 방법이라 생각하면 된다. 저장 뿐 아니라 불러오는 관점에서도 직렬화 (및 역직렬화)는 데이터를 다루는 측면에서 간단하고 효과적이기 때문에 사용되는 것 같다. 차이점이라면, Protocol Buffer는 다른 직렬화 방식들과는 다르게 조금 복잡한 흐름을 갖는다. 다음 글에서 실습을 통해 어떤 차.. 더보기
1.1. Tensorflow Object Detection API 다운로드 및 환경설정 다운로드부터 해보자 Object Detection API를 다운받을 수 있는 공식 사이트는 여기이다. Object Detection API에 관한 것만 있는 게 아니고 별 게 다 있다. 그래서 우리가 사용할 것들만 따로 빼내줘서 사용하는 게 깔끔하다. 우리는 1) ./research/object_detection 폴더와 2) ./research/slim 폴더가 필요하다. slim이 필요한 이유는 object_detection에서 ./research/slim/deployment와 ./research/slim/nets을 가져다 사용하기 때문이다. ※ object_detection만 가져다 실행하면 deployment나 nets가 없다는 에러를 만나게 되니 필히 같이 빼내줘야한다. 이제 오른쪽 상단의 [ Cl.. 더보기
1. Tensorflow Object Detection API 시작 Tensorflow에서 제공하는 Object Detection API 사용법에 대해 정리하려고 한다. 주변에 물어볼 사람이 없어서 사용법을 정확히 깨닫기까지 너무도 오래 걸렸다. 구글링의 연속.. 그래서 내가 깨달을 것들이 다른 누군가에게도 도움이 되길 바라는 마음으로 나 스스로도 정리할겸, 긴 호흡으로 하나하나 천천히 작성해보고자 한다. 나처럼 머리 속에 아무 것도 없는 상태에서 맨땅에 헤딩하는 격으로 Object Detection 공부를 시작한 사람들에게 부디 앞으로 작성할 글들이 검색되길 바란다. 조금이나마 도움이 됐으면 좋겠다. 글이 얼마나 길어질진 모르겠다. 최대한 자세히 써내려갈 생각이다. 그럼, 다운받는 것부터 시작해보자. 더보기