일단 안드로이드에서는 tflite 라는 tensorflow 라이트버전을 사용할 수 있다.
근데 여기서 문제는 yolov4까지는 tensorflow를 사용하지만
v5부터는 pytorch를 사용한다.
이때 발생하는 문제는 둘의 가중치 파일의 형식이 .pt(torch) .pb(tensorflow)로 다르다는 것을..
이때 우리는 한 가지 플랫폼을 떠올릴 수 있다 onnx라는 플랫폼을 말이다!
저번 게시글에서 ONNX에 대해 간략히 설명한 적이 있다.
더 간략히 설명하자면
ONNX는 .pb와 .pt를 연결하는 매개체 역할을 한다.
원래는 그 자체로 가중치의 역할이지만 .pb도 .pt도 .onnx로 포맷 변환이 가능하기 때문에
이를 역이용해 .onnx로 .pb or .pt로 변경하는 것이다.
.pb에서 .tflite의 변경은 쉽다. 둘은 같은 tensor형식으로 작성되었기 때문이다.
일단 이 여기까지는 다 했다.
26일 익일 이미지를 가지고 부가 설명 하겠다.